Label55.Caption := ''; Label56.Caption := ''; Label57.Caption := ''; Label59.Caption := ''; Selejt := False; // Kiszámoljuk mikor kell az adott gép következő felülvizsgálatát megejteni PKod := ZQueryGep_Jegyzokonyvgep_jegyzokonyv_pkod.Value; TKod := ZQueryGep_Jegyzokonyvgep_jegyzokonyv_tkod.Value; GKod := ZQueryGep_Jegyzokonyvgep_jegyzokonyv_gkod.Value; // üzembehelyezést megelöző ZQueryVizsgalat.Close; ZQueryVizsgalat.SQL.Clear; ZQueryVizsgalat.SQL.Add('select datum_keltido from gep_jegyzokonyv'); ZQueryVizsgalat.SQL.Add('where (gep_jegyzokonyv_pkod=:pkod) and'); ZQueryVizsgalat.SQL.Add('(gep_jegyzokonyv_tkod=:tkod) and'); ZQueryVizsgalat.SQL.Add('(gep_jegyzokonyv_gkod=:gkod) and'); ZQueryVizsgalat.SQL.Add('(tipus=:mytipus)'); ZQueryVizsgalat.SQL.Add('order by datum_keltido desc'); ZQueryVizsgalat.Params[0].Value := PKod; ZQueryVizsgalat.Params[1].Value := TKod; ZQueryVizsgalat.Params[2].Value := GKod; ZQueryVizsgalat.Params[3].Value := 'Munkavédelmi szempontú előzetes felülvizsgálat'; ZQueryVizsgalat.Open; ZQueryVizsgalat.First; If ZQueryVizsgalat.FieldByName('datum_keltido').IsNull Then Datum := 0 Else Datum := ZQueryVizsgalat.FieldByName('datum_keltido').Value; //Időszakos biztonságtechnikai felülvizsgálat (5 évente általában) ZQueryVizsgalat.Close; ZQueryVizsgalat.Params[0].Value := PKod; ZQueryVizsgalat.Params[1].Value := TKod; ZQueryVizsgalat.Params[2].Value := GKod; ZQueryVizsgalat.Params[3].Value := 'Időszakos biztonságtechnikai felülvizsgálat'; ZQueryVizsgalat.Open; ZQueryVizsgalat.First; If ZQueryVizsgalat.FieldByName('datum_keltido').IsNull Then Datum1 := 0 Else Datum1 := ZQueryVizsgalat.FieldByName('datum_keltido').Value; // Szerkezeti vizsgálat ZQueryVizsgalat.Close; ZQueryVizsgalat.Params[0].Value := PKod; ZQueryVizsgalat.Params[1].Value := TKod; ZQueryVizsgalat.Params[2].Value := GKod; ZQueryVizsgalat.Params[3].Value := 'Szerkezeti vizsgálat'; ZQueryVizsgalat.Open; ZQueryVizsgalat.First; If ZQueryVizsgalat.FieldByName('datum_keltido').IsNull Then Datum2 := 0 Else Datum2 := ZQueryVizsgalat.FieldByName('datum_keltido').Value; // Fővizsgálat ZQueryVizsgalat.Close; ZQueryVizsgalat.Params[0].Value := PKod; ZQueryVizsgalat.Params[1].Value := TKod; ZQueryVizsgalat.Params[2].Value := GKod; ZQueryVizsgalat.Params[3].Value := 'Fővizsgálat'; ZQueryVizsgalat.Open; ZQueryVizsgalat.First; If ZQueryVizsgalat.FieldByName('datum_keltido').IsNull Then Datum3 := 0 Else Datum3 := ZQueryVizsgalat.FieldByName('datum_keltido').Value; // Gépvizsgálat ZQueryVizsgalat.Close; ZQueryVizsgalat.SQL.Clear; ZQueryVizsgalat.SQL.Add('select datum_keltido from gep_jegyzokonyv'); ZQueryVizsgalat.SQL.Add('where (gep_jegyzokonyv_pkod=:pkod) and'); ZQueryVizsgalat.SQL.Add('(gep_jegyzokonyv_tkod=:tkod) and'); ZQueryVizsgalat.SQL.Add('(gep_jegyzokonyv_gkod=:gkod) and'); ZQueryVizsgalat.SQL.Add('((tipus=:mytipus) or (tipus=:mytipus2))'); ZQueryVizsgalat.SQL.Add('order by datum_keltido desc'); ZQueryVizsgalat.Params[0].Value := PKod; ZQueryVizsgalat.Params[1].Value := TKod; ZQueryVizsgalat.Params[2].Value := GKod; ZQueryVizsgalat.Params[3].Value := 'Ellenőrző felülvizsgálat'; ZQueryVizsgalat.Params[4].Value := 'Időszakos ellenőrző felülvizsgálat'; ZQueryVizsgalat.Open; ZQueryVizsgalat.First; If ZQueryVizsgalat.FieldByName('datum_keltido').IsNull Then Datum4 := 0 Else Datum4 := ZQueryVizsgalat.FieldByName('datum_keltido').Value; {ZQueryGepek.Close; ZQueryGepek.Params[0].Value := GKod; ZQueryGepek.Params[1].Value := PKod; ZQueryGepek.Params[2].Value := TKod; ZQueryGepek.Open; } If Not ZQueryGepek.IsEmpty Then Begin Selejt := Not ZQueryGepek.FieldByName('datum_selejtezes').IsNull; // vizsgálati idők lekérdezése If Not ZQueryGepek.FieldByName('idobizt').IsNull Then Honap1 := ZQueryGepek.FieldByName('idobizt').AsInteger Else Honap1 := -1; If Not ZQueryGepek.FieldByName('idoszerk').IsNull Then Honap2 := ZQueryGepek.FieldByName('idoszerk').AsInteger Else Honap2 := -1; If Not ZQueryGepek.FieldByName('idofov').IsNull Then Honap3 := ZQueryGepek.FieldByName('idofov').AsInteger Else Honap3 := -1; If Not Selejt Then Begin // Ha valamelyik vizsgálat még nem volt, akkor az üzembehelyezést megelözőhőz // kell viszonyítani a következő felülvizsgálatok idejét If Datum <> 0 Then // Csak a munkavédelmihez lehet viszonyítani Begin If (Honap1 <> -1) And (Datum1 = 0) Then Datum1 := Datum; If (Honap2 <> -1) And (Datum2 = 0) Then Datum2 := Datum; If (Honap3 <> -1) And (Datum3 = 0) Then Datum3 := Datum; If (Honap1 <> -1) And (Datum4 = 0) Then Datum4 := Datum; End; If ZQueryGep_Jegyzokonyvgepfocsop.Value <> 'Technológiai gép' Then Begin // Ha más berendezésről van szó, akkor van szerkezeti és fő vizsgálat is If Datum2 <> 0 Then Begin//szerkezeti vizsgálat If (Honap2 <> -1) Then Begin Datum2 := IncMonth(Datum2, Honap2); DateTimeToString(Szoveg,'yyyyy. mm. dd.',Datum2); Label55.Caption := Szoveg; End Else Label55.Caption := 'Hiányzó adat!'; End; // ha a szerkezeti vizsgálat azonos lenne a fővizsgálattal DecodeDate(Datum2, Year1, Month1, Day1); DecodeDate(Datum3, Year2, Month2, Day2); If (Year1=Year2) and (Month1=Month2) Then begin // a szerkezeti vizsgálatot a fővizsgálathoz kell viszonyítani Datum2 := Datum3; Datum2 := IncMonth(Datum2, Honap2); DateTimeToString(Szoveg,'yyyyy. mm. dd.',Datum2); Label55.Caption := Szoveg; end; If Datum3 <> 0 Then Begin//Fővizsgálat If (Honap2 <> -1) Then Begin Datum3 := IncMonth(Datum3, Honap3); DateTimeToString(Szoveg,'yyyyy. mm. dd.',Datum3); Label56.Caption := Szoveg; End Else Label56.Caption := 'Hiányzó adat!'; End; End; If (Honap1 <> -1) And ((ZQueryGep_Jegyzokonyvtipus.Value <> 'Ellenőrző felülvizsgálat') Or (ZQueryGep_Jegyzokonyvtipus.Value <> 'Időszakos ellenőrző felülvizsgálat')) And (POS('Nem veszélyes', ZQueryGep_Jegyzokonyvfajta.Value) = 0) And (Datum1 <> 0) Then Begin Datum1 := IncMonth(Datum1, Honap1); DateTimeToString(Szoveg,'yyyyy. mm. dd.',Datum1); Label57.Caption := Szoveg; // Ellenőrizzük, hogy ne legyen kavar a fővizsgálattal If (Datum3-Datum1) > 0 Then Begin DecodeDate(Datum1, Year1, Month1, Day1); DecodeDate(Datum3, Year2, Month2, Day2); If (Year1-Year2)*12 < Honap3 Then Begin Datum3 := IncMonth(Datum1, Honap3); DateTimeToString(Szoveg,'yyyyy. mm. dd.',Datum3); Label56.Caption := Szoveg; End; End; End; If (Honap1 <> -1) And ((ZQueryGep_Jegyzokonyvtipus.Value = 'Ellenőrző felülvizsgálat') Or (ZQueryGep_Jegyzokonyvtipus.Value = 'Időszakos ellenőrző felülvizsgálat') Or (POS('Nem veszélyes', ZQueryGep_Jegyzokonyvfajta.Value) <> 0)) And (Datum4 <> 0) Then Begin Datum1 := IncMonth(Datum4, Honap1); DateTimeToString(Szoveg,'yyyyy. mm. dd.',Datum1); Label59.Caption := Szoveg; End; End; If Selejt Then Label55.Caption := 'SELEJTEZVE'; End; end;