Zacatek uprav Ramcovy plan

This commit is contained in:
2025-06-10 19:43:13 +02:00
parent fedc940ac4
commit 5fcde65f6b
30 changed files with 1863 additions and 334 deletions

View File

@ -308,6 +308,11 @@ type
vtMaterialcolCisloZbozi: TStringField;
vtMaterialcolIDPohyb: TIntegerField;
vtSarzecolIDPohybOZ: TIntegerField;
vtStrojefIDPaleta: TIntegerField;
vtPlanZitrafIDPrikaz: TIntegerField;
vtPlanZitrafHodOd: TSmallintField;
vtPlanZitrafHodDo: TSmallintField;
vtPlanZitrafMnozstvi: TFloatField;
procedure DataModuleCreate (Sender: TObject);
procedure vtCCP1BeforeDelete (DataSet: TDataSet);
procedure vtCCP1BeforeInsert (DataSet: TDataSet);
@ -343,8 +348,9 @@ type
procedure NactiCCP1 (const f: TformKontrolaCCP1);
procedure NactiCCP1ProNoveZaznamy (const f: TformKontrolaCCP1edt);
procedure NactiPlanStroje (const f: TformPekarna; const idStroj: integer);
procedure NactiRozpracovane (const f: TformPekarna);
procedure NactiPlanStroje (const f: TformPekarna; const idStroj: integer; dnes: boolean=true);
procedure NactiRozpracovane (const f: TformPekarna; const idStroj: integer);
procedure NactiOdpadStroje (const f: TformPekarna);
procedure NactiOdpady (const f: TformOdpady);
@ -376,7 +382,7 @@ var
apiMod: boolean;
apiServer, phServer, compName, url, sqlLang: string;
vyrobniDen: TDate;
aktIdStroj, aktIdKmen, aktIdPrikaz, aktIdKmenPlan, aktIdKmenRozprac, idZamMistr, cisZamMistr: integer;
aktIdStroj, aktIdKmen, aktIdPrikaz, aktIDPaleta, aktIdKmenPlan, aktIdKmenRozprac, idZamMistr, cisZamMistr: integer;
bmIdStroj, bmIdPlanDnes, bmIdPrikaz: integer; // bookmarky
aktZakazka: string;
@ -1088,6 +1094,7 @@ uses System.Variants, System.StrUtils, Winapi.Windows, System.DateUtils, IdHTTP,
end;
end;
vtObjednavkaMat.IndexFieldNames:= 'colCisloObj:D';
vtObjednavkaMat.First;
end;
@ -1096,7 +1103,7 @@ uses System.Variants, System.StrUtils, Winapi.Windows, System.DateUtils, IdHTTP,
procedure Tdm.NactiZasobaObjednavky (const f: TformZasobaObjednavky);
var lSQL: string;
var lSQL, regCis: string;
cnt, idKmen: integer;
begin
if not(vtZasobyObjednavky.Active) then
@ -1106,7 +1113,9 @@ uses System.Variants, System.StrUtils, Winapi.Windows, System.DateUtils, IdHTTP,
lSQL:= 'SELECT ID, SkupZbo, RegCis, Nazev1, MJEvidence FROM ' + tblKZ + ' WHERE Material=1 OR ID IN (SELECT IDKmenZbozi FROM ' + tblSS + ' WHERE IDSklad IN (N''211'',N''311''))';
lSQL:= lSQL + ' OR ID IN (SELECT IDKmenZbozi FROM ' + tblObjednavky + ') ORDER BY Nazev1';
}
lSQL:= 'SELECT k.ID, k.SkupZbo, k.RegCis, k.Nazev1, k.MJEvidence FROM ' + tblKZ + ' k INNER JOIN ' + tblKZe + ' ke ON (ke.ID=k.ID) WHERE ke._Vyroba_ProObjednavku=1';
lSQL:= 'SELECT k.ID, k.SkupZbo, k.RegCis, k.Nazev1, k.MJEvidence FROM ' + tblKZ + ' k INNER JOIN ' + tblKZe + ' ke ON (ke.ID=k.ID)'
+ ' WHERE ke._Vyroba_ProObjednavku=1 AND k.ID NOT IN (SELECT ID FROM ' + tblKZ + ' WHERE SkupZbo=N''101'' AND RegCis IN (N''111000'', N''112000''))'
+ ' AND k.ID IN (SELECT IDKmenZbozi FROM ' + tblSS + ' WHERE Mnozstvi>0 AND IDSklad=N''311'')';
with Helios.OpenSQL(lSQL) do
begin
@ -1121,7 +1130,10 @@ uses System.Variants, System.StrUtils, Winapi.Windows, System.DateUtils, IdHTTP,
vtZasobyObjednavky.Append;
vtZasobyObjednavky.FieldByName('colIDKmen').AsInteger:= idKmen;
vtZasobyObjednavky.FieldByName('colSZ').AsString:= VarToStr(FieldByNameValues('SkupZbo'));
vtZasobyObjednavky.FieldByName('colRC').AsString:= VarToStr(FieldByNameValues('RegCis'));
regCis:= VarToStr(FieldByNameValues('RegCis'));
if (regCis='012003') then
lSQL:= '';
vtZasobyObjednavky.FieldByName('colRC').AsString:= regCis;
vtZasobyObjednavky.FieldByName('colNazev1').AsString:= VarToStr(FieldByNameValues('Nazev1'));
vtZasobyObjednavky.FieldByName('colMJ').AsString:= VarToStr(FieldByNameValues('MJEvidence'));
@ -1658,9 +1670,16 @@ uses System.Variants, System.StrUtils, Winapi.Windows, System.DateUtils, IdHTTP,
procedure Tdm.NactiPlanStroje (const f: TformPekarna; const idStroj: integer);
procedure Tdm.NactiPlanStroje (const f: TformPekarna; const idStroj: integer; dnes: boolean=true);
var lSQL: string;
begin
if (idStroj>0) then
begin
lSQL:= 'SELECT FROM ' + tblAdvKPlanDavky + ' WHERE DatumPripadu=' + IfThen(dnes, 'GETDATE()', '');
end;
if (idStroj>0) then
begin
lSQL:= 'SELECT ID FROM ' + tblVPr + ' WHERE StavPrikazu IN (20,30) AND ID NOT IN (SELECT r.IDPrikaz FROM ' + tblRozpracOper + ' h INNER JOIN ' + tblRozpracOperR;
@ -1721,12 +1740,15 @@ uses System.Variants, System.StrUtils, Winapi.Windows, System.DateUtils, IdHTTP,
procedure Tdm.NactiRozpracovane (const f: TformPekarna);
procedure Tdm.NactiRozpracovane (const f: TformPekarna; const idStroj: integer);
var lSQL: string;
idVPr, idH, idS, idK, radaPrikaz, cisloPL: string;
mnVCP, mnZbytVCPP: Extended;
i1, i2: integer;
begin
lSQL:= 'SELECT DISTINCT(vp.ID) FROM ' + tblPrPost + ' prp INNER JOIN ' + tblPrikaz + ' vp ON (vp.ID=prp.IDPrikaz)';
lSQL:= lSQL + ' WHERE vp.StavPrikazu=40 AND prp.IDOdchylkyDo IS NULL AND prp.typ<2 AND prp.IDStroje=' + aktIdStroj.ToString + ' GROUP BY vp.ID';
{
@ -2034,7 +2056,7 @@ uses System.Variants, System.StrUtils, Winapi.Windows, System.DateUtils, IdHTTP,
procedure Tdm.NactiStrojeAPraci (const f: TformPekarna);
var lSQL: string;
var lSQL, cisloPL, sarze: string;
idStroj, idVPr, cntVz: integer;
begin
lSQL:= 'SELECT st.ID, p.Pracoviste, st.Nazev, st.Kod FROM ' + tblCStroju + ' st INNER JOIN ' + tblCPrac + ' p ON (p.ID=IDPrac) WHERE p.IDTabStrom=N' + stredPekarna.ToString.QuotedString;
@ -2085,13 +2107,25 @@ uses System.Variants, System.StrUtils, Winapi.Windows, System.DateUtils, IdHTTP,
vtStroje.FieldByName('fVyrobek').AsString:= VarToStr(FieldByNameValues('Nazev1'));
vtStroje.FieldByName('fZakazka').AsString:= VarToStr(FieldByNameValues('RadaPrikaz')).Replace(' ','');
vtStroje.FieldByName('fIDEvidRozpOper').AsString:= VarToStr(FieldByNameValues('ID'));
vtStroje.FieldByName('fIDPrikaz').AsString:= VarToStr(FieldByNameValues('idVPr'));
idVPr:= VarToStr(FieldByNameValues('idVPr')).ToInteger;
vtStroje.FieldByName('fIDPrikaz').AsInteger:= idVPr;
vtStroje.FieldByName('fCisloZbozi').AsString:= VarToStr(FieldByNameValues('CisloZbozi'));
vtStroje.FieldByName('fIDKmen').AsString:= VarToStr(FieldByNameValues('IDKmen'));
vtStroje.FieldByName('fAktPaletList').AsString:= VarToStr(FieldByNameValues('VyrCislo'));
vtStroje.FieldByName('fSarze').AsString:= VarToStr(FieldByNameValues('Sarze'));
vtStroje.FieldByName('fCinnost').AsString:= 'Výroba';
cisloPL:= VarToStr(FieldByNameValues('VyrCislo'));
vtStroje.FieldByName('fAktPaletList').AsString:= cisloPL;
sarze:= VarToStr(FieldByNameValues('Sarze'));
vtStroje.FieldByName('fSarze').AsString:= sarze;
if (cisloPL<>'') and (sarze<>'') and (idVPr>0) then
begin
lSQL:= 'SELECT TOP(1) ID FROM ' + tblPalety + ' WHERE IDPrikaz=' + idVPr.ToString + ' AND CisloPalety=N' + cisloPL.QuotedString
+ ' AND Sarze=N' + sarze.QuotedString + ' AND DatUkonceni IS NULL AND IDStroj=' + idStroj.ToString + ' ORDER BY ID';
vtStroje.FieldByName('fIDPaleta').AsInteger:= helUtils.getHeliosIntVal (Helios, 0, lSQL);
end;
// vtRozpracPL.Append;
// dm.vtRozpracPL.FieldByName('')
// vtRozpracPL.Post;