Pridana funkcnost zmeny planovaneho ukonceni prikazu podle tabulky (comObject akce 36) + prvni verze generovani KoopObj dle stare HDC funkcnosti ctecky
This commit is contained in:
@@ -83,3 +83,4 @@ __recovery/
|
|||||||
*.7z
|
*.7z
|
||||||
bak/
|
bak/
|
||||||
bak2/
|
bak2/
|
||||||
|
x/
|
||||||
|
|||||||
+82
-27
@@ -85,7 +85,8 @@ uses System.Variants, Vcl.Controls, System.Generics.Collections, System.Generics
|
|||||||
{$IFDEF MadExcept}
|
{$IFDEF MadExcept}
|
||||||
madExcept,
|
madExcept,
|
||||||
{$ENDIF}
|
{$ENDIF}
|
||||||
frmHrOdvOper, frmSchvaleniZak, frmOOPPohyb;
|
frmHrOdvOper, frmSchvaleniZak, frmOOPPohyb, frmVPrZmenaPlanuUkonceni, frmGenKoopObj,
|
||||||
|
dataMod;
|
||||||
|
|
||||||
var oVar1, oVar2: OleVariant;
|
var oVar1, oVar2: OleVariant;
|
||||||
LocalFormatSettings: TFormatSettings;
|
LocalFormatSettings: TFormatSettings;
|
||||||
@@ -336,6 +337,7 @@ var oVar1, oVar2: OleVariant;
|
|||||||
arrRadky: TArray<TArray<string>>;
|
arrRadky: TArray<TArray<string>>;
|
||||||
cont: Boolean;
|
cont: Boolean;
|
||||||
proc1, proc2: Double;
|
proc1, proc2: Double;
|
||||||
|
wF: TForm;
|
||||||
begin
|
begin
|
||||||
overRadek := 0;
|
overRadek := 0;
|
||||||
posunSl := 0;
|
posunSl := 0;
|
||||||
@@ -399,7 +401,7 @@ var oVar1, oVar2: OleVariant;
|
|||||||
lSQL:= lSQL.Replace('#TabImp', 'dbo._TabImp');
|
lSQL:= lSQL.Replace('#TabImp', 'dbo._TabImp');
|
||||||
Helios.ExecSQL(lSQL);
|
Helios.ExecSQL(lSQL);
|
||||||
|
|
||||||
waitStart(nil, 'Import procenta ztrát dílců', Length(arrRadky), clRed);
|
wF := helUtils.waitStart (nil, 'Import procenta ztrát dílců', Length(arrRadky), clRed, true);
|
||||||
for idxR:=0 to High(arrRadky)-1 do
|
for idxR:=0 to High(arrRadky)-1 do
|
||||||
begin
|
begin
|
||||||
arrRadky[idxR, 0]:= helUtils.sqlSanitize(arrRadky[idxR, 0].Trim); // sz
|
arrRadky[idxR, 0]:= helUtils.sqlSanitize(arrRadky[idxR, 0].Trim); // sz
|
||||||
@@ -441,7 +443,9 @@ var oVar1, oVar2: OleVariant;
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
waitEnd;
|
|
||||||
|
if Assigned(wF) then
|
||||||
|
waitEnd (wF);
|
||||||
|
|
||||||
if not(jeTest) then
|
if not(jeTest) then
|
||||||
Helios.ExecSQL ('IF OBJECT_ID(N''dbo.ep_HDC_TPV_ImportProcentaZtrat'', N''P'') IS NOT NULL EXEC dbo.ep_HDC_TPV_ImportProcentaZtrat');
|
Helios.ExecSQL ('IF OBJECT_ID(N''dbo.ep_HDC_TPV_ImportProcentaZtrat'', N''P'') IS NOT NULL EXEC dbo.ep_HDC_TPV_ImportProcentaZtrat');
|
||||||
@@ -465,6 +469,7 @@ var oVar1, oVar2: OleVariant;
|
|||||||
arrRadky: TArray<TArray<string>>;
|
arrRadky: TArray<TArray<string>>;
|
||||||
forma: TForma;
|
forma: TForma;
|
||||||
cont: Boolean;
|
cont: Boolean;
|
||||||
|
wF: TForm;
|
||||||
begin
|
begin
|
||||||
overRadek:= 0;
|
overRadek:= 0;
|
||||||
posunSl:= 0;
|
posunSl:= 0;
|
||||||
@@ -523,11 +528,11 @@ var oVar1, oVar2: OleVariant;
|
|||||||
Delete(radky,1,Pos(#13, radky)+1);
|
Delete(radky,1,Pos(#13, radky)+1);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
waitStart(nil, 'Import dat karet forem', Length(arrRadky), clRed);
|
wF := helUtils.waitStart (nil, 'Import dat karet forem', Length(arrRadky), clRed, true);
|
||||||
for idxR:=0 to High(arrRadky)-1 do
|
for idxR:=0 to High(arrRadky)-1 do
|
||||||
begin
|
begin
|
||||||
if (idxR mod 10=0) then
|
if (idxR mod 10=0) then
|
||||||
waitSetProgBar(idxR);
|
helUtils.waitSetProgBar (idxR, wF);
|
||||||
try
|
try
|
||||||
idKZ:= 0;
|
idKZ:= 0;
|
||||||
ClearForma (forma);
|
ClearForma (forma);
|
||||||
@@ -623,7 +628,8 @@ var oVar1, oVar2: OleVariant;
|
|||||||
errMsg:= E.Message + CRLF + lSQL;
|
errMsg:= E.Message + CRLF + lSQL;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
waitEnd;
|
if Assigned(wF) then
|
||||||
|
waitEnd (wF);
|
||||||
|
|
||||||
Helios.Refresh (true);
|
Helios.Refresh (true);
|
||||||
Helios.Info (#1'Nových karet forem: ' + cntIns.ToString + CRLF + 'Upravených karet forem: ' + cntAkt.ToString + #1);
|
Helios.Info (#1'Nových karet forem: ' + cntIns.ToString + CRLF + 'Upravených karet forem: ' + cntAkt.ToString + #1);
|
||||||
@@ -641,6 +647,7 @@ var oVar1, oVar2: OleVariant;
|
|||||||
arrRadky: TArray<TArray<string>>;
|
arrRadky: TArray<TArray<string>>;
|
||||||
forma: TForma;
|
forma: TForma;
|
||||||
cont: Boolean;
|
cont: Boolean;
|
||||||
|
wF: TForm;
|
||||||
begin
|
begin
|
||||||
overRadek:= 0;
|
overRadek:= 0;
|
||||||
posunSl:= 0;
|
posunSl:= 0;
|
||||||
@@ -699,11 +706,11 @@ var oVar1, oVar2: OleVariant;
|
|||||||
Delete(radky,1,Pos(#13, radky)+1);
|
Delete(radky,1,Pos(#13, radky)+1);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
waitStart(nil, 'Import dat karet forem', Length(arrRadky), clRed);
|
wF := helUtils.waitStart (nil, 'Import dat karet forem', Length(arrRadky), clRed, true);
|
||||||
for idxR:=0 to High(arrRadky)-1 do
|
for idxR:=0 to High(arrRadky)-1 do
|
||||||
begin
|
begin
|
||||||
if (idxR mod 10=0) then
|
if (idxR mod 10=0) then
|
||||||
waitSetProgBar(idxR);
|
helUtils.waitSetProgBar (idxR, wF);
|
||||||
try
|
try
|
||||||
idKZ := 0;
|
idKZ := 0;
|
||||||
ClearForma (forma);
|
ClearForma (forma);
|
||||||
@@ -799,7 +806,9 @@ var oVar1, oVar2: OleVariant;
|
|||||||
errMsg := E.Message + CRLF + lSQL;
|
errMsg := E.Message + CRLF + lSQL;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
waitEnd;
|
|
||||||
|
if Assigned(wF) then
|
||||||
|
waitEnd (wF);
|
||||||
|
|
||||||
Helios.Refresh (true);
|
Helios.Refresh (true);
|
||||||
Helios.Info (#1'Nových karet forem: ' + cntIns.ToString + CRLF + 'Upravených karet forem: ' + cntAkt.ToString + #1);
|
Helios.Info (#1'Nových karet forem: ' + cntIns.ToString + CRLF + 'Upravených karet forem: ' + cntAkt.ToString + #1);
|
||||||
@@ -817,6 +826,7 @@ var oVar1, oVar2: OleVariant;
|
|||||||
arrRadky: TArray<TArray<string>>;
|
arrRadky: TArray<TArray<string>>;
|
||||||
forma: TForma;
|
forma: TForma;
|
||||||
cont, jsemNew: Boolean;
|
cont, jsemNew: Boolean;
|
||||||
|
wF: Tform;
|
||||||
begin
|
begin
|
||||||
overRadek:= 0;
|
overRadek:= 0;
|
||||||
posunSl:= 0;
|
posunSl:= 0;
|
||||||
@@ -875,11 +885,11 @@ var oVar1, oVar2: OleVariant;
|
|||||||
Delete(radky,1,Pos(#13, radky)+1);
|
Delete(radky,1,Pos(#13, radky)+1);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
waitStart(nil, 'Import dat karet forem', Length(arrRadky), clRed);
|
wF := helUtils.waitStart (nil, 'Import dat karet forem', Length(arrRadky), clRed, true);
|
||||||
for idxR:=0 to High(arrRadky)-1 do
|
for idxR:=0 to High(arrRadky)-1 do
|
||||||
begin
|
begin
|
||||||
if (idxR mod 10=0) then
|
if (idxR mod 10=0) then
|
||||||
waitSetProgBar(idxR);
|
helUtils.waitSetProgBar (idxR, wF);
|
||||||
try
|
try
|
||||||
idKZ:= 0;
|
idKZ:= 0;
|
||||||
jsemNew:= false;
|
jsemNew:= false;
|
||||||
@@ -962,7 +972,9 @@ var oVar1, oVar2: OleVariant;
|
|||||||
errMsg:= E.Message + CRLF + lSQL;
|
errMsg:= E.Message + CRLF + lSQL;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
waitEnd;
|
|
||||||
|
if Assigned(wF) then
|
||||||
|
waitEnd (wF);
|
||||||
|
|
||||||
Helios.Refresh (true);
|
Helios.Refresh (true);
|
||||||
Helios.Info (#1'Import ' + cntIns.ToString + ' nových karet' + CRLF + 'Aktualizací karet: ' + cntAkt.ToString + #1);
|
Helios.Info (#1'Import ' + cntIns.ToString + ' nových karet' + CRLF + 'Aktualizací karet: ' + cntAkt.ToString + #1);
|
||||||
@@ -979,6 +991,7 @@ var oVar1, oVar2: OleVariant;
|
|||||||
arrRadky: TArray<TArray<string>>;
|
arrRadky: TArray<TArray<string>>;
|
||||||
kmen: TKmen;
|
kmen: TKmen;
|
||||||
cont: Boolean;
|
cont: Boolean;
|
||||||
|
wF: TForm;
|
||||||
begin
|
begin
|
||||||
posunSl:= 0;
|
posunSl:= 0;
|
||||||
|
|
||||||
@@ -1039,11 +1052,11 @@ var oVar1, oVar2: OleVariant;
|
|||||||
Delete(radky,1,Pos(#13, radky)+1);
|
Delete(radky,1,Pos(#13, radky)+1);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
waitStart(nil, 'Import dat karet nářadí', Length(arrRadky), clRed);
|
wF := helUtils.waitStart (nil, 'Import dat karet nářadí', Length(arrRadky), clRed, true);
|
||||||
for idxR:=0 to High(arrRadky)-1 do
|
for idxR:=0 to High(arrRadky)-1 do
|
||||||
begin
|
begin
|
||||||
if (idxR mod 10=0) then
|
if (idxR mod 10=0) then
|
||||||
waitSetProgBar(idxR);
|
helUtils.waitSetProgBar (idxR, wF);
|
||||||
try
|
try
|
||||||
idKZ:= 0;
|
idKZ:= 0;
|
||||||
clearKmen (kmen);
|
clearKmen (kmen);
|
||||||
@@ -1243,7 +1256,9 @@ var oVar1, oVar2: OleVariant;
|
|||||||
errMsg:= E.Message + CRLF + lSQL;
|
errMsg:= E.Message + CRLF + lSQL;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
waitEnd;
|
|
||||||
|
if Assigned(wF) then
|
||||||
|
waitEnd (wF);
|
||||||
|
|
||||||
Helios.Refresh (true);
|
Helios.Refresh (true);
|
||||||
Helios.Info (#1'Nových karet: ' + cntIns.ToString + CRLF + 'Upravených karet: ' + cntAkt.ToString + #1);
|
Helios.Info (#1'Nových karet: ' + cntIns.ToString + CRLF + 'Upravených karet: ' + cntAkt.ToString + #1);
|
||||||
@@ -1264,6 +1279,7 @@ var oVar1, oVar2: OleVariant;
|
|||||||
supps: TArray<string>;
|
supps: TArray<string>;
|
||||||
fndIdx: integer;
|
fndIdx: integer;
|
||||||
doplnNulu: boolean;
|
doplnNulu: boolean;
|
||||||
|
wF: TForm;
|
||||||
begin
|
begin
|
||||||
xls:= TXLSWorkbook.Create;
|
xls:= TXLSWorkbook.Create;
|
||||||
try
|
try
|
||||||
@@ -1456,14 +1472,14 @@ var oVar1, oVar2: OleVariant;
|
|||||||
with Helios.OpenSQL(lSQL) do
|
with Helios.OpenSQL(lSQL) do
|
||||||
begin
|
begin
|
||||||
i:=RecordCount;
|
i:=RecordCount;
|
||||||
waitStart(nil, 'Export položek', i, clRed);
|
wF := helUtils.waitStart (nil, 'Export položek', i, clRed, true);
|
||||||
First;
|
First;
|
||||||
i:= 1;
|
i:= 1;
|
||||||
while not(EOF) do
|
while not(EOF) do
|
||||||
begin
|
begin
|
||||||
|
|
||||||
if (i mod 10=0) then
|
if (i mod 10=0) then
|
||||||
waitSetProgBar(i);
|
helUtils.waitSetProgBar (i, wF);
|
||||||
|
|
||||||
idKZ:= StrToInt(VarToStr(FieldValues(8)));
|
idKZ:= StrToInt(VarToStr(FieldValues(8)));
|
||||||
sTypPol:= 'E';
|
sTypPol:= 'E';
|
||||||
@@ -1569,7 +1585,8 @@ var oVar1, oVar2: OleVariant;
|
|||||||
Next;
|
Next;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
waitEnd;
|
if Assigned(wF) then
|
||||||
|
waitEnd (wF);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
@@ -1616,6 +1633,7 @@ var oVar1, oVar2: OleVariant;
|
|||||||
arrRadky: TArray<TArray<string>>;
|
arrRadky: TArray<TArray<string>>;
|
||||||
kmen: TKmen;
|
kmen: TKmen;
|
||||||
cont: Boolean;
|
cont: Boolean;
|
||||||
|
wF: TForm;
|
||||||
begin
|
begin
|
||||||
posunSl:= 2;
|
posunSl:= 2;
|
||||||
|
|
||||||
@@ -1674,11 +1692,11 @@ var oVar1, oVar2: OleVariant;
|
|||||||
Delete(radky,1,Pos(#13, radky)+1);
|
Delete(radky,1,Pos(#13, radky)+1);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
waitStart(nil, 'Import dat karet měřidel', Length(arrRadky), clRed);
|
wF := helUtils.waitStart (nil, 'Import dat karet měřidel', Length(arrRadky), clRed, true);
|
||||||
for idxR:=0 to High(arrRadky)-1 do
|
for idxR:=0 to High(arrRadky)-1 do
|
||||||
begin
|
begin
|
||||||
if (idxR mod 10=0) then
|
if (idxR mod 10=0) then
|
||||||
waitSetProgBar(idxR);
|
helUtils.waitSetProgBar (idxR, wF);
|
||||||
try
|
try
|
||||||
idKZ:= 0;
|
idKZ:= 0;
|
||||||
clearKmen(kmen);
|
clearKmen(kmen);
|
||||||
@@ -1820,7 +1838,9 @@ var oVar1, oVar2: OleVariant;
|
|||||||
errMsg:= E.Message + CRLF + lSQL;
|
errMsg:= E.Message + CRLF + lSQL;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
waitEnd;
|
|
||||||
|
if Assigned(wF) then
|
||||||
|
helUtils.waitEnd (wF);
|
||||||
|
|
||||||
Helios.Refresh (true);
|
Helios.Refresh (true);
|
||||||
Helios.Info (#1'Nových karet: ' + cntIns.ToString + CRLF + 'Upravených karet: ' + cntAkt.ToString + #1);
|
Helios.Info (#1'Nových karet: ' + cntIns.ToString + CRLF + 'Upravených karet: ' + cntAkt.ToString + #1);
|
||||||
@@ -1838,6 +1858,7 @@ var oVar1, oVar2: OleVariant;
|
|||||||
arrRadky: TArray<TArray<string>>;
|
arrRadky: TArray<TArray<string>>;
|
||||||
kmen: TKmen;
|
kmen: TKmen;
|
||||||
cont, prvniPrazdne: Boolean;
|
cont, prvniPrazdne: Boolean;
|
||||||
|
wF: TForm;
|
||||||
begin
|
begin
|
||||||
|
|
||||||
overRadek:= 0;
|
overRadek:= 0;
|
||||||
@@ -1901,11 +1922,12 @@ var oVar1, oVar2: OleVariant;
|
|||||||
posunSl:= 0;
|
posunSl:= 0;
|
||||||
if (prvniPrazdne) then
|
if (prvniPrazdne) then
|
||||||
posunSl:= -1;
|
posunSl:= -1;
|
||||||
waitStart(nil, 'Import dat karet výrobních čísel měřidel', Length(arrRadky), clRed);
|
|
||||||
|
wF := helUtils.waitStart (nil, 'Import dat karet výrobních čísel měřidel', Length(arrRadky), clRed, true);
|
||||||
for idxR:=0 to High(arrRadky)-1 do
|
for idxR:=0 to High(arrRadky)-1 do
|
||||||
begin
|
begin
|
||||||
if (idxR mod 10=0) then
|
if (idxR mod 10=0) then
|
||||||
waitSetProgBar(idxR);
|
helUtils.waitSetProgBar (idxR, wF);
|
||||||
try
|
try
|
||||||
idKZ:= 0;
|
idKZ:= 0;
|
||||||
idVC:= 0;
|
idVC:= 0;
|
||||||
@@ -1990,7 +2012,9 @@ var oVar1, oVar2: OleVariant;
|
|||||||
errMsg:= E.Message + CRLF + lSQL;
|
errMsg:= E.Message + CRLF + lSQL;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
waitEnd;
|
|
||||||
|
if Assigned(wF) then
|
||||||
|
helUtils.waitEnd (wF);
|
||||||
|
|
||||||
Helios.Refresh (true);
|
Helios.Refresh (true);
|
||||||
Helios.Info (#1'Nových karet VČ: ' + cntIns.ToString + CRLF + 'Upravených karet VČ: ' + cntAkt.ToString + #1);
|
Helios.Info (#1'Nových karet VČ: ' + cntIns.ToString + CRLF + 'Upravených karet VČ: ' + cntAkt.ToString + #1);
|
||||||
@@ -1999,6 +2023,8 @@ var oVar1, oVar2: OleVariant;
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
procedure TplgKdynium.ZakazkaZobrazAtestyTaveb (const Helios: IHelios; ids: TArray<System.Integer>);
|
procedure TplgKdynium.ZakazkaZobrazAtestyTaveb (const Helios: IHelios; ids: TArray<System.Integer>);
|
||||||
var lSQL, idsX: string;
|
var lSQL, idsX: string;
|
||||||
bidRozbory, i: integer;
|
bidRozbory, i: integer;
|
||||||
@@ -2243,6 +2269,7 @@ var oVar1, oVar2: OleVariant;
|
|||||||
ctiZak, ctiUtvar: Boolean;
|
ctiZak, ctiUtvar: Boolean;
|
||||||
celkemHod, zakazkaHod: extended;
|
celkemHod, zakazkaHod: extended;
|
||||||
arrVstStr: TArray<string>;
|
arrVstStr: TArray<string>;
|
||||||
|
wF: TForm;
|
||||||
begin
|
begin
|
||||||
if (Length(arrID)>0) then
|
if (Length(arrID)>0) then
|
||||||
begin
|
begin
|
||||||
@@ -2298,7 +2325,7 @@ var oVar1, oVar2: OleVariant;
|
|||||||
if (idObd>0) then
|
if (idObd>0) then
|
||||||
begin
|
begin
|
||||||
|
|
||||||
waitStart(nil, 'Zjišťuji podíly evidovaných hodin práce' + IfThen(cisStredOper='', '', ' pracovišť střediska ' + cisStredOper), 1, clRed);
|
wF := helUtils.waitStart (nil, 'Zjišťuji podíly evidovaných hodin práce' + IfThen(cisStredOper='', '', ' pracovišť střediska ' + cisStredOper), 1, clRed, true);
|
||||||
|
|
||||||
lSQL:= 'SELECT ISNULL(SUM(pmz.Nor_cas_H), 0) FROM ' + tblPMZ + ' pmz INNER JOIN ' + tblPrikaz + 'p ON (p.ID=pmz.IDPrikaz) INNER JOIN ' + tblZak;
|
lSQL:= 'SELECT ISNULL(SUM(pmz.Nor_cas_H), 0) FROM ' + tblPMZ + ' pmz INNER JOIN ' + tblPrikaz + 'p ON (p.ID=pmz.IDPrikaz) INNER JOIN ' + tblZak;
|
||||||
lSQL:= lSQL + ' z ON (p.IDZakazka=z.ID) INNER JOIN ' + tblPrPost + ' pp ON (pp.IDPrikaz=pmz.IDPrikaz AND pp.Doklad=pmz.DokladPrPostup AND pp.Alt=pmz.AltPrPostup';
|
lSQL:= lSQL + ' z ON (p.IDZakazka=z.ID) INNER JOIN ' + tblPrPost + ' pp ON (pp.IDPrikaz=pmz.IDPrikaz AND pp.Doklad=pmz.DokladPrPostup AND pp.Alt=pmz.AltPrPostup';
|
||||||
@@ -2316,7 +2343,8 @@ var oVar1, oVar2: OleVariant;
|
|||||||
helUtils.ReseedTable(Helios, tblRozpRezDet);
|
helUtils.ReseedTable(Helios, tblRozpRezDet);
|
||||||
Helios.ExecSQL('INSERT ' + tblRozpRezDet + ' (CisloZakazky, IdFIARozpusteniRezii, Podil) ' + lSQL);
|
Helios.ExecSQL('INSERT ' + tblRozpRezDet + ' (CisloZakazky, IdFIARozpusteniRezii, Podil) ' + lSQL);
|
||||||
|
|
||||||
waitEnd;
|
if Assigned(wF) then
|
||||||
|
helUtils.waitEnd (wF);
|
||||||
|
|
||||||
{
|
{
|
||||||
with Helios.OpenSQL(lSQL) do
|
with Helios.OpenSQL(lSQL) do
|
||||||
@@ -2351,7 +2379,7 @@ var oVar1, oVar2: OleVariant;
|
|||||||
|
|
||||||
|
|
||||||
procedure TplgKdynium.Run (const Helios: IHelios);
|
procedure TplgKdynium.Run (const Helios: IHelios);
|
||||||
const MinVerzeHelios = $030020250106;
|
const MinVerzeHelios = $030020260114;
|
||||||
var typAkce: byte;
|
var typAkce: byte;
|
||||||
browID, cRec, cntID, l_loop, idDZ, dpz, cOrg, newBid: integer;
|
browID, cRec, cntID, l_loop, idDZ, dpz, cOrg, newBid: integer;
|
||||||
lSQL, autor, radDokl, IDcka, params, paramsBak, vlastPar, vlastPar2, contInfo, sz, podm, sTemp: string;
|
lSQL, autor, radDokl, IDcka, params, paramsBak, vlastPar, vlastPar2, contInfo, sz, podm, sTemp: string;
|
||||||
@@ -2368,6 +2396,8 @@ var oVar1, oVar2: OleVariant;
|
|||||||
fHrOdvOp: TformHrOdvOper;
|
fHrOdvOp: TformHrOdvOper;
|
||||||
fSchvalZak: TformSchvaleniZak;
|
fSchvalZak: TformSchvaleniZak;
|
||||||
fOOPPohyb: TformOOPPohyb;
|
fOOPPohyb: TformOOPPohyb;
|
||||||
|
fVPrZmenaUkonceni: TformVPrZmenaPlanuUkonceni;
|
||||||
|
fGenKObj: TformGenKoopObj;
|
||||||
term, canCont, plusJeden: boolean;
|
term, canCont, plusJeden: boolean;
|
||||||
begin
|
begin
|
||||||
|
|
||||||
@@ -2384,6 +2414,9 @@ var oVar1, oVar2: OleVariant;
|
|||||||
raise Exception.Create('Plugin vyžaduje min verzi Heliosu ' + IntToHex(MinVerzeHelios, 12))
|
raise Exception.Create('Plugin vyžaduje min verzi Heliosu ' + IntToHex(MinVerzeHelios, 12))
|
||||||
else
|
else
|
||||||
begin
|
begin
|
||||||
|
if (dataMod.dm=nil) then
|
||||||
|
dataMod.dm := Tdm.Create (nil);
|
||||||
|
|
||||||
|
|
||||||
with Helios.OpenSQL('SELECT CONVERT(nvarchar(128),CONTEXT_INFO(),2)') do
|
with Helios.OpenSQL('SELECT CONVERT(nvarchar(128),CONTEXT_INFO(),2)') do
|
||||||
if VarIsNull(FieldValues(0)) then
|
if VarIsNull(FieldValues(0)) then
|
||||||
@@ -2978,6 +3011,28 @@ var oVar1, oVar2: OleVariant;
|
|||||||
|
|
||||||
35: ImportObedy (Helios);
|
35: ImportObedy (Helios);
|
||||||
|
|
||||||
|
36: begin
|
||||||
|
fVPrZmenaUkonceni := TformVPrZmenaPlanuUkonceni.Create (nil);
|
||||||
|
try
|
||||||
|
fVPrZmenaUkonceni.Helios := Helios;
|
||||||
|
fVPrZmenaUkonceni.idVPr := cRec;
|
||||||
|
fVPrZmenaUkonceni.ShowModal;
|
||||||
|
finally
|
||||||
|
FreeAndNil (fVPrZmenaUkonceni);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
37: begin
|
||||||
|
fGenKObj := TformGenKoopObj.Create (nil);
|
||||||
|
try
|
||||||
|
fGenKObj.typObj := 1;
|
||||||
|
fGenKObj.Helios := Helios;
|
||||||
|
fGenKObj.ShowModal;
|
||||||
|
finally
|
||||||
|
FreeAndNil (fGenKObj);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
end; // case
|
end; // case
|
||||||
|
|
||||||
Helios.Refresh(true);
|
Helios.Refresh(true);
|
||||||
|
|||||||
+209
-1
@@ -1,5 +1,213 @@
|
|||||||
object dm: Tdm
|
object dm: Tdm
|
||||||
Height = 480
|
Height = 480
|
||||||
Width = 640
|
Width = 640
|
||||||
PixelsPerInch = 96
|
object tblKoopObjH: TFDMemTable
|
||||||
|
FieldDefs = <>
|
||||||
|
IndexDefs = <>
|
||||||
|
FetchOptions.AssignedValues = [evMode]
|
||||||
|
FetchOptions.Mode = fmAll
|
||||||
|
ResourceOptions.AssignedValues = [rvSilentMode]
|
||||||
|
ResourceOptions.SilentMode = True
|
||||||
|
UpdateOptions.AssignedValues = [uvCheckRequired, uvAutoCommitUpdates]
|
||||||
|
UpdateOptions.CheckRequired = False
|
||||||
|
UpdateOptions.AutoCommitUpdates = True
|
||||||
|
StoreDefs = True
|
||||||
|
Left = 48
|
||||||
|
Top = 60
|
||||||
|
object tblKoopObjHID: TAutoIncField
|
||||||
|
FieldName = 'ID'
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
object tblKoopObjHIDKoopObjH: TIntegerField
|
||||||
|
FieldName = 'IDKoopObjH'
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
object tblKoopObjHOznaceni: TStringField
|
||||||
|
FieldName = 'Oznaceni'
|
||||||
|
Size = 30
|
||||||
|
end
|
||||||
|
object tblKoopObjHPozadDodani: TDateField
|
||||||
|
FieldName = 'PozadDodani'
|
||||||
|
end
|
||||||
|
object tblKoopObjHDatVytvoreni: TDateTimeField
|
||||||
|
FieldName = 'DatVytvoreni'
|
||||||
|
end
|
||||||
|
object tblKoopObjHJePrijem: TBooleanField
|
||||||
|
FieldName = 'JePrijem'
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object dsKoopObjH: TDataSource
|
||||||
|
DataSet = tblKoopObjH
|
||||||
|
Left = 46
|
||||||
|
Top = 126
|
||||||
|
end
|
||||||
|
object dsKoopObjR: TDataSource
|
||||||
|
DataSet = tblKoopObjR
|
||||||
|
Left = 154
|
||||||
|
Top = 128
|
||||||
|
end
|
||||||
|
object tblKoopObjR: TFDMemTable
|
||||||
|
FieldDefs = <>
|
||||||
|
IndexDefs = <>
|
||||||
|
FetchOptions.AssignedValues = [evMode]
|
||||||
|
FetchOptions.Mode = fmAll
|
||||||
|
ResourceOptions.AssignedValues = [rvSilentMode]
|
||||||
|
ResourceOptions.SilentMode = True
|
||||||
|
UpdateOptions.AssignedValues = [uvCheckRequired, uvAutoCommitUpdates]
|
||||||
|
UpdateOptions.CheckRequired = False
|
||||||
|
UpdateOptions.AutoCommitUpdates = True
|
||||||
|
StoreDefs = True
|
||||||
|
Left = 148
|
||||||
|
Top = 60
|
||||||
|
object tblKoopObjRID: TAutoIncField
|
||||||
|
FieldName = 'ID'
|
||||||
|
end
|
||||||
|
object tblKoopObjRIDPolKoopObj: TIntegerField
|
||||||
|
FieldName = 'IDPolKoopObj'
|
||||||
|
end
|
||||||
|
object tblKoopObjRIDVPr: TIntegerField
|
||||||
|
FieldName = 'IDVPr'
|
||||||
|
end
|
||||||
|
object tblKoopObjRIDPrPostup: TIntegerField
|
||||||
|
FieldName = 'IDPrPostup'
|
||||||
|
end
|
||||||
|
object tblKoopObjRDoklad: TIntegerField
|
||||||
|
FieldName = 'Doklad'
|
||||||
|
end
|
||||||
|
object tblKoopObjRAlt: TStringField
|
||||||
|
FieldName = 'Alt'
|
||||||
|
Size = 1
|
||||||
|
end
|
||||||
|
object tblKoopObjRIDDavka: TIntegerField
|
||||||
|
FieldName = 'IDDavka'
|
||||||
|
end
|
||||||
|
object tblKoopObjRMnozstvi: TFloatField
|
||||||
|
DefaultExpression = '0'
|
||||||
|
FieldName = 'Mnozstvi'
|
||||||
|
end
|
||||||
|
object tblKoopObjRKsNaStr: TSmallintField
|
||||||
|
FieldName = 'KsNaStr'
|
||||||
|
end
|
||||||
|
object tblKoopObjRIDKooperace: TIntegerField
|
||||||
|
FieldName = 'IDKooperace'
|
||||||
|
end
|
||||||
|
object tblKoopObjRPocetPalet: TSmallintField
|
||||||
|
FieldName = 'PocetPalet'
|
||||||
|
end
|
||||||
|
object tblKoopObjRPocetBeden: TSmallintField
|
||||||
|
DefaultExpression = '0'
|
||||||
|
FieldName = 'PocetBeden'
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object tblInsOperace: TFDMemTable
|
||||||
|
FieldDefs = <>
|
||||||
|
IndexDefs = <>
|
||||||
|
FetchOptions.AssignedValues = [evMode]
|
||||||
|
FetchOptions.Mode = fmAll
|
||||||
|
ResourceOptions.AssignedValues = [rvSilentMode]
|
||||||
|
ResourceOptions.SilentMode = True
|
||||||
|
UpdateOptions.AssignedValues = [uvCheckRequired, uvAutoCommitUpdates]
|
||||||
|
UpdateOptions.CheckRequired = False
|
||||||
|
UpdateOptions.AutoCommitUpdates = True
|
||||||
|
StoreDefs = True
|
||||||
|
Left = 258
|
||||||
|
Top = 62
|
||||||
|
object tblInsOperaceID: TAutoIncField
|
||||||
|
FieldName = 'ID'
|
||||||
|
end
|
||||||
|
object tblInsOperaceIdPrPostup: TIntegerField
|
||||||
|
FieldName = 'IdPrPostup'
|
||||||
|
end
|
||||||
|
object tblInsOperaceRegCis: TStringField
|
||||||
|
FieldName = 'RegCis'
|
||||||
|
Size = 30
|
||||||
|
end
|
||||||
|
object tblInsOperaceRadaPrikaz: TStringField
|
||||||
|
FieldName = 'RadaPrikaz'
|
||||||
|
Size = 30
|
||||||
|
end
|
||||||
|
object tblInsOperaceIDVPr: TIntegerField
|
||||||
|
FieldName = 'IDVPr'
|
||||||
|
end
|
||||||
|
object tblInsOperaceIdVPrVyssi: TIntegerField
|
||||||
|
FieldName = 'IdVPrVyssi'
|
||||||
|
end
|
||||||
|
object tblInsOperaceIDDavka: TIntegerField
|
||||||
|
FieldName = 'IDDavka'
|
||||||
|
end
|
||||||
|
object tblInsOperaceIDDavkaRodic: TIntegerField
|
||||||
|
FieldName = 'IDDavkaRodic'
|
||||||
|
end
|
||||||
|
object tblInsOperaceDoklad: TIntegerField
|
||||||
|
FieldName = 'Doklad'
|
||||||
|
end
|
||||||
|
object tblInsOperaceAlt: TStringField
|
||||||
|
FieldName = 'Alt'
|
||||||
|
Size = 1
|
||||||
|
end
|
||||||
|
object tblInsOperaceKusy: TIntegerField
|
||||||
|
FieldName = 'Kusy'
|
||||||
|
end
|
||||||
|
object tblInsOperaceKoef: TFloatField
|
||||||
|
FieldName = 'Koef'
|
||||||
|
end
|
||||||
|
object tblInsOperaceOperace: TStringField
|
||||||
|
FieldName = 'Operace'
|
||||||
|
Size = 100
|
||||||
|
end
|
||||||
|
object tblInsOperaceIDKooperace: TIntegerField
|
||||||
|
FieldName = 'IDKooperace'
|
||||||
|
end
|
||||||
|
object tblInsOperaceKsNaStr: TSmallintField
|
||||||
|
FieldName = 'KsNaStr'
|
||||||
|
end
|
||||||
|
object tblInsOperaceIDRadkuHDCPol: TIntegerField
|
||||||
|
FieldName = 'IDRadkuHDCPol'
|
||||||
|
end
|
||||||
|
object tblInsOperaceKodKoop: TStringField
|
||||||
|
FieldName = 'KodKoop'
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object tblRadekDavky: TFDMemTable
|
||||||
|
FieldDefs = <>
|
||||||
|
IndexDefs = <>
|
||||||
|
FetchOptions.AssignedValues = [evMode]
|
||||||
|
FetchOptions.Mode = fmAll
|
||||||
|
ResourceOptions.AssignedValues = [rvSilentMode]
|
||||||
|
ResourceOptions.SilentMode = True
|
||||||
|
UpdateOptions.AssignedValues = [uvCheckRequired, uvAutoCommitUpdates]
|
||||||
|
UpdateOptions.CheckRequired = False
|
||||||
|
UpdateOptions.AutoCommitUpdates = True
|
||||||
|
StoreDefs = True
|
||||||
|
Left = 356
|
||||||
|
Top = 62
|
||||||
|
object tblRadekDavkyID: TAutoIncField
|
||||||
|
FieldName = 'ID'
|
||||||
|
end
|
||||||
|
object tblRadekDavkyIDDavka: TIntegerField
|
||||||
|
FieldName = 'IDDavka'
|
||||||
|
end
|
||||||
|
object tblRadekDavkyIDDavkaRodic: TIntegerField
|
||||||
|
FieldName = 'IDDavkaRodic'
|
||||||
|
end
|
||||||
|
object tblRadekDavkyIDVPr: TIntegerField
|
||||||
|
FieldName = 'IDVPr'
|
||||||
|
end
|
||||||
|
object tblRadekDavkyIdPostup: TIntegerField
|
||||||
|
FieldName = 'IdPostup'
|
||||||
|
end
|
||||||
|
object tblRadekDavkyMnozstvi: TFloatField
|
||||||
|
FieldName = 'Mnozstvi'
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object dsInsOperace: TDataSource
|
||||||
|
DataSet = tblInsOperace
|
||||||
|
Left = 252
|
||||||
|
Top = 138
|
||||||
|
end
|
||||||
|
object dsRadekDavky: TDataSource
|
||||||
|
DataSet = tblRadekDavky
|
||||||
|
Left = 346
|
||||||
|
Top = 134
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
+94
-1
@@ -3,10 +3,92 @@
|
|||||||
interface
|
interface
|
||||||
|
|
||||||
uses
|
uses
|
||||||
System.SysUtils, System.Classes;
|
System.SysUtils, System.Classes, FireDAC.Stan.Intf, FireDAC.Stan.Option, FireDAC.Stan.Param,
|
||||||
|
FireDAC.Stan.Error, FireDAC.DatS, FireDAC.Phys.Intf, FireDAC.DApt.Intf, Data.DB,
|
||||||
|
FireDAC.Comp.DataSet, FireDAC.Comp.Client,
|
||||||
|
ddPlugin_TLB;
|
||||||
|
|
||||||
|
const
|
||||||
|
tblKonfigZarizeni = 'dbo._HDCserver_zarizeni';
|
||||||
|
tblHDCKooperanti = 'dbo._HDCserver_kooperanti';
|
||||||
|
|
||||||
|
tblDavky = 'dbo._hdc_TabDavky';
|
||||||
|
|
||||||
|
tblHDCSDDokl = 'dbo._HDCserver_doklady';
|
||||||
|
tblHDCSDPol = 'dbo._HDCserver_dokladyPol';
|
||||||
|
tblHDCSDHeODokl = 'dbo._HDCserver_doklady_heoDokl';
|
||||||
|
tblHDCSDPolKoopObj = 'dbo._HDCserver_dokladyPol_KoopObjPol';
|
||||||
|
|
||||||
|
tblKoopH = 'dbo._hdc_TabKooperaceH'; // hlavicka objednavky ze ctecky
|
||||||
|
tblKoopR = 'dbo._hdc_TabKooperaceR'; // polozka
|
||||||
|
tblKoopD = 'dbo._hdc_TabKooperaceD'; // davka
|
||||||
|
tblKoopVPr = 'dbo._hdc_TabKooperaceVPr'; // prikazy
|
||||||
|
|
||||||
|
|
||||||
type
|
type
|
||||||
|
TKooperant = class
|
||||||
|
strict private
|
||||||
|
FNazev: string;
|
||||||
|
FCisloOrg: integer;
|
||||||
|
FIDOrg: integer;
|
||||||
|
FHelios: IHelios;
|
||||||
|
public
|
||||||
|
constructor Create (const Nazev: string; const cisloOrg: integer; const Helios: IHelios);
|
||||||
|
property Nazev: string read FNazev write FNazev;
|
||||||
|
property CisloOrg: integer read FCisloOrg write FCisloOrg;
|
||||||
|
property IDOrg: integer read FIDOrg;
|
||||||
|
end;
|
||||||
|
|
||||||
Tdm = class(TDataModule)
|
Tdm = class(TDataModule)
|
||||||
|
tblKoopObjH: TFDMemTable;
|
||||||
|
dsKoopObjH: TDataSource;
|
||||||
|
dsKoopObjR: TDataSource;
|
||||||
|
tblKoopObjR: TFDMemTable;
|
||||||
|
tblKoopObjHID: TAutoIncField;
|
||||||
|
tblKoopObjHIDKoopObjH: TIntegerField;
|
||||||
|
tblKoopObjRID: TAutoIncField;
|
||||||
|
tblKoopObjRIDPolKoopObj: TIntegerField;
|
||||||
|
tblKoopObjRIDVPr: TIntegerField;
|
||||||
|
tblKoopObjRIDPrPostup: TIntegerField;
|
||||||
|
tblKoopObjRDoklad: TIntegerField;
|
||||||
|
tblKoopObjRAlt: TStringField;
|
||||||
|
tblKoopObjRIDDavka: TIntegerField;
|
||||||
|
tblKoopObjRMnozstvi: TFloatField;
|
||||||
|
tblKoopObjRKsNaStr: TSmallintField;
|
||||||
|
tblKoopObjRIDKooperace: TIntegerField;
|
||||||
|
tblKoopObjRPocetPalet: TSmallintField;
|
||||||
|
tblKoopObjRPocetBeden: TSmallintField;
|
||||||
|
tblInsOperace: TFDMemTable;
|
||||||
|
tblRadekDavky: TFDMemTable;
|
||||||
|
tblInsOperaceID: TAutoIncField;
|
||||||
|
tblInsOperaceIdPrPostup: TIntegerField;
|
||||||
|
tblInsOperaceRegCis: TStringField;
|
||||||
|
tblInsOperaceRadaPrikaz: TStringField;
|
||||||
|
tblInsOperaceIDVPr: TIntegerField;
|
||||||
|
tblInsOperaceIdVPrVyssi: TIntegerField;
|
||||||
|
tblInsOperaceIDDavkaRodic: TIntegerField;
|
||||||
|
tblInsOperaceDoklad: TIntegerField;
|
||||||
|
tblInsOperaceAlt: TStringField;
|
||||||
|
tblInsOperaceKusy: TIntegerField;
|
||||||
|
tblInsOperaceKoef: TFloatField;
|
||||||
|
tblInsOperaceOperace: TStringField;
|
||||||
|
tblInsOperaceIDKooperace: TIntegerField;
|
||||||
|
tblInsOperaceKsNaStr: TSmallintField;
|
||||||
|
tblInsOperaceIDRadkuHDCPol: TIntegerField;
|
||||||
|
tblInsOperaceKodKoop: TStringField;
|
||||||
|
tblRadekDavkyID: TAutoIncField;
|
||||||
|
tblRadekDavkyIDDavka: TIntegerField;
|
||||||
|
tblRadekDavkyIDDavkaRodic: TIntegerField;
|
||||||
|
tblRadekDavkyIDVPr: TIntegerField;
|
||||||
|
tblRadekDavkyIdPostup: TIntegerField;
|
||||||
|
tblRadekDavkyMnozstvi: TFloatField;
|
||||||
|
tblKoopObjHOznaceni: TStringField;
|
||||||
|
tblKoopObjHPozadDodani: TDateField;
|
||||||
|
tblKoopObjHDatVytvoreni: TDateTimeField;
|
||||||
|
tblKoopObjHJePrijem: TBooleanField;
|
||||||
|
dsInsOperace: TDataSource;
|
||||||
|
dsRadekDavky: TDataSource;
|
||||||
|
tblInsOperaceIDDavka: TIntegerField;
|
||||||
private
|
private
|
||||||
public
|
public
|
||||||
end;
|
end;
|
||||||
@@ -15,9 +97,20 @@ var
|
|||||||
dm: Tdm;
|
dm: Tdm;
|
||||||
|
|
||||||
implementation
|
implementation
|
||||||
|
uses helUtils;
|
||||||
|
|
||||||
{%CLASSGROUP 'Vcl.Controls.TControl'}
|
{%CLASSGROUP 'Vcl.Controls.TControl'}
|
||||||
|
|
||||||
{$R *.dfm}
|
{$R *.dfm}
|
||||||
|
|
||||||
|
|
||||||
|
constructor TKooperant.Create (const Nazev: string; const cisloOrg: Integer; const Helios: IHelios);
|
||||||
|
begin
|
||||||
|
FHelios := Helios;
|
||||||
|
FNazev := Nazev;
|
||||||
|
FCisloOrg := cisloOrg;
|
||||||
|
FIDOrg := helUtils.getHeliosIntVal (FHelios, -1, 'SELECT ID FROM ' + tblCOrg + ' WHERE CisloOrg=' + FCisloOrg.ToString);
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
end.
|
end.
|
||||||
|
|||||||
@@ -0,0 +1,547 @@
|
|||||||
|
object formGenKoopObj: TformGenKoopObj
|
||||||
|
Left = 0
|
||||||
|
Top = 0
|
||||||
|
Caption = ' Generov'#225'n'#237' Koopera'#269'n'#237' objedn'#225'vky'
|
||||||
|
ClientHeight = 678
|
||||||
|
ClientWidth = 952
|
||||||
|
Color = clBtnFace
|
||||||
|
Font.Charset = DEFAULT_CHARSET
|
||||||
|
Font.Color = clWindowText
|
||||||
|
Font.Height = -16
|
||||||
|
Font.Name = 'Segoe UI'
|
||||||
|
Font.Style = []
|
||||||
|
Position = poOwnerFormCenter
|
||||||
|
OnShow = FormShow
|
||||||
|
TextHeight = 21
|
||||||
|
object pgCtrl: TRzPageControl
|
||||||
|
AlignWithMargins = True
|
||||||
|
Left = 3
|
||||||
|
Top = 3
|
||||||
|
Width = 946
|
||||||
|
Height = 672
|
||||||
|
Hint = ''
|
||||||
|
ActivePage = shNovaObj
|
||||||
|
Align = alClient
|
||||||
|
SoftCorners = True
|
||||||
|
TabIndex = 1
|
||||||
|
TabOrder = 0
|
||||||
|
FixedDimension = 27
|
||||||
|
object shHlavicky: TRzTabSheet
|
||||||
|
Caption = 'Hlavi'#269'ky'
|
||||||
|
object pnl1: TGridPanel
|
||||||
|
AlignWithMargins = True
|
||||||
|
Left = 3
|
||||||
|
Top = 3
|
||||||
|
Width = 936
|
||||||
|
Height = 635
|
||||||
|
Align = alClient
|
||||||
|
ColumnCollection = <
|
||||||
|
item
|
||||||
|
Value = 33.333333333333340000
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Value = 33.333333333333340000
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Value = 33.333333333333310000
|
||||||
|
end>
|
||||||
|
ControlCollection = <
|
||||||
|
item
|
||||||
|
Column = 0
|
||||||
|
Control = btnNovaObj
|
||||||
|
Row = 1
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Column = 1
|
||||||
|
Control = btnPrijem
|
||||||
|
Row = 1
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Column = 2
|
||||||
|
Control = btnReload
|
||||||
|
Row = 1
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Column = 0
|
||||||
|
ColumnSpan = 3
|
||||||
|
Control = grdHlavicky
|
||||||
|
Row = 0
|
||||||
|
end>
|
||||||
|
RowCollection = <
|
||||||
|
item
|
||||||
|
Value = 85.000000000000000000
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Value = 15.000000000000000000
|
||||||
|
end>
|
||||||
|
TabOrder = 0
|
||||||
|
DesignSize = (
|
||||||
|
936
|
||||||
|
635)
|
||||||
|
object btnNovaObj: TButton
|
||||||
|
Left = 61
|
||||||
|
Top = 556
|
||||||
|
Width = 190
|
||||||
|
Height = 60
|
||||||
|
Anchors = []
|
||||||
|
Caption = 'Nov'#225' kooperace'
|
||||||
|
TabOrder = 0
|
||||||
|
OnClick = btnNovaObjClick
|
||||||
|
end
|
||||||
|
object btnPrijem: TButton
|
||||||
|
Left = 373
|
||||||
|
Top = 556
|
||||||
|
Width = 190
|
||||||
|
Height = 60
|
||||||
|
Anchors = []
|
||||||
|
Caption = 'P'#345#237'jem kooperace'
|
||||||
|
TabOrder = 1
|
||||||
|
end
|
||||||
|
object btnReload: TButton
|
||||||
|
Left = 684
|
||||||
|
Top = 556
|
||||||
|
Width = 190
|
||||||
|
Height = 60
|
||||||
|
Anchors = []
|
||||||
|
Caption = 'Obnovit seznam'
|
||||||
|
TabOrder = 2
|
||||||
|
end
|
||||||
|
object grdHlavicky: TJvDBGrid
|
||||||
|
AlignWithMargins = True
|
||||||
|
Left = 4
|
||||||
|
Top = 4
|
||||||
|
Width = 928
|
||||||
|
Height = 532
|
||||||
|
Align = alClient
|
||||||
|
Anchors = []
|
||||||
|
DataSource = dm.dsKoopObjH
|
||||||
|
DrawingStyle = gdsGradient
|
||||||
|
Options = [dgTitles, dgIndicator, dgColumnResize, dgColLines, dgRowLines, dgTabs, dgRowSelect, dgConfirmDelete, dgCancelOnExit, dgTitleClick, dgTitleHotTrack]
|
||||||
|
ReadOnly = True
|
||||||
|
TabOrder = 3
|
||||||
|
TitleFont.Charset = DEFAULT_CHARSET
|
||||||
|
TitleFont.Color = clWindowText
|
||||||
|
TitleFont.Height = -16
|
||||||
|
TitleFont.Name = 'Segoe UI'
|
||||||
|
TitleFont.Style = []
|
||||||
|
ScrollBars = ssVertical
|
||||||
|
SelectColumnsDialogStrings.Caption = 'Select columns'
|
||||||
|
SelectColumnsDialogStrings.OK = '&OK'
|
||||||
|
SelectColumnsDialogStrings.NoSelectionWarning = 'At least one column must be visible!'
|
||||||
|
EditControls = <>
|
||||||
|
RowsHeight = 25
|
||||||
|
TitleRowHeight = 25
|
||||||
|
Columns = <
|
||||||
|
item
|
||||||
|
Expanded = False
|
||||||
|
FieldName = 'ID'
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Expanded = False
|
||||||
|
FieldName = 'IDKoopObjH'
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Expanded = False
|
||||||
|
FieldName = 'Oznaceni'
|
||||||
|
Title.Caption = 'Ozna'#269'en'#237
|
||||||
|
Width = 529
|
||||||
|
Visible = True
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Alignment = taCenter
|
||||||
|
Expanded = False
|
||||||
|
FieldName = 'PozadDodani'
|
||||||
|
Title.Alignment = taCenter
|
||||||
|
Title.Caption = 'Po'#382'adovan'#233' dod'#225'n'#237
|
||||||
|
Width = 148
|
||||||
|
Visible = True
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Alignment = taCenter
|
||||||
|
Expanded = False
|
||||||
|
FieldName = 'DatVytvoreni'
|
||||||
|
Title.Alignment = taCenter
|
||||||
|
Title.Caption = 'Datum vytvo'#345'en'#237
|
||||||
|
Visible = True
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Alignment = taCenter
|
||||||
|
Expanded = False
|
||||||
|
FieldName = 'JePrijem'
|
||||||
|
Title.Alignment = taCenter
|
||||||
|
Title.Caption = 'P'#345#237'jem'
|
||||||
|
Width = 55
|
||||||
|
Visible = True
|
||||||
|
end>
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object shNovaObj: TRzTabSheet
|
||||||
|
OnShow = shNovaObjShow
|
||||||
|
Caption = 'Nov'#225' objedn'#225'vka'
|
||||||
|
object pnl2: TGridPanel
|
||||||
|
AlignWithMargins = True
|
||||||
|
Left = 3
|
||||||
|
Top = 3
|
||||||
|
Width = 936
|
||||||
|
Height = 635
|
||||||
|
Align = alClient
|
||||||
|
ColumnCollection = <
|
||||||
|
item
|
||||||
|
Value = 100.000000000000000000
|
||||||
|
end>
|
||||||
|
ControlCollection = <
|
||||||
|
item
|
||||||
|
Column = 0
|
||||||
|
Control = pnl3
|
||||||
|
Row = 2
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Column = 0
|
||||||
|
Control = GridPanel1
|
||||||
|
Row = 0
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Column = 0
|
||||||
|
Control = grdNovePolozky
|
||||||
|
Row = 1
|
||||||
|
end>
|
||||||
|
RowCollection = <
|
||||||
|
item
|
||||||
|
Value = 20.153297645299770000
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Value = 69.770053532050350000
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Value = 10.076648822649870000
|
||||||
|
end>
|
||||||
|
TabOrder = 0
|
||||||
|
object pnl3: TGridPanel
|
||||||
|
Left = 1
|
||||||
|
Top = 570
|
||||||
|
Width = 934
|
||||||
|
Height = 64
|
||||||
|
Align = alClient
|
||||||
|
ColumnCollection = <
|
||||||
|
item
|
||||||
|
Value = 50.000000000000000000
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Value = 50.000000000000000000
|
||||||
|
end>
|
||||||
|
ControlCollection = <
|
||||||
|
item
|
||||||
|
Column = 0
|
||||||
|
Control = btnPolUloz
|
||||||
|
Row = 0
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Column = 1
|
||||||
|
Control = btnPolSmaz
|
||||||
|
Row = 0
|
||||||
|
end>
|
||||||
|
RowCollection = <
|
||||||
|
item
|
||||||
|
Value = 100.000000000000000000
|
||||||
|
end>
|
||||||
|
TabOrder = 0
|
||||||
|
DesignSize = (
|
||||||
|
934
|
||||||
|
64)
|
||||||
|
object btnPolUloz: TButton
|
||||||
|
Left = 164
|
||||||
|
Top = 7
|
||||||
|
Width = 140
|
||||||
|
Height = 50
|
||||||
|
Anchors = []
|
||||||
|
Caption = 'Ulo'#382'it objedn'#225'vku'
|
||||||
|
TabOrder = 0
|
||||||
|
OnClick = btnPolUlozClick
|
||||||
|
end
|
||||||
|
object btnPolSmaz: TButton
|
||||||
|
Left = 630
|
||||||
|
Top = 7
|
||||||
|
Width = 140
|
||||||
|
Height = 50
|
||||||
|
Anchors = []
|
||||||
|
Caption = 'Smazat'
|
||||||
|
TabOrder = 1
|
||||||
|
OnClick = btnPolSmazClick
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object GridPanel1: TGridPanel
|
||||||
|
Left = 1
|
||||||
|
Top = 1
|
||||||
|
Width = 934
|
||||||
|
Height = 128
|
||||||
|
Align = alClient
|
||||||
|
ColumnCollection = <
|
||||||
|
item
|
||||||
|
Value = 33.333333333333340000
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Value = 33.333333333333340000
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Value = 33.333333333333310000
|
||||||
|
end>
|
||||||
|
ControlCollection = <
|
||||||
|
item
|
||||||
|
Column = 0
|
||||||
|
Control = Label1
|
||||||
|
Row = 0
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Column = 1
|
||||||
|
ColumnSpan = 2
|
||||||
|
Control = cbKooperanti
|
||||||
|
Row = 0
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Column = 0
|
||||||
|
Control = Label2
|
||||||
|
Row = 1
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Column = 1
|
||||||
|
Control = dtPozadDodani
|
||||||
|
Row = 1
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Column = 0
|
||||||
|
Control = btnNovaPol
|
||||||
|
Row = 2
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Column = 2
|
||||||
|
Control = edtBarcode
|
||||||
|
Row = 2
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Column = 1
|
||||||
|
Control = lblTypKodu
|
||||||
|
Row = 2
|
||||||
|
end>
|
||||||
|
RowCollection = <
|
||||||
|
item
|
||||||
|
Value = 33.333333333333340000
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Value = 33.333333333333340000
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Value = 33.333333333333310000
|
||||||
|
end>
|
||||||
|
TabOrder = 1
|
||||||
|
DesignSize = (
|
||||||
|
934
|
||||||
|
128)
|
||||||
|
object Label1: TLabel
|
||||||
|
Left = 119
|
||||||
|
Top = 11
|
||||||
|
Width = 75
|
||||||
|
Height = 21
|
||||||
|
Anchors = []
|
||||||
|
Caption = 'Kooperant:'
|
||||||
|
ExplicitLeft = 120
|
||||||
|
end
|
||||||
|
object cbKooperanti: TRzComboBox
|
||||||
|
AlignWithMargins = True
|
||||||
|
Left = 315
|
||||||
|
Top = 7
|
||||||
|
Width = 536
|
||||||
|
Height = 29
|
||||||
|
Anchors = [akLeft]
|
||||||
|
Style = csDropDownList
|
||||||
|
TabOrder = 0
|
||||||
|
OnChange = cbKooperantiChange
|
||||||
|
end
|
||||||
|
object Label2: TLabel
|
||||||
|
Left = 63
|
||||||
|
Top = 53
|
||||||
|
Width = 187
|
||||||
|
Height = 21
|
||||||
|
Anchors = []
|
||||||
|
Caption = 'Po'#382'adovan'#233' datum dod'#225'n'#237':'
|
||||||
|
ExplicitLeft = 64
|
||||||
|
end
|
||||||
|
object dtPozadDodani: TDateTimePicker
|
||||||
|
Left = 312
|
||||||
|
Top = 49
|
||||||
|
Width = 125
|
||||||
|
Height = 29
|
||||||
|
Anchors = [akLeft]
|
||||||
|
Date = 46155.000000000000000000
|
||||||
|
Time = 0.371777592590660800
|
||||||
|
TabOrder = 1
|
||||||
|
end
|
||||||
|
object btnNovaPol: TButton
|
||||||
|
Left = 54
|
||||||
|
Top = 87
|
||||||
|
Width = 204
|
||||||
|
Height = 38
|
||||||
|
Anchors = []
|
||||||
|
Caption = 'Nov'#225' polo'#382'ka'
|
||||||
|
TabOrder = 2
|
||||||
|
OnClick = btnNovaPolClick
|
||||||
|
end
|
||||||
|
object edtBarcode: TEdit
|
||||||
|
Left = 622
|
||||||
|
Top = 91
|
||||||
|
Width = 445
|
||||||
|
Height = 29
|
||||||
|
Anchors = []
|
||||||
|
MaxLength = 50
|
||||||
|
TabOrder = 3
|
||||||
|
OnExit = edtBarcodeExit
|
||||||
|
end
|
||||||
|
object lblTypKodu: TLabel
|
||||||
|
Left = 465
|
||||||
|
Top = 95
|
||||||
|
Width = 4
|
||||||
|
Height = 21
|
||||||
|
Anchors = []
|
||||||
|
ExplicitLeft = 428
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object grdNovePolozky: TJvDBGrid
|
||||||
|
AlignWithMargins = True
|
||||||
|
Left = 4
|
||||||
|
Top = 132
|
||||||
|
Width = 928
|
||||||
|
Height = 435
|
||||||
|
Align = alClient
|
||||||
|
DataSource = dm.dsInsOperace
|
||||||
|
DrawingStyle = gdsGradient
|
||||||
|
Options = [dgTitles, dgIndicator, dgColumnResize, dgColLines, dgRowLines, dgTabs, dgRowSelect, dgConfirmDelete, dgCancelOnExit, dgTitleClick, dgTitleHotTrack]
|
||||||
|
PopupMenu = pMenu
|
||||||
|
TabOrder = 2
|
||||||
|
TitleFont.Charset = DEFAULT_CHARSET
|
||||||
|
TitleFont.Color = clWindowText
|
||||||
|
TitleFont.Height = -16
|
||||||
|
TitleFont.Name = 'Segoe UI'
|
||||||
|
TitleFont.Style = []
|
||||||
|
ScrollBars = ssVertical
|
||||||
|
SelectColumnsDialogStrings.Caption = 'Select columns'
|
||||||
|
SelectColumnsDialogStrings.OK = '&OK'
|
||||||
|
SelectColumnsDialogStrings.NoSelectionWarning = 'At least one column must be visible!'
|
||||||
|
EditControls = <>
|
||||||
|
RowsHeight = 25
|
||||||
|
TitleRowHeight = 25
|
||||||
|
Columns = <
|
||||||
|
item
|
||||||
|
Expanded = False
|
||||||
|
FieldName = 'ID'
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Expanded = False
|
||||||
|
FieldName = 'IdPrPostup'
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Alignment = taCenter
|
||||||
|
Expanded = False
|
||||||
|
FieldName = 'RegCis'
|
||||||
|
Title.Alignment = taCenter
|
||||||
|
Title.Caption = 'Reg. '#269#237'slo'
|
||||||
|
Width = 150
|
||||||
|
Visible = True
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Alignment = taCenter
|
||||||
|
Expanded = False
|
||||||
|
FieldName = 'RadaPrikaz'
|
||||||
|
Title.Alignment = taCenter
|
||||||
|
Title.Caption = #344'ada / p'#345#237'kaz'
|
||||||
|
Width = 161
|
||||||
|
Visible = True
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Expanded = False
|
||||||
|
FieldName = 'IDVPr'
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Expanded = False
|
||||||
|
FieldName = 'IdVPrVyssi'
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Expanded = False
|
||||||
|
FieldName = 'IDDavkaRodic'
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Expanded = False
|
||||||
|
FieldName = 'Doklad'
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Expanded = False
|
||||||
|
FieldName = 'Alt'
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Expanded = False
|
||||||
|
FieldName = 'Kusy'
|
||||||
|
Title.Alignment = taCenter
|
||||||
|
Width = 78
|
||||||
|
Visible = True
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Expanded = False
|
||||||
|
FieldName = 'Koef'
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Expanded = False
|
||||||
|
FieldName = 'Operace'
|
||||||
|
Width = 409
|
||||||
|
Visible = True
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Expanded = False
|
||||||
|
FieldName = 'IDKooperace'
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Expanded = False
|
||||||
|
FieldName = 'KsNaStr'
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Expanded = False
|
||||||
|
FieldName = 'IDRadkuHDCPol'
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Expanded = False
|
||||||
|
FieldName = 'KodKoop'
|
||||||
|
Title.Caption = 'Kooperace'
|
||||||
|
Width = 100
|
||||||
|
Visible = True
|
||||||
|
end>
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object pMenu: TPopupMenu
|
||||||
|
Left = 109
|
||||||
|
Top = 428
|
||||||
|
object pM1ZmenaMnoz: TMenuItem
|
||||||
|
Caption = 'Zm'#283'na mno'#382'stv'#237
|
||||||
|
OnClick = pM1ZmenaMnozClick
|
||||||
|
end
|
||||||
|
object N1: TMenuItem
|
||||||
|
Caption = '-'
|
||||||
|
end
|
||||||
|
object pM1Smazat: TMenuItem
|
||||||
|
Caption = 'Smazat'
|
||||||
|
OnClick = pM1SmazatClick
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
@@ -0,0 +1,617 @@
|
|||||||
|
unit frmGenKoopObj;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
|
||||||
|
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.ExtCtrls, Data.DB, Vcl.Grids, Vcl.DBGrids, JvExDBGrids,
|
||||||
|
JvDBGrid, RzTabs, Vcl.StdCtrls, RzCmboBx, Vcl.ComCtrls,
|
||||||
|
ddPlugin_TLB, Vcl.Menus;
|
||||||
|
|
||||||
|
type
|
||||||
|
TformGenKoopObj = class(TForm)
|
||||||
|
pnl1: TGridPanel;
|
||||||
|
grdHlavicky: TJvDBGrid;
|
||||||
|
pgCtrl: TRzPageControl;
|
||||||
|
shHlavicky: TRzTabSheet;
|
||||||
|
shNovaObj: TRzTabSheet;
|
||||||
|
btnNovaObj: TButton;
|
||||||
|
btnPrijem: TButton;
|
||||||
|
btnReload: TButton;
|
||||||
|
pnl2: TGridPanel;
|
||||||
|
pnl3: TGridPanel;
|
||||||
|
btnPolUloz: TButton;
|
||||||
|
btnPolSmaz: TButton;
|
||||||
|
GridPanel1: TGridPanel;
|
||||||
|
Label1: TLabel;
|
||||||
|
cbKooperanti: TRzComboBox;
|
||||||
|
Label2: TLabel;
|
||||||
|
dtPozadDodani: TDateTimePicker;
|
||||||
|
btnNovaPol: TButton;
|
||||||
|
edtBarcode: TEdit;
|
||||||
|
grdNovePolozky: TJvDBGrid;
|
||||||
|
lblTypKodu: TLabel;
|
||||||
|
pMenu: TPopupMenu;
|
||||||
|
pM1ZmenaMnoz: TMenuItem;
|
||||||
|
N1: TMenuItem;
|
||||||
|
pM1Smazat: TMenuItem;
|
||||||
|
procedure edtBarcodeExit (Sender: TObject);
|
||||||
|
procedure shNovaObjShow (Sender: TObject);
|
||||||
|
procedure btnNovaPolClick (Sender: TObject);
|
||||||
|
procedure cbKooperantiChange (Sender: TObject);
|
||||||
|
procedure FormShow (Sender: TObject);
|
||||||
|
procedure btnNovaObjClick (Sender: TObject);
|
||||||
|
procedure btnPolSmazClick (Sender: TObject);
|
||||||
|
procedure pM1SmazatClick(Sender: TObject);
|
||||||
|
procedure pM1ZmenaMnozClick(Sender: TObject);
|
||||||
|
procedure btnPolUlozClick(Sender: TObject);
|
||||||
|
strict private
|
||||||
|
function SumPolozkyDleDavky (const idDavky: integer): Extended;
|
||||||
|
function SumPolozkyDlePrikazu (const idPrikaz: integer): Extended;
|
||||||
|
procedure NactiKooperanty;
|
||||||
|
public
|
||||||
|
Helios: IHelios;
|
||||||
|
typObj: integer;
|
||||||
|
end;
|
||||||
|
|
||||||
|
var
|
||||||
|
formGenKoopObj: TformGenKoopObj;
|
||||||
|
jsemKooperace, operUzavrena, skenPrikaz, skipMe: boolean;
|
||||||
|
idDavka, idDavkaRodic, locIDDavka, locIDDavkaSelf, ksNaStrom, dokladPrP: integer;
|
||||||
|
idKoopObj, idPrikaz, idKmen, idOperace, idKoop, idKoopNew, typOper, cOrgKooperant, stavVPr: integer;
|
||||||
|
idKoopObjH: integer;
|
||||||
|
numDavka, kodOp, kodKoop, radaPrikaz, mjDavky, rc, altPrP: string;
|
||||||
|
ksSum, ks, ksZive: Extended;
|
||||||
|
typSkenKod, typDavky: byte;
|
||||||
|
aktCisOrgKoop, aktIdOrgKoop: integer;
|
||||||
|
|
||||||
|
|
||||||
|
implementation
|
||||||
|
uses System.RegularExpressions, System.StrUtils, System.DateUtils,
|
||||||
|
dataMod,
|
||||||
|
helUtils;
|
||||||
|
|
||||||
|
{$R *.dfm}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TformGenKoopObj.NactiKooperanty;
|
||||||
|
var lSQL: string;
|
||||||
|
nazevOrg: string;
|
||||||
|
i, ii, iLoop, cOrg: integer;
|
||||||
|
begin
|
||||||
|
if (idKoop=0) then
|
||||||
|
begin
|
||||||
|
if (idKoopObj>0) then
|
||||||
|
lSQL := 'SELECT o.Nazev, h.CisloOrg FROM ' + tblKoopH + ' h JOIN ' + tblCOrg + ' o ON (o.CisloOrg=h.CisloOrg) WHERE h.ID=' + idKoopObj.ToString
|
||||||
|
else
|
||||||
|
lSQL := 'SELECT k.CisloOrg, o.Nazev FROM ' + dataMod.tblHDCKooperanti + ' k JOIN ' + tblCOrg + ' o ON (o.CisloOrg=k.CisloOrg)'
|
||||||
|
+ ' WHERE o.Stav=0 AND k.Aktivni=1 And k.Typ=1 ORDER BY o.Nazev';
|
||||||
|
|
||||||
|
end // idKoop=0
|
||||||
|
else
|
||||||
|
lSQL := 'IF OBJECT_ID(N''dbo._hdc_TabCKoopCena'', N''U'') IS NOT NULL' + CRLF
|
||||||
|
+ ' SELECT o.Nazev, o.CisloOrg FROM ' + tblCisKoop + ' ck JOIN ' + tblCOrg + ' o ON (o.ID=ck.dodavatel) WHERE o.Stav=0 AND ck.ID=' + idKoop.ToString + CRLF
|
||||||
|
+ ' UNION ALL' + CRLF
|
||||||
|
+ ' SELECT o.Nazev, o.CisloOrg FROM dbo._hdc_TabCKoopCena ckc JOIN ' + tblCOrg + ' o ON (o.CisloOrg=ckc.CisloOrg) WHERE o.Stav=0 AND ckc.IDKooperace=' + idKoop.ToString + CRLF
|
||||||
|
+ ' ELSE' + CRLF
|
||||||
|
+ ' SELECT o.Nazev, o.CisloOrg FROM ' + tblCisKoop + ' ck JOIN ' + tblCOrg + ' o ON (o.ID=ck.dodavatel) WHERE o.Stav=0 AND ck.ID=' + idKoop.ToString;
|
||||||
|
|
||||||
|
i := 0;
|
||||||
|
ii := 0;
|
||||||
|
iLoop := 0;
|
||||||
|
|
||||||
|
cbKooperanti.Items.Clear;
|
||||||
|
if (idKoopObj=0) then
|
||||||
|
cbKooperanti.Items.Add ('-- Vyberte --');
|
||||||
|
|
||||||
|
|
||||||
|
with Helios.OpenSQL (lSQL) do
|
||||||
|
if (RecordCount>0) then
|
||||||
|
begin
|
||||||
|
First;
|
||||||
|
while not(EOF) do
|
||||||
|
begin
|
||||||
|
cOrg := FieldByNameValues('CisloOrg');
|
||||||
|
if (cOrg=cOrgKooperant) then
|
||||||
|
ii := iLoop;
|
||||||
|
nazevOrg := FieldByNameValues('Nazev');
|
||||||
|
cbKooperanti.Items.AddObject (cOrg.ToString + ' - ' + nazevOrg, TKooperant.Create (nazevOrg, cOrg, Helios) );
|
||||||
|
Inc (iLoop);
|
||||||
|
Next;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TformGenKoopObj.pM1SmazatClick (Sender: TObject);
|
||||||
|
begin
|
||||||
|
if Helios.YesNo('Smazat položku?', false) then
|
||||||
|
dataMod.dm.tblInsOperace.Delete;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TformGenKoopObj.pM1ZmenaMnozClick (Sender: TObject);
|
||||||
|
var iBox: string;
|
||||||
|
mn, mnOrig: Extended;
|
||||||
|
begin
|
||||||
|
mnOrig := dataMod.dm.tblInsOperace.FieldByName('Kusy').AsExtended;
|
||||||
|
|
||||||
|
iBox := InputBox('Zmìna množství (bylo ' + mnOrig.ToString + ')', 'Nové množství', mnOrig.ToString);
|
||||||
|
if not(TryStrToFloat(iBox, mn)) then
|
||||||
|
mn := -1;
|
||||||
|
|
||||||
|
if (mn>0) and (mn<=mnOrig) then
|
||||||
|
begin
|
||||||
|
try
|
||||||
|
dataMod.dm.tblInsOperace.Edit;
|
||||||
|
dataMod.dm.tblInsOperace.FieldByName('Kusy').AsExtended := mn;
|
||||||
|
dataMod.dm.tblInsOperace.Post;
|
||||||
|
except
|
||||||
|
dataMod.dm.tblInsOperace.Cancel;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TformGenKoopObj.btnNovaObjClick (Sender: TObject);
|
||||||
|
var lSQL, ozn: string;
|
||||||
|
begin
|
||||||
|
shNovaObj.TabVisible := true;
|
||||||
|
pgCtrl.ActivePage := shNovaObj;
|
||||||
|
shHlavicky.TabVisible := false;
|
||||||
|
self.Invalidate;
|
||||||
|
|
||||||
|
if (idKoopObjH=0) then
|
||||||
|
begin
|
||||||
|
ozn := InputBox('NOVÁ OJEDNÁVKA', 'Vaše oznaèení:', '');
|
||||||
|
lSQL := 'INSERT ' + tblKoopH + ' (TypObj, DeviceID, BlokujeDevice, Oznaceni) SELECT ' + typObj.ToString + ', N' + ('H-' + Helios.LoginName).QuotedString
|
||||||
|
+ ', N' + ('H-' + Helios.LoginName).QuotedString + ', N' + ozn.QuotedString + CRLF + 'SELECT SCOPE_IDENTITY() AS newID';
|
||||||
|
with Helios.OpenSQL (lSQL) do
|
||||||
|
idKoopObjH := FieldByNameValues('newID');
|
||||||
|
end;
|
||||||
|
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TformGenKoopObj.btnNovaPolClick (Sender: TObject);
|
||||||
|
begin
|
||||||
|
typSkenKod := 1;
|
||||||
|
kodOp := '';
|
||||||
|
ks := 0;
|
||||||
|
ksZive := 0;
|
||||||
|
ksSum := 0;
|
||||||
|
idOperace := 0;
|
||||||
|
idPrikaz := 0;;
|
||||||
|
radaPrikaz := '';
|
||||||
|
|
||||||
|
lblTypKodu.Caption := 'Kód DÁVKY / PØÍKAZU';
|
||||||
|
edtBarcode.Visible := true;
|
||||||
|
self.ActiveControl := edtBarcode;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TformGenKoopObj.btnPolSmazClick (Sender: TObject);
|
||||||
|
begin
|
||||||
|
if Helios.YesNo('Opravdu smazat zadané položky ?', false) then
|
||||||
|
begin
|
||||||
|
dataMod.dm.tblInsOperace.EmptyDataSet;
|
||||||
|
edtBarcode.Text := '';
|
||||||
|
cbKooperanti.Clear;
|
||||||
|
cbKooperanti.Enabled := true;
|
||||||
|
self.ActiveControl := dtPozadDodani;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TformGenKoopObj.btnPolUlozClick (Sender: TObject);
|
||||||
|
var lSQL: string;
|
||||||
|
i: integer;
|
||||||
|
idH: integer;
|
||||||
|
begin
|
||||||
|
|
||||||
|
if (dataMod.dm.tblInsOperace.RecordCount>0) then
|
||||||
|
begin
|
||||||
|
// lSQL := 'DECLARE @idH INT' + CRLF + 'INSERT ' + tblKoopH + ' (TypObj, SkenPrikaz, ) '
|
||||||
|
|
||||||
|
dataMod.dm.tblInsOperace.First;
|
||||||
|
while not(dataMod.dm.tblInsOperace.Eof) do
|
||||||
|
begin
|
||||||
|
|
||||||
|
end;
|
||||||
|
end
|
||||||
|
else
|
||||||
|
Helios.Error(#1'Objednávka nemá žádné položky.'#1);
|
||||||
|
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
function TformGenKoopObj.SumPolozkyDleDavky (const idDavky: integer): Extended;
|
||||||
|
begin
|
||||||
|
result := 0;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
function TformGenKoopObj.SumPolozkyDlePrikazu (const idPrikaz: integer): Extended;
|
||||||
|
begin
|
||||||
|
result := 0;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TformGenKoopObj.cbKooperantiChange (Sender: TObject);
|
||||||
|
var k: TKooperant;
|
||||||
|
begin
|
||||||
|
if (cbKooperanti.ItemIndex>-1) then
|
||||||
|
begin
|
||||||
|
k := TKooperant (cbKooperanti.Items.Objects[cbKooperanti.ItemIndex]);
|
||||||
|
aktCisOrgKoop := k.CisloOrg;
|
||||||
|
aktIdOrgKoop := k.IdOrg;
|
||||||
|
end
|
||||||
|
else
|
||||||
|
begin
|
||||||
|
aktCisOrgKoop := -1;
|
||||||
|
aktIdOrgKoop := -1;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TformGenKoopObj.edtBarcodeExit (Sender: TObject);
|
||||||
|
var lSQL, bc: string;
|
||||||
|
canCont: boolean;
|
||||||
|
tempSum1, tempSum2, tempSum3: extended;
|
||||||
|
begin
|
||||||
|
canCont:= true;
|
||||||
|
edtBarcode.Text := edtBarcode.Text.Trim;
|
||||||
|
|
||||||
|
if (edtBarcode.Text<>'') then
|
||||||
|
begin
|
||||||
|
bc := edtBarcode.Text;
|
||||||
|
|
||||||
|
if (typSkenKod=1) then
|
||||||
|
begin
|
||||||
|
if (bc.StartsWith('420')) then
|
||||||
|
begin
|
||||||
|
if not(bc.EndsWith('D')) then
|
||||||
|
bc := bc + 'D';
|
||||||
|
if not(bc.StartsWith('D')) then
|
||||||
|
bc := 'D' + bc;
|
||||||
|
end;
|
||||||
|
|
||||||
|
ksSum := 0;
|
||||||
|
|
||||||
|
idDavka := 0;
|
||||||
|
idDavkaRodic := 0;
|
||||||
|
locIDDavka := 0;
|
||||||
|
locIDDavkaSelf := 0;
|
||||||
|
|
||||||
|
if (bc.StartsWith('V')) and (bc.EndsWith('P')) then
|
||||||
|
begin
|
||||||
|
idPrikaz := TRegEx.Replace(bc.Trim, '\D', '').ToInteger;
|
||||||
|
lSQL := 'SELECT 1 FROM ' + tblVPr + ' WHERE ID=' + idPrikaz.ToString;
|
||||||
|
if not (helUtils.sqlExistsTestGeneral (Helios, lSQL)) then
|
||||||
|
idPrikaz := 0;
|
||||||
|
|
||||||
|
if (idPrikaz>0) then
|
||||||
|
begin
|
||||||
|
if not (helUtils.sqlExistsTestGeneral (Helios, lSQL + ' AND StavPrikazu=30')) then
|
||||||
|
begin
|
||||||
|
Helios.Error (#1'Chyba: '#1 + 'výrobní pøíkaz není ve stavu Zadáno, NELZE použít');
|
||||||
|
idPrikaz := 0;
|
||||||
|
idDavka := 0;
|
||||||
|
end
|
||||||
|
else
|
||||||
|
begin
|
||||||
|
typSkenKod := 2;
|
||||||
|
kodOp := '';
|
||||||
|
ks := 0;
|
||||||
|
ksZive := 0;
|
||||||
|
idOperace := 0;
|
||||||
|
radaPrikaz := '';
|
||||||
|
lblTypKodu.Caption := 'Kód OPERACE';
|
||||||
|
skenPrikaz := true;
|
||||||
|
edtBarcode.Text := '';
|
||||||
|
self.ActiveControl := edtBarcode;
|
||||||
|
end;
|
||||||
|
end; // idPrikaz >0
|
||||||
|
|
||||||
|
end // bc.startsWith V + bc.EndsWith P
|
||||||
|
else
|
||||||
|
begin
|
||||||
|
skenPrikaz := false;
|
||||||
|
if (bc.StartsWith('D420')) and (bc.EndsWith('D')) then
|
||||||
|
begin
|
||||||
|
lSQL := 'SELECT ID, IDRodic FROM ' + dataMod.tblDavky + ' WHERE KodDavky2=N' + bc.QuotedString + ' ORDER BY Pozice';
|
||||||
|
with Helios.OpenSQL (lSQL) do
|
||||||
|
begin
|
||||||
|
locIDDavkaSelf := FieldByNameValues('ID');
|
||||||
|
idDavka := locIDDavkaSelf;
|
||||||
|
idDavkaRodic := FieldByNameValues('IDRodic');
|
||||||
|
locIdDavka := idDavkaRodic;
|
||||||
|
end;
|
||||||
|
|
||||||
|
if (idDavka>0) then
|
||||||
|
begin
|
||||||
|
lSQL := 'SELECT 1 FROM ' + dataMod.tblDavky + ' d JOIN ' + tblVPr + ' p ON (d.IDPrikazVyssiVyssi=p.ID) WHERE p.StavPrikazu<>30 AND d.ID=' + idDavka.ToString;
|
||||||
|
if (helUtils.sqlExistsTestGeneral (Helios, lSQL)) then
|
||||||
|
begin
|
||||||
|
Helios.Error (#1'V dávce se nachází pøedzpracovaný/ukonèený pøíkaz, NELZE použít'#1);
|
||||||
|
idDavka := 0;
|
||||||
|
edtBarcode.Text := '';
|
||||||
|
self.ActiveControl := edtBarcode;
|
||||||
|
end
|
||||||
|
else
|
||||||
|
begin
|
||||||
|
lSQL := 'SELECT CONVERT(nvarchar, DruhDavky) + N''/'' + CONVERT(nvarchar, Rok) + N'' - '' + CONVERT(nvarchar, Cislo) FROM ' + dataMod.tblDavky
|
||||||
|
+ ' WHERE ID=' + helUtils.IfThenInt (idDavkaRodic>0, idDavkaRodic, idDavka).ToString;
|
||||||
|
numDavka := helUtils.getHeliosStrVal (Helios, '', lSQL);
|
||||||
|
kodOp := '';
|
||||||
|
ks := 0;
|
||||||
|
ksZive := 0;
|
||||||
|
ksSum := 0;
|
||||||
|
idOperace := 0;
|
||||||
|
idPrikaz := 0;
|
||||||
|
radaPrikaz := '';
|
||||||
|
|
||||||
|
typSkenKod := 2;
|
||||||
|
edtBarcode.Tag := 2;
|
||||||
|
lblTypKodu.Caption := 'Kód OPERACE';
|
||||||
|
edtBarcode.Text := '';
|
||||||
|
self.ActiveControl := edtBarcode;
|
||||||
|
end;
|
||||||
|
|
||||||
|
end; // idDavka >0
|
||||||
|
|
||||||
|
end; // bc.startsWith D420 + bc.EndsWith D
|
||||||
|
end; // not bc.startsWith V + bc.EndsWith P
|
||||||
|
end // typSkenKod=1
|
||||||
|
else
|
||||||
|
if (typSkenKod=2) then
|
||||||
|
begin
|
||||||
|
if (bc.StartsWith('A')) and (bc.EndsWith('B')) then
|
||||||
|
begin
|
||||||
|
jsemKooperace := false;
|
||||||
|
|
||||||
|
ksSum := 0;
|
||||||
|
ksZive := 0;
|
||||||
|
|
||||||
|
lSQL := 'SELECT p.ID, p.IDPrikaz, p.Kusy_pozadovane-p.KusyVKoop AS kzZive, k.RegCis, vp.RadaPrikaz, p.Doklad, p.Alt, p.IDkooperace, p.typ, k.ID AS idKmen'
|
||||||
|
+ ', ck.Kod AS KodKoop, p.Splneno FROM ' + tblPrPost + ' p JOIN ' + tblVPr + ' vp ON (vp.ID=p.IDPrikaz) JOIN ' + tblKZ + ' k ON (k.ID=vp.IDTabKmen)'
|
||||||
|
+ ' JOIN ' + tblCisKoop + ' ck ON (ck.ID=p.IDKooperace) WHERE p.IDOdchylkyDo IS NULL AND p.Priorita=0 AND p.BarCode=N' + bc.QuotedString;
|
||||||
|
if (idPrikaz>0) then
|
||||||
|
lSQL := lSQL + ' AND p.IDPrikaz=' + idPrikaz.ToString;
|
||||||
|
|
||||||
|
with Helios.OpenSQL(lSQL) do
|
||||||
|
if (RecordCount>0) then
|
||||||
|
begin
|
||||||
|
First;
|
||||||
|
while not(EOF) do
|
||||||
|
begin
|
||||||
|
canCont := true;
|
||||||
|
|
||||||
|
ksZive := FieldByNameValues('kzZive');
|
||||||
|
idKmen := FieldByNameValues('idKmen');
|
||||||
|
typOper := FieldByNameValues('typ');
|
||||||
|
operUzavrena := FieldByNameValues('Splneno');
|
||||||
|
rc := FieldByNameValues('RegCis');
|
||||||
|
radaPrikaz := FieldByNameValues('RadaPrikaz');
|
||||||
|
dokladPrP := FieldByNameValues('Doklad');
|
||||||
|
altPrP := FieldByNameValues('Alt');
|
||||||
|
|
||||||
|
kodKoop := '';
|
||||||
|
idKoop := 0;
|
||||||
|
|
||||||
|
jsemKooperace := (typOper=2);
|
||||||
|
if (jsemKooperace) then
|
||||||
|
begin
|
||||||
|
idKoop := FieldByNameValues('IDkooperace');
|
||||||
|
kodKoop := FieldByNameValues('KodKoop');
|
||||||
|
NactiKooperanty;
|
||||||
|
if (cbKooperanti.Items.Count=2) then
|
||||||
|
begin
|
||||||
|
cbKooperanti.ItemIndex := 1;
|
||||||
|
cbKooperanti.Enabled := false;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
if not(jsemKooperace) then
|
||||||
|
begin
|
||||||
|
Helios.Error (#1'Naskenovaná operace není kooperace nebude do objednávky pøidána'#1);
|
||||||
|
canCont := false;
|
||||||
|
skipMe := true;
|
||||||
|
end;
|
||||||
|
|
||||||
|
if (canCont) and (operUzavrena) then
|
||||||
|
begin
|
||||||
|
Helios.Error (#1'Naskenovaná kooperace je uzavøena, nebude do objednávky pøidána'#1);
|
||||||
|
canCont := false;
|
||||||
|
skipMe := true;
|
||||||
|
end;
|
||||||
|
|
||||||
|
if (canCont) and (ksZive<=0) then
|
||||||
|
begin
|
||||||
|
Helios.Error (#1'Naskenovaná kooperace nemá živé kusy, nebude do objednávky pøidána'#1);
|
||||||
|
canCont := false;
|
||||||
|
skipMe := true;
|
||||||
|
end;
|
||||||
|
|
||||||
|
if (canCont) then
|
||||||
|
begin
|
||||||
|
idOperace := FieldByNameValues('ID'); // idPrPostup
|
||||||
|
if (idPrikaz=0) then
|
||||||
|
idPrikaz := FieldByNameValues('IDPrikaz');
|
||||||
|
|
||||||
|
ksNaStrom := 1;
|
||||||
|
mjDavky := '';
|
||||||
|
|
||||||
|
if (skenPrikaz) then
|
||||||
|
begin
|
||||||
|
lSQL := 'SELECT TOP(1) k.MJEvidence FROM ' + tblVPr + ' p JOIN ' + tblKZ + ' k ON (k.ID=p.IDTabKmen) WHERE p.ID=' + idPrikaz.ToString;
|
||||||
|
mjDavky := helUtils.getHeliosStrVal (Helios, '', lSQL);
|
||||||
|
end
|
||||||
|
else
|
||||||
|
begin
|
||||||
|
mjDavky := helUtils.getHeliosStrVal (Helios, '', 'SELECT TOP(1) MJ FROM ' + tblDavky + ' WHERE ID=' + helUtils.IfThenInt (idDavkaRodic>0, idDavkaRodic, idDavka).ToString);
|
||||||
|
ksZive := helUtils.getHeliosFloatVal (Helios, 0, 'SELECT SUM(Mnozstvi-MnozstviVKoop) FROM ' + tblDavky + ' WHERE IDDavkyHlavni=' + idDavka.ToString);
|
||||||
|
end;
|
||||||
|
|
||||||
|
if (mjDavky.ToLower='str') then
|
||||||
|
ksNaStrom := helUtils.getHeliosIntVal (Helios, 0, 'SELECT ISNULL(dbo.ef_HDC_PocetKsNaStromek (' + idKmen.ToString + ', NULL, NULL, NULL, NULL), 0)');
|
||||||
|
|
||||||
|
|
||||||
|
if not(skenPrikaz) then
|
||||||
|
ksZive := helUtils.getHeliosFloatVal (Helios, 0, 'SELECT SUM(MnozstviKs-OdvedenoKs-MnozstviVKoop) FROM ' + tblDavky + ' WHERE IDDavkyHlavni=' + idDavka.ToString);
|
||||||
|
|
||||||
|
if (ksZive<=0) and not(skenPrikaz) then
|
||||||
|
begin
|
||||||
|
Helios.Error ('V dávce '#1 + numDavka + #1 + ' nezbývají na tuto operaci kusy.');
|
||||||
|
edtBarcode.Text := '';
|
||||||
|
canCont := false;
|
||||||
|
skipMe := true;
|
||||||
|
end
|
||||||
|
else
|
||||||
|
begin
|
||||||
|
if not(skenPrikaz) then
|
||||||
|
begin
|
||||||
|
lSQL := 'SELECT p.StavPrikazu FROM ' + tblVPr + ' p JOIN ' + tblDavky + ' d ON (d.IDPrikaz=p.ID) WHERE d.IDDavkyHlavni=' + idDavka.ToString;
|
||||||
|
stavVPr := helUtils.getHeliosIntVal (Helios, 0, lSQL);
|
||||||
|
if (stavVPr<>30) then
|
||||||
|
canCont := false;
|
||||||
|
end;
|
||||||
|
|
||||||
|
if not(canCont) then
|
||||||
|
begin
|
||||||
|
Helios.Error (#1'Ne všechny pøíkazy této dávky jsou ve stavu Zadáno, NELZE pokraèovat.'#1);
|
||||||
|
edtBarcode.Text := '';
|
||||||
|
skipMe := true;
|
||||||
|
end
|
||||||
|
else
|
||||||
|
begin
|
||||||
|
if (idKoopNew=0) and (idKoop>0) then
|
||||||
|
idKoopNew := idKoop;
|
||||||
|
|
||||||
|
radaPrikaz := helUtils.getHeliosStrVal (Helios, '', 'SELECT RadaPrikaz FROM ' + tblVPr + ' WHERE ID=' + idPrikaz.ToString);
|
||||||
|
|
||||||
|
typDavky := 0;
|
||||||
|
if (radaPrikaz.StartsWith('224')) then
|
||||||
|
typDavky := 4;
|
||||||
|
|
||||||
|
if not(skenPrikaz) then
|
||||||
|
tempSum3 := SumPolozkyDleDavky (locIDDavkaSelf)
|
||||||
|
else
|
||||||
|
tempSum3 := SumPolozkyDlePrikazu (idPrikaz);
|
||||||
|
|
||||||
|
skipMe := false;
|
||||||
|
|
||||||
|
lSQL := 'SELECT SUM(Kusy_pozadovane-KusyVKoop)-' + tempSum3.ToString.Replace(',', '.') + ' FROM ' + tblPrPost + ' WHERE IDOdchylkyDo IS NULL AND Typ=2';
|
||||||
|
if not(skenPrikaz) then
|
||||||
|
lSQL := lSQL + ' AND IDPrikaz IN (SELECT IDPrikazVyssiVyssi FROM ' + tblDavky + ' WHERE DruhDavky=4 And IDDavkyHlavni=' + idDavka.ToString + ')'
|
||||||
|
else
|
||||||
|
lSQL := lSQL + ' AND IDPrikaz=' + idPrikaz.ToString + ' AND ID=' + idOperace.ToString;
|
||||||
|
lSQL := lSQL + ' AND IDkooperace=' + idKoop.ToString;
|
||||||
|
|
||||||
|
|
||||||
|
if not(skipMe) then
|
||||||
|
begin
|
||||||
|
if not(dataMod.dm.tblKoopObjR.Active) then
|
||||||
|
dataMod.dm.tblKoopObjR.Open;
|
||||||
|
|
||||||
|
if not(dataMod.dm.tblInsOperace.Active) then
|
||||||
|
dataMod.dm.tblInsOperace.Open;
|
||||||
|
dataMod.dm.tblInsOperace.Append;
|
||||||
|
try
|
||||||
|
try
|
||||||
|
dataMod.dm.tblInsOperace.FieldByName('IdPrPostup').AsInteger := idOperace;
|
||||||
|
dataMod.dm.tblInsOperace.FieldByName('IDVPr').AsInteger := idPrikaz;
|
||||||
|
dataMod.dm.tblInsOperace.FieldByName('Kusy').AsExtended := ksZive;
|
||||||
|
dataMod.dm.tblInsOperace.FieldByName('RegCis').AsString := rc;
|
||||||
|
dataMod.dm.tblInsOperace.FieldByName('RadaPrikaz').AsString := radaPrikaz;
|
||||||
|
dataMod.dm.tblInsOperace.FieldByName('Doklad').AsInteger := dokladPrP;
|
||||||
|
dataMod.dm.tblInsOperace.FieldByName('Alt').AsString := altPrP;
|
||||||
|
dataMod.dm.tblInsOperace.FieldByName('KsNaStr').AsInteger := ksNaStrom;
|
||||||
|
dataMod.dm.tblInsOperace.FieldByName('IDDavka').AsInteger := idDavka;
|
||||||
|
dataMod.dm.tblInsOperace.FieldByName('IDDavkaRodic').AsInteger := idDavkaRodic;
|
||||||
|
dataMod.dm.tblInsOperace.FieldByName('IDKooperace').AsInteger := idKoop;
|
||||||
|
dataMod.dm.tblInsOperace.FieldByName('KodKoop').AsString := kodKoop;
|
||||||
|
dataMod.dm.tblInsOperace.Post;
|
||||||
|
edtBarcode.Text := '';
|
||||||
|
lblTypKodu.Caption := '';
|
||||||
|
except
|
||||||
|
dataMod.dm.tblInsOperace.Cancel;
|
||||||
|
end;
|
||||||
|
finally
|
||||||
|
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
end;
|
||||||
|
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
Next;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
end; // bc.startsWith A + bc.EndsWith B
|
||||||
|
end; // typSkenKod=2
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
end; // edtBarcode.Text
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TformGenKoopObj.FormShow (Sender: TObject);
|
||||||
|
begin
|
||||||
|
pgCtrl.ActivePage := shHlavicky;
|
||||||
|
shNovaObj.TabVisible := false;
|
||||||
|
|
||||||
|
if not(dataMod.dm.tblKoopObjH.Active) then
|
||||||
|
dataMod.dm.tblKoopObjH.Open;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TformGenKoopObj.shNovaObjShow (Sender: TObject);
|
||||||
|
begin
|
||||||
|
typSkenKod := 1;
|
||||||
|
cOrgKooperant := -1;
|
||||||
|
dtPozadDodani.Date := IncDay (DateOf(Now), 1);
|
||||||
|
self.ActiveControl := dtPozadDodani;
|
||||||
|
edtBarcode.Visible := false;
|
||||||
|
end;
|
||||||
|
|
||||||
|
end.
|
||||||
+5
-3
@@ -92,11 +92,12 @@ uses System.StrUtils, helUtils;
|
|||||||
idKZ, idKZsub: integer;
|
idKZ, idKZsub: integer;
|
||||||
genVob, genVod: Boolean;
|
genVob, genVod: Boolean;
|
||||||
i: integer;
|
i: integer;
|
||||||
|
wF: TForm;
|
||||||
begin
|
begin
|
||||||
lSQL:= Testy;
|
lSQL:= Testy;
|
||||||
if (lSQL='') then
|
if (lSQL='') then
|
||||||
begin
|
begin
|
||||||
waitStart(self, 'Generování karet...', 1, $0000FF );
|
wF := helUtils.waitStart (self, 'Generování karet...', 1, $0000FF, true);
|
||||||
x := '';
|
x := '';
|
||||||
|
|
||||||
lSQL := 'IF OBJECT_ID(N''dbo._temp_TabGenKartySTPV'') IS NOT NULL DELETE FROM dbo._temp_TabGenKartySTPV WHERE Autor=SUSER_SNAME()' + CRLF;
|
lSQL := 'IF OBJECT_ID(N''dbo._temp_TabGenKartySTPV'') IS NOT NULL DELETE FROM dbo._temp_TabGenKartySTPV WHERE Autor=SUSER_SNAME()' + CRLF;
|
||||||
@@ -128,11 +129,12 @@ uses System.StrUtils, helUtils;
|
|||||||
Close;
|
Close;
|
||||||
except on E:Exception do
|
except on E:Exception do
|
||||||
begin
|
begin
|
||||||
waitEnd;
|
waitEnd (wF);
|
||||||
Helios.Error (#1 + 'CHYBA: ' + #1 + E.Message);
|
Helios.Error (#1 + 'CHYBA: ' + #1 + E.Message);
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
waitEnd;
|
if Assigned(wF) then
|
||||||
|
waitEnd (wF);
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
Helios.Error (#1 + 'CHYBA: ' + #1 + lSQL);
|
Helios.Error (#1 + 'CHYBA: ' + #1 + lSQL);
|
||||||
|
|||||||
+20
-17
@@ -102,6 +102,7 @@ uses System.StrUtils, System.DateUtils, System.UITypes,
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
function TaskDlgYesNo (titulek, nadpis, textX: string; ikona: byte; defBtn: TTaskDialogCommonButton): System.UITypes.TModalResult;
|
function TaskDlgYesNo (titulek, nadpis, textX: string; ikona: byte; defBtn: TTaskDialogCommonButton): System.UITypes.TModalResult;
|
||||||
begin
|
begin
|
||||||
with TTaskDialog.Create(nil) do
|
with TTaskDialog.Create(nil) do
|
||||||
@@ -124,7 +125,6 @@ uses System.StrUtils, System.DateUtils, System.UITypes,
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
procedure TformOOPPohyb.DotazNaUkonceni;
|
procedure TformOOPPohyb.DotazNaUkonceni;
|
||||||
begin
|
begin
|
||||||
if ((TaskDlgYesNo('', 'Chcete ukončit zadávání ?', '(data nebudou uložena)', tdiInformation, tcbNo))=mrYes) then
|
if ((TaskDlgYesNo('', 'Chcete ukončit zadávání ?', '(data nebudou uložena)', tdiInformation, tcbNo))=mrYes) then
|
||||||
@@ -149,8 +149,7 @@ uses System.StrUtils, System.DateUtils, System.UITypes,
|
|||||||
if (idProf>0) then
|
if (idProf>0) then
|
||||||
begin
|
begin
|
||||||
edtProfese.Text := helUtils.getHeliosStrVal(Helios, '', 'SELECT Profese FROM ' + tblOOPProfese + ' WHERE ID=' + idProf.ToString);
|
edtProfese.Text := helUtils.getHeliosStrVal(Helios, '', 'SELECT Profese FROM ' + tblOOPProfese + ' WHERE ID=' + idProf.ToString);
|
||||||
if (edtDatum.CanFocus) then
|
self.ActiveControl := edtDatum;
|
||||||
edtDatum.SetFocus;
|
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
edtProfese.Text := '';
|
edtProfese.Text := '';
|
||||||
@@ -175,6 +174,7 @@ uses System.StrUtils, System.DateUtils, System.UITypes,
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
procedure TformOOPPohyb.btnOKClick (Sender: TObject);
|
procedure TformOOPPohyb.btnOKClick (Sender: TObject);
|
||||||
var lSQL: string;
|
var lSQL: string;
|
||||||
begin
|
begin
|
||||||
@@ -189,15 +189,16 @@ uses System.StrUtils, System.DateUtils, System.UITypes,
|
|||||||
else
|
else
|
||||||
begin
|
begin
|
||||||
TaskDlgOK ('POZOR', 'CHYBA', 'Nebyly zadány všechny potřebné informace.', tdiWarning);
|
TaskDlgOK ('POZOR', 'CHYBA', 'Nebyly zadány všechny potřebné informace.', tdiWarning);
|
||||||
if (idPolozka=0) and (edtPolozka.CanFocus) then
|
if (idPolozka=0) then
|
||||||
edtPolozka.SetFocus;
|
self.ActiveControl := edtPolozka;
|
||||||
if (cisZam=0) and (edtOsCislo.CanFocus) then
|
if (cisZam=0) then
|
||||||
edtOsCislo.SetFocus;
|
self.ActiveControl := edtOsCislo;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
procedure TformOOPPohyb.btnStornoClick (Sender: TObject);
|
procedure TformOOPPohyb.btnStornoClick (Sender: TObject);
|
||||||
begin
|
begin
|
||||||
Close;
|
Close;
|
||||||
@@ -205,6 +206,7 @@ uses System.StrUtils, System.DateUtils, System.UITypes,
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
procedure TformOOPPohyb.edtOsCisloButtonClick (Sender: TObject);
|
procedure TformOOPPohyb.edtOsCisloButtonClick (Sender: TObject);
|
||||||
var c: integer;
|
var c: integer;
|
||||||
podm: string;
|
podm: string;
|
||||||
@@ -222,8 +224,7 @@ uses System.StrUtils, System.DateUtils, System.UITypes,
|
|||||||
c := 0;
|
c := 0;
|
||||||
cisZam := c;
|
cisZam := c;
|
||||||
if (NactiUdajeZamestnance(cisZam)) then
|
if (NactiUdajeZamestnance(cisZam)) then
|
||||||
if (edtProfese.CanFocus) then
|
self.ActiveControl := edtProfese;
|
||||||
edtProfese.SetFocus;
|
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
cisZam := 0;
|
cisZam := 0;
|
||||||
@@ -239,6 +240,7 @@ uses System.StrUtils, System.DateUtils, System.UITypes,
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
procedure TformOOPPohyb.edtOsCisloExit (Sender: TObject);
|
procedure TformOOPPohyb.edtOsCisloExit (Sender: TObject);
|
||||||
var lSQL: string;
|
var lSQL: string;
|
||||||
c: integer;
|
c: integer;
|
||||||
@@ -272,8 +274,7 @@ uses System.StrUtils, System.DateUtils, System.UITypes,
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
if (NactiUdajeZamestnance(cisZam)) then
|
if (NactiUdajeZamestnance(cisZam)) then
|
||||||
if (edtProfese.CanFocus) then
|
self.ActiveControl := edtProfese;
|
||||||
edtProfese.SetFocus;
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
if (edtOsCislo.Modified) then
|
if (edtOsCislo.Modified) then
|
||||||
@@ -437,14 +438,14 @@ uses System.StrUtils, System.DateUtils, System.UITypes,
|
|||||||
polozkaNum := '';
|
polozkaNum := '';
|
||||||
edtPolozka.Text := '';
|
edtPolozka.Text := '';
|
||||||
edtPolozkaText.Text := '';
|
edtPolozkaText.Text := '';
|
||||||
if (edtPolozka.CanFocus) then
|
self.ActiveControl := edtPolozka;
|
||||||
edtPolozka.SetFocus;
|
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
procedure TformOOPPohyb.edtPolozkaButtonClick (Sender: TObject);
|
procedure TformOOPPohyb.edtPolozkaButtonClick (Sender: TObject);
|
||||||
var podm: string;
|
var podm: string;
|
||||||
begin
|
begin
|
||||||
@@ -475,6 +476,7 @@ uses System.StrUtils, System.DateUtils, System.UITypes,
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
procedure TformOOPPohyb.edtPolozkaExit (Sender: TObject);
|
procedure TformOOPPohyb.edtPolozkaExit (Sender: TObject);
|
||||||
begin
|
begin
|
||||||
edtPolozka.Text := edtPolozka.Text.Trim;
|
edtPolozka.Text := edtPolozka.Text.Trim;
|
||||||
@@ -526,13 +528,13 @@ uses System.StrUtils, System.DateUtils, System.UITypes,
|
|||||||
c := 0;
|
c := 0;
|
||||||
cisZam := c;
|
cisZam := c;
|
||||||
if (NactiUdajeZamestnance(cisZam)) then
|
if (NactiUdajeZamestnance(cisZam)) then
|
||||||
if (edtProfese.CanFocus) then
|
self.ActiveControl := edtProfese;
|
||||||
edtProfese.SetFocus;
|
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
procedure TformOOPPohyb.edtProfeseButtonClick (Sender: TObject);
|
procedure TformOOPPohyb.edtProfeseButtonClick (Sender: TObject);
|
||||||
var lSQL, podm: string;
|
var lSQL, podm: string;
|
||||||
c: integer;
|
c: integer;
|
||||||
@@ -561,13 +563,13 @@ uses System.StrUtils, System.DateUtils, System.UITypes,
|
|||||||
profese := profese.Substring(0, Length(profese)-1);
|
profese := profese.Substring(0, Length(profese)-1);
|
||||||
end;
|
end;
|
||||||
edtProfese.Text := profese;
|
edtProfese.Text := profese;
|
||||||
if (edtDatum.CanFocus) then
|
self.ActiveControl := edtDatum;
|
||||||
edtDatum.SetFocus;
|
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
procedure TformOOPPohyb.edtStrediskoButtonClick (Sender: TObject);
|
procedure TformOOPPohyb.edtStrediskoButtonClick (Sender: TObject);
|
||||||
begin
|
begin
|
||||||
if (Helios.Prenos(bidCisZam, 'TabCisZam.Cislo', oVar1, '', 'Zaměstnanec', true)) then
|
if (Helios.Prenos(bidCisZam, 'TabCisZam.Cislo', oVar1, '', 'Zaměstnanec', true)) then
|
||||||
@@ -582,6 +584,7 @@ uses System.StrUtils, System.DateUtils, System.UITypes,
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
procedure TformOOPPohyb.FormShow (Sender: TObject);
|
procedure TformOOPPohyb.FormShow (Sender: TObject);
|
||||||
begin
|
begin
|
||||||
bidOOPProfese := helUtils.getHeliosIntVal (Helios, 0, 'SELECT DPBID FROM ' + tblObecPrehled + ' WHERE NazevSys=N''hvw_TabOOP_Profese''');
|
bidOOPProfese := helUtils.getHeliosIntVal (Helios, 0, 'SELECT DPBID FROM ' + tblObecPrehled + ' WHERE NazevSys=N''hvw_TabOOP_Profese''');
|
||||||
|
|||||||
+1
-1
@@ -79,7 +79,7 @@ object formOdvTavby: TformOdvTavby
|
|||||||
Top = 87
|
Top = 87
|
||||||
Width = 467
|
Width = 467
|
||||||
Height = 540
|
Height = 540
|
||||||
ActivePage = shOdvStr
|
ActivePage = shTavba
|
||||||
Anchors = [akLeft, akTop, akRight]
|
Anchors = [akLeft, akTop, akRight]
|
||||||
TabOrder = 3
|
TabOrder = 3
|
||||||
object shTavba: TTabSheet
|
object shTavba: TTabSheet
|
||||||
|
|||||||
+73
-8
@@ -1197,7 +1197,7 @@ uses System.DateUtils, System.AnsiStrings, helUtils;
|
|||||||
btnOKNew.Enabled:= false;
|
btnOKNew.Enabled:= false;
|
||||||
btnOK.Enabled:= false;
|
btnOK.Enabled:= false;
|
||||||
Helios.Error(#1'Na operaci nezbývají žádné kusy k odvedení !!'#1);
|
Helios.Error(#1'Na operaci nezbývají žádné kusy k odvedení !!'#1);
|
||||||
with Helios.OpenSQL('SELECT Doklad, Alt FROM ' + tblPrPost + ' WHERE IdOdchylkyDo IS NULL AND ID1=' + idVOp.ToString) do
|
with Helios.OpenSQL('SELECT Doklad, Alt FROM ' + tblPrPost + ' WHERE IdOdchylkyDo IS NULL AND ID=' + idVOp.ToString) do
|
||||||
begin
|
begin
|
||||||
doklad:= VarToStr(FieldValues(0));
|
doklad:= VarToStr(FieldValues(0));
|
||||||
alt:= VarToStr(FieldValues(1));
|
alt:= VarToStr(FieldValues(1));
|
||||||
@@ -1208,7 +1208,7 @@ uses System.DateUtils, System.AnsiStrings, helUtils;
|
|||||||
end
|
end
|
||||||
else
|
else
|
||||||
begin
|
begin
|
||||||
idVPr:= helUtils.getHeliosIntVal(Helios, 0, 'SELECT IDPrikaz FROM ' + tblPrPost + ' WHERE IDOdchylkyDo IS NULL AND ID1=' + idVOp.ToString);
|
idVPr:= helUtils.getHeliosIntVal(Helios, 0, 'SELECT IDPrikaz FROM ' + tblPrPost + ' WHERE IDOdchylkyDo IS NULL AND ID=' + idVOp.ToString);
|
||||||
NactiPrikaz;
|
NactiPrikaz;
|
||||||
edtTavbaV.SetFocus;
|
edtTavbaV.SetFocus;
|
||||||
end;
|
end;
|
||||||
@@ -1793,9 +1793,9 @@ uses System.DateUtils, System.AnsiStrings, helUtils;
|
|||||||
|
|
||||||
|
|
||||||
procedure TformOdvTavby.NactiPrikaz;
|
procedure TformOdvTavby.NactiPrikaz;
|
||||||
var lSQL, skl, eMsg, prac, rc: string;
|
var lSQL, skl, eMsg, prac, rc, bc: string;
|
||||||
z, k: Extended;
|
z, k: Extended;
|
||||||
idKZ: integer;
|
idKZ, cnt: integer;
|
||||||
canCont, pracOK: boolean;
|
canCont, pracOK: boolean;
|
||||||
begin
|
begin
|
||||||
prik.id:= 0;
|
prik.id:= 0;
|
||||||
@@ -1805,12 +1805,14 @@ uses System.DateUtils, System.AnsiStrings, helUtils;
|
|||||||
prik.sklad:= '';
|
prik.sklad:= '';
|
||||||
prik.stav:= 0;
|
prik.stav:= 0;
|
||||||
prik.mamP30:= false;
|
prik.mamP30:= false;
|
||||||
|
bc:= 'A' + idVOp.ToString + 'B';
|
||||||
|
|
||||||
if (idVPr>0) then
|
if (idVPr>0) then
|
||||||
begin
|
begin
|
||||||
skl:= helUtils.getHeliosStrVal(Helios, '', 'SELECT Sklad FROM ' + tblPrikaz + ' WHERE ID=' + idVPr.ToString);
|
skl:= helUtils.getHeliosStrVal(Helios, '', 'SELECT Sklad FROM ' + tblPrikaz + ' WHERE ID=' + idVPr.ToString);
|
||||||
|
prac:= '';
|
||||||
|
|
||||||
lSQL:= 'SELECT k.RegCis, k.Nazev1, p.RadaPrikaz, CASE WHEN ISNULL(o.MamMatecniOdlitek,0)=1 THEN ISNULL(o1.KSnaStrom,0) ELSE ISNULL(o.KSnaStrom,0) END';
|
lSQL:= 'SELECT k.RegCis, k.Nazev1, p.RadaPrikaz, CASE WHEN ISNULL(o.MamMatecniOdlitek,0)=1 THEN ISNULL(o1.KSnaStrom,0) ELSE ISNULL(o.KSnaStrom,0) END AS KsNaStr';
|
||||||
lSQL:= lSQL + ', k.ID, p.StavPrikazu, k.SkupZbo FROM ' + tblPrikaz + ' p INNER JOIN ' + tblKZ + ' k ON (k.ID=p.IDTabKmen)';
|
lSQL:= lSQL + ', k.ID, p.StavPrikazu, k.SkupZbo FROM ' + tblPrikaz + ' p INNER JOIN ' + tblKZ + ' k ON (k.ID=p.IDTabKmen)';
|
||||||
lSQL:= lSQL + ' LEFT JOIN ' + tblOdlitky + ' o ON (k.RegCis=o.Odlitek) LEFT JOIN ' + tblOdlitky + ' o1 ON (o1.Odlitek=o.MatecniOdlitek)';
|
lSQL:= lSQL + ' LEFT JOIN ' + tblOdlitky + ' o ON (k.RegCis=o.Odlitek) LEFT JOIN ' + tblOdlitky + ' o1 ON (o1.Odlitek=o.MatecniOdlitek)';
|
||||||
lSQL:= lSQL + ' WHERE p.ID=' + idVPr.ToString;
|
lSQL:= lSQL + ' WHERE p.ID=' + idVPr.ToString;
|
||||||
@@ -1831,8 +1833,70 @@ uses System.DateUtils, System.AnsiStrings, helUtils;
|
|||||||
if (idVOp>0) and (pgCtrl.ActivePageIndex=shTavba.PageIndex) or (pgCtrl.ActivePageIndex=shVibrovani.PageIndex) or (pgCtrl.ActivePageIndex=shOdvStr.PageIndex) then
|
if (idVOp>0) and (pgCtrl.ActivePageIndex=shTavba.PageIndex) or (pgCtrl.ActivePageIndex=shVibrovani.PageIndex) or (pgCtrl.ActivePageIndex=shOdvStr.PageIndex) then
|
||||||
begin
|
begin
|
||||||
canCont:= (lblOperace.Caption<>'');
|
canCont:= (lblOperace.Caption<>'');
|
||||||
lSQL:= 'SELECT p.Pracoviste FROM ' + tblPrPost + ' o INNER JOIN ' + tblCPrac + ' p ON (o.pracoviste=p.ID) WHERE o.ID=' + idVOp.ToString;
|
|
||||||
|
lSQL:= 'SELECT COUNT(ID) FROM ' + tblPrPost + ' WHERE BarCode=N' + bc.QuotedString;
|
||||||
|
cnt:= helUtils.getHeliosIntVal (Helios, 0, lSQL);
|
||||||
|
if (cnt=0) then
|
||||||
|
begin
|
||||||
|
lSQL:= 'SELECT p.Pracoviste FROM ' + tblPrPost + ' o WITH(NOLOCK) JOIN ' + tblCPrac + ' p WITH(NOLOCK) ON (p.ID=o.pracoviste) WHERE o.ID=' + idVOp.ToString;
|
||||||
prac:= helUtils.getHeliosStrVal (Helios, '', lSQL);
|
prac:= helUtils.getHeliosStrVal (Helios, '', lSQL);
|
||||||
|
end;
|
||||||
|
if (cnt=1) then
|
||||||
|
begin
|
||||||
|
idVOp:= helUtils.getHeliosIntVal (Helios, 0, 'SELECT ID FROM ' + tblPrPost + ' WHERE BarCode=N' + bc.QuotedString);
|
||||||
|
if (idVOp>0) then
|
||||||
|
begin
|
||||||
|
lSQL:= 'SELECT p.Pracoviste FROM ' + tblPrPost + ' o WITH(NOLOCK) JOIN ' + tblCPrac + ' p WITH(NOLOCK) ON (p.ID=o.pracoviste) WHERE o.ID=' + idVOp.ToString;
|
||||||
|
prac:= helUtils.getHeliosStrVal (Helios, '', lSQL);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
if (cnt>1) then
|
||||||
|
begin
|
||||||
|
idVOp:= helUtils.getHeliosIntVal (Helios, 0, 'SELECT TOP(1) ID FROM ' + tblPrPost + ' WHERE BarCode=N' + bc.QuotedString
|
||||||
|
+ ' AND IDOdchylkyDo IS NULL AND Priorita=0 ORDER BY ID DESC');
|
||||||
|
if (idVOp>0) then
|
||||||
|
begin
|
||||||
|
lSQL:= 'SELECT p.Pracoviste FROM ' + tblPrPost + ' o WITH(NOLOCK) JOIN ' + tblCPrac + ' p WITH(NOLOCK) ON (p.ID=o.pracoviste) WHERE o.ID=' + idVOp.ToString;
|
||||||
|
prac:= helUtils.getHeliosStrVal (Helios, '', lSQL);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
if (prac='') then
|
||||||
|
begin
|
||||||
|
lSQL:= 'SELECT COUNT(o.ID) AS Pocet FROM ' + tblPrPost + ' o WITH(NOLOCK) JOIN ' + tblCPrac + ' p WITH(NOLOCK) ON (p.ID=o.pracoviste) WHERE o.Barcode=N'
|
||||||
|
+ ('A' + idVOp.ToString + 'B').QuotedString;
|
||||||
|
cnt:= helUtils.getHeliosIntVal (Helios, 0, lSQL);
|
||||||
|
if (cnt=1) then
|
||||||
|
begin
|
||||||
|
lSQL:= 'SELECT p.Pracoviste FROM ' + tblPrPost + ' o JOIN ' + tblCPrac + ' p WITH(NOLOCK) ON (p.ID=o.pracoviste) WHERE o.Barcode=N' + ('A' + idVOp.ToString + 'B').QuotedString;
|
||||||
|
prac:= helUtils.getHeliosStrVal (Helios, '', lSQL);
|
||||||
|
end;
|
||||||
|
if (cnt>1) then
|
||||||
|
begin
|
||||||
|
lSQL:= 'SELECT TOP(1) p.Pracoviste FROM ' + tblPrPost + ' o JOIN ' + tblCPrac + ' p WITH(NOLOCK) ON (p.ID=o.pracoviste) WHERE o.Barcode=N'
|
||||||
|
+ ('A' + idVOp.ToString + 'B').QuotedString + ' AND o.IDOdchylkyDo IS NULL AND o.Priorita=0 ORDER BY o.DatPorizeni DESC';
|
||||||
|
prac:= helUtils.getHeliosStrVal (Helios, '', lSQL);
|
||||||
|
end;
|
||||||
|
if (prac='') then
|
||||||
|
begin
|
||||||
|
lSQL:= 'SELECT COUNT(o.ID) AS Pocet FROM ' + tblPrPost + ' o WITH(NOLOCK) JOIN ' + tblCPrac + ' p WITH(NOLOCK) ON (p.ID=o.pracoviste) WHERE o.ID1=' + idVOp.ToString;
|
||||||
|
cnt:= helUtils.getHeliosIntVal (Helios, 0, lSQL);
|
||||||
|
if (cnt=1) then
|
||||||
|
begin
|
||||||
|
lSQL:= 'SELECT p.Pracoviste FROM ' + tblPrPost + ' o WITH(NOLOCK) JOIN ' + tblCPrac + ' p WITH(NOLOCK) ON (p.ID=o.pracoviste) WHERE o.ID1=' + idVOp.ToString;
|
||||||
|
prac:= helUtils.getHeliosStrVal(Helios, '', lSQL);
|
||||||
|
end;
|
||||||
|
if (cnt>1) then
|
||||||
|
begin
|
||||||
|
lSQL:= 'SELECT TOP(1) p.Pracoviste FROM ' + tblPrPost + ' o WITH(NOLOCK) JOIN ' + tblCPrac + ' p WITH(NOLOCK) ON (p.ID=o.pracoviste) WHERE o.ID1=' + idVOp.ToString
|
||||||
|
+ ' ORDER BY o.DatPorizeni DESC';
|
||||||
|
prac:= helUtils.getHeliosStrVal(Helios, '', lSQL);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
// T09/T11 - tavba
|
// T09/T11 - tavba
|
||||||
pracOK:= (prac='T11') or (prac='T09');
|
pracOK:= (prac='T11') or (prac='T09');
|
||||||
@@ -1845,6 +1909,7 @@ uses System.DateUtils, System.AnsiStrings, helUtils;
|
|||||||
Helios.Error(#1 + rc + ': Naskenovaná operace ' + idVOp.ToString + ' není ODLÉVÁNÍ.'#1);
|
Helios.Error(#1 + rc + ': Naskenovaná operace ' + idVOp.ToString + ' není ODLÉVÁNÍ.'#1);
|
||||||
edtOpTavba.Text:= '';
|
edtOpTavba.Text:= '';
|
||||||
end;
|
end;
|
||||||
|
|
||||||
// T12 - vibrace nebo T15 - rucni
|
// T12 - vibrace nebo T15 - rucni
|
||||||
pracOK:= (prac='T12') or (prac='T13') or (prac='T15');
|
pracOK:= (prac='T12') or (prac='T13') or (prac='T15');
|
||||||
if (pgCtrl.ActivePageIndex=shVibrovani.PageIndex) and not(pracOK) then
|
if (pgCtrl.ActivePageIndex=shVibrovani.PageIndex) and not(pracOK) then
|
||||||
@@ -1863,7 +1928,7 @@ uses System.DateUtils, System.AnsiStrings, helUtils;
|
|||||||
|
|
||||||
if (canCont) then
|
if (canCont) then
|
||||||
begin
|
begin
|
||||||
if not TryStrToFloat(VarToStr(FieldValues(3)), k) then
|
if not TryStrToFloat(VarToStr(FieldByNameValues('KsNaStr')), k) then
|
||||||
k:= 0;
|
k:= 0;
|
||||||
lblKsStrom.Caption:= k.ToString + ' ks/str';
|
lblKsStrom.Caption:= k.ToString + ' ks/str';
|
||||||
ksStr:= k;
|
ksStr:= k;
|
||||||
@@ -1871,7 +1936,7 @@ uses System.DateUtils, System.AnsiStrings, helUtils;
|
|||||||
if (idVOp>0) then
|
if (idVOp>0) then
|
||||||
begin
|
begin
|
||||||
z:= helUtils.getHeliosFloatVal(Helios, 0, 'SELECT kusy_zad FROM ' + tblPrPost + ' WHERE ID=' + idVOp.ToString);
|
z:= helUtils.getHeliosFloatVal(Helios, 0, 'SELECT kusy_zad FROM ' + tblPrPost + ' WHERE ID=' + idVOp.ToString);
|
||||||
lSQL:= 'SELECT ISNULL(SUM(m.kusy_odv + m.kusy_zmet_neopr),0) FROM ' + tblMzdZm + ' m INNER JOIN ' + tblPrPost + ' p ON (p.IDPrikaz=m.IDPrikaz AND ';
|
lSQL:= 'SELECT ISNULL(SUM(m.kusy_odv + m.kusy_zmet_neopr),0) FROM ' + tblMzdZm + ' m JOIN ' + tblPrPost + ' p ON (p.IDPrikaz=m.IDPrikaz AND ';
|
||||||
lSQL:= lSQL + 'm.DokladPrPostup=p.Doklad AND ISNULL(m.AltPrPostup,N''Q'')=ISNULL(p.Alt,N''Q'')) WHERE p.ID=' + idVOp.ToString;
|
lSQL:= lSQL + 'm.DokladPrPostup=p.Doklad AND ISNULL(m.AltPrPostup,N''Q'')=ISNULL(p.Alt,N''Q'')) WHERE p.ID=' + idVOp.ToString;
|
||||||
z:= z-helUtils.getHeliosFloatVal(Helios, 0, lSQL);
|
z:= z-helUtils.getHeliosFloatVal(Helios, 0, lSQL);
|
||||||
end;
|
end;
|
||||||
|
|||||||
@@ -687,6 +687,7 @@ object formSchvaleniZak: TformSchvaleniZak
|
|||||||
Size = 50
|
Size = 50
|
||||||
end
|
end
|
||||||
object tblcolJenVDO: TSmallintField
|
object tblcolJenVDO: TSmallintField
|
||||||
|
DefaultExpression = '0'
|
||||||
FieldName = 'colJenVDO'
|
FieldName = 'colJenVDO'
|
||||||
Visible = False
|
Visible = False
|
||||||
end
|
end
|
||||||
@@ -694,6 +695,7 @@ object formSchvaleniZak: TformSchvaleniZak
|
|||||||
FieldName = 'colDatumOBR'
|
FieldName = 'colDatumOBR'
|
||||||
end
|
end
|
||||||
object tblcolVDOproOBR: TSmallintField
|
object tblcolVDOproOBR: TSmallintField
|
||||||
|
DefaultExpression = '0'
|
||||||
FieldName = 'colVDOproOBR'
|
FieldName = 'colVDOproOBR'
|
||||||
end
|
end
|
||||||
object tblcolOBRproVDO: TSmallintField
|
object tblcolOBRproVDO: TSmallintField
|
||||||
@@ -709,6 +711,10 @@ object formSchvaleniZak: TformSchvaleniZak
|
|||||||
FieldName = 'colPoznamka2'
|
FieldName = 'colPoznamka2'
|
||||||
Size = 500
|
Size = 500
|
||||||
end
|
end
|
||||||
|
object tblcolVDOproVZO: TSmallintField
|
||||||
|
DefaultExpression = '0'
|
||||||
|
FieldName = 'colVDOproVZO'
|
||||||
|
end
|
||||||
end
|
end
|
||||||
object ds: TDataSource
|
object ds: TDataSource
|
||||||
DataSet = tbl
|
DataSet = tbl
|
||||||
|
|||||||
+47
-15
@@ -68,6 +68,7 @@ const
|
|||||||
colVDOproOBR: TNxDBCheckBoxColumn6;
|
colVDOproOBR: TNxDBCheckBoxColumn6;
|
||||||
tblcolPoznamkaR: TSmallintField;
|
tblcolPoznamkaR: TSmallintField;
|
||||||
tblcolPoznamka2: TStringField;
|
tblcolPoznamka2: TStringField;
|
||||||
|
tblcolVDOproVZO: TSmallintField;
|
||||||
procedure FormShow (Sender: TObject);
|
procedure FormShow (Sender: TObject);
|
||||||
procedure FormClose (Sender: TObject; var Action: TCloseAction);
|
procedure FormClose (Sender: TObject; var Action: TCloseAction);
|
||||||
procedure btnStornoClick (Sender: TObject);
|
procedure btnStornoClick (Sender: TObject);
|
||||||
@@ -124,7 +125,7 @@ uses System.StrUtils, System.DateUtils,
|
|||||||
var lSQL, stavTxt, role, sTemp, pozn: string;
|
var lSQL, stavTxt, role, sTemp, pozn: string;
|
||||||
akce: Byte;
|
akce: Byte;
|
||||||
stavIdx: integer;
|
stavIdx: integer;
|
||||||
jenVDO, proOBR, lastRec: boolean;
|
jenVDO, proOBR, proVZO, lastRec: boolean;
|
||||||
datumObrStr: string;
|
datumObrStr: string;
|
||||||
rNum: integer;
|
rNum: integer;
|
||||||
begin
|
begin
|
||||||
@@ -133,6 +134,7 @@ uses System.StrUtils, System.DateUtils,
|
|||||||
|
|
||||||
if (idZakazky<=0) then
|
if (idZakazky<=0) then
|
||||||
Exit;
|
Exit;
|
||||||
|
|
||||||
lSQL := 'SELECT z.CisloZakazky, z.Nazev, z.DruhyNazev, ISNULL(ze._SchvaleniZakazky_Lock,0) FROM ' + tblZak + ' z LEFT JOIN ' + tblZakE;
|
lSQL := 'SELECT z.CisloZakazky, z.Nazev, z.DruhyNazev, ISNULL(ze._SchvaleniZakazky_Lock,0) FROM ' + tblZak + ' z LEFT JOIN ' + tblZakE;
|
||||||
lSQL := lSQL + ' ze ON (ze.ID=z.ID) WHERE z.ID=' + idZakazky.ToString;
|
lSQL := lSQL + ' ze ON (ze.ID=z.ID) WHERE z.ID=' + idZakazky.ToString;
|
||||||
with Helios.OpenSQL(lSQL) do
|
with Helios.OpenSQL(lSQL) do
|
||||||
@@ -141,11 +143,11 @@ uses System.StrUtils, System.DateUtils,
|
|||||||
edtZakazka.Text := VarToStr(FieldValues(0));
|
edtZakazka.Text := VarToStr(FieldValues(0));
|
||||||
edtZakazkaNazev.Text := VarToStr(FieldValues(1)) + ' ** ' + VarToStr(FieldValues(2));
|
edtZakazkaNazev.Text := VarToStr(FieldValues(1)) + ' ** ' + VarToStr(FieldValues(2));
|
||||||
|
|
||||||
lSQL:= 'SELECT TOP(1) p.RegCis FROM ' + tblPZ + ' p INNER JOIN ' + tblDZ + ' d ON (d.ID=p.IDDoklad) WHERE d.DruhPohybuZbo IN (9,6) AND ';
|
lSQL:= 'SELECT TOP(1) p.RegCis FROM ' + tblPZ + ' p INNER JOIN ' + tblDZ + ' d ON (d.ID=p.IDDoklad) WHERE d.DruhPohybuZbo IN (9,6) AND '
|
||||||
lSQL:= lSQL + 'ISNULL(p.CisloZakazky,d.CisloZakazky)=N' + QuotedStr(VarToStr(FieldValues(0)));
|
+ 'ISNULL(p.CisloZakazky,d.CisloZakazky)=N' + QuotedStr(VarToStr(FieldValues(0)));
|
||||||
with Helios.OpenSQL(lSQL) do
|
with Helios.OpenSQL(lSQL) do
|
||||||
if (RecordCount>0) then
|
if (RecordCount>0) then
|
||||||
edtRegCis.Text:= VarToStr(FieldValues(0));
|
edtRegCis.Text := VarToStr(FieldByNameValues('RegCis'));
|
||||||
|
|
||||||
stavTxt := VarToStr(FieldValues(3));
|
stavTxt := VarToStr(FieldValues(3));
|
||||||
zamek := true;
|
zamek := true;
|
||||||
@@ -166,9 +168,11 @@ uses System.StrUtils, System.DateUtils,
|
|||||||
|
|
||||||
histLoad := true;
|
histLoad := true;
|
||||||
proOBR := false;
|
proOBR := false;
|
||||||
|
proVZO := false;
|
||||||
zapisObr := false;
|
zapisObr := false;
|
||||||
lSQL:= 'SELECT DatPorizeni, Role, Akce, Poznamka, ID, Autor, ISNULL(JenVDO,0) AS JenVDO, ISNULL(VDOproOBR,0) AS VDOproOBR, DatumOBR, DatumKON FROM ' + tblSchvalZakHist;
|
|
||||||
lSQL:= lSQL + ' WHERE IDZakazky=' + idZakazky.ToString + ' ORDER BY DatPorizeni';
|
lSQL := 'SELECT DatPorizeni, Role, Akce, Poznamka, ID, Autor, ISNULL(JenVDO,0) AS JenVDO, ISNULL(VDOproOBR,0) AS VDOproOBR, DatumOBR, DatumKON, ISNULL(VDOproVZO,0) AS VDOproVZO'
|
||||||
|
+ ' FROM ' + tblSchvalZakHist + ' WHERE IDZakazky=' + idZakazky.ToString + ' ORDER BY DatPorizeni';
|
||||||
with Helios.OpenSQL(lSQL) do
|
with Helios.OpenSQL(lSQL) do
|
||||||
begin
|
begin
|
||||||
lastRole := '';
|
lastRole := '';
|
||||||
@@ -204,9 +208,15 @@ uses System.StrUtils, System.DateUtils,
|
|||||||
sTemp:= VarToStr(FieldByNameValues('VDOproOBR'));
|
sTemp:= VarToStr(FieldByNameValues('VDOproOBR'));
|
||||||
if (role='VDO') and (StrToBool(sTemp)) then
|
if (role='VDO') and (StrToBool(sTemp)) then
|
||||||
proOBR:= true;
|
proOBR:= true;
|
||||||
|
|
||||||
tbl.FieldByName('colVDOproOBR').AsInteger:= IfThenInt(proOBR, 1, 0);
|
tbl.FieldByName('colVDOproOBR').AsInteger:= IfThenInt(proOBR, 1, 0);
|
||||||
|
|
||||||
|
proVZO:= false;
|
||||||
|
sTemp:= VarToStr(FieldByNameValues('VDOproVZO'));
|
||||||
|
if (role='VDO') and (StrToBool(sTemp)) then
|
||||||
|
proVZO:= true;
|
||||||
|
tbl.FieldByName('colVDOproVZO').AsInteger:= IfThenInt(proVZO, 1, 0);
|
||||||
|
|
||||||
|
|
||||||
akce:= StrToInt(VarToStr(FieldByNameValues('Akce')));
|
akce:= StrToInt(VarToStr(FieldByNameValues('Akce')));
|
||||||
case akce of
|
case akce of
|
||||||
1: stavIdx:= cbStav.Items.IndexOf('Souhlas');
|
1: stavIdx:= cbStav.Items.IndexOf('Souhlas');
|
||||||
@@ -254,6 +264,12 @@ uses System.StrUtils, System.DateUtils,
|
|||||||
if (proOBR) then
|
if (proOBR) then
|
||||||
stavTxt:= stavTxt + ' (OBR)';
|
stavTxt:= stavTxt + ' (OBR)';
|
||||||
|
|
||||||
|
if (tbl.FieldByName('colVDOproVZO').AsInteger=1) then
|
||||||
|
if (akce=1) then
|
||||||
|
stavTxt:= stavTxt + ' (VZO)';
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
tbl.FieldByName('colStav').AsString:= stavTxt;
|
tbl.FieldByName('colStav').AsString:= stavTxt;
|
||||||
tbl.Post;
|
tbl.Post;
|
||||||
Inc (rNum);
|
Inc (rNum);
|
||||||
@@ -414,6 +430,15 @@ uses System.StrUtils, System.DateUtils,
|
|||||||
tbl.FieldByName('colStav').AsString:= tbl.FieldByName('colStav').AsString + ' (pro VDO)';// IfThen(edtRole.Text='OBR', ' OBR', ' VDO');
|
tbl.FieldByName('colStav').AsString:= tbl.FieldByName('colStav').AsString + ' (pro VDO)';// IfThen(edtRole.Text='OBR', ' OBR', ' VDO');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
tbl.FieldByName('colVDOproVZO').AsInteger:= 0;
|
||||||
|
if (cbJenVDO.Caption.Contains('pro VZO')) and (cbJenVDO.Checked) then
|
||||||
|
begin
|
||||||
|
tbl.FieldByName('colVDOproVZO').AsInteger:= 1;
|
||||||
|
tbl.FieldByName('colJenVDO').AsInteger:= 1;
|
||||||
|
tbl.FieldByName('colStav').AsString:= tbl.FieldByName('colStav').AsString + ' (pro VZO)';
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
if ((edtRole.Text='OBR') or (edtRole.Text='VDO')) and (cbZmenaDatumKonZakazka.Checked) then
|
if ((edtRole.Text='OBR') or (edtRole.Text='VDO')) and (cbZmenaDatumKonZakazka.Checked) then
|
||||||
tbl.FieldByName('colDatumObr').AsDateTime:= edtDatObr.DateTime;
|
tbl.FieldByName('colDatumObr').AsDateTime:= edtDatObr.DateTime;
|
||||||
|
|
||||||
@@ -458,10 +483,10 @@ uses System.StrUtils, System.DateUtils,
|
|||||||
lSQL:= lSQL + 'JenVDO';
|
lSQL:= lSQL + 'JenVDO';
|
||||||
|
|
||||||
if (edtRole.Text='OBR') then
|
if (edtRole.Text='OBR') then
|
||||||
lSQL:= lSQL + ', DatumOBR';
|
lSQL:= lSQL + IfThen(not lSQL.Trim.EndsWith(','), ', ', '') + 'DatumOBR';
|
||||||
|
|
||||||
if (jeVzorek) and (VdoProVzo) then
|
if (jeVzorek) and (VdoProVzo) then
|
||||||
lSQL:= lSQL + ', VDOProVZO';
|
lSQL:= lSQL + IfThen(not lSQL.Trim.EndsWith(','), ', ', '') + 'VDOProVZO';
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -655,6 +680,8 @@ uses System.StrUtils, System.DateUtils,
|
|||||||
procedure TformSchvaleniZak.btnOKClick (Sender: TObject);
|
procedure TformSchvaleniZak.btnOKClick (Sender: TObject);
|
||||||
var i, x: integer;
|
var i, x: integer;
|
||||||
begin
|
begin
|
||||||
|
VdoProVzo:= (currRole='VDO') and (cbJenVDO.Checked) and (cbJenVDO.Caption.Contains('VZO',false));
|
||||||
|
|
||||||
if (grd.RowCount>0) and (edtRole.Text<>'') then
|
if (grd.RowCount>0) and (edtRole.Text<>'') then
|
||||||
begin
|
begin
|
||||||
for i:=0 to grd.RowCount-1 do
|
for i:=0 to grd.RowCount-1 do
|
||||||
@@ -784,13 +811,13 @@ uses System.StrUtils, System.DateUtils,
|
|||||||
jeVzorek := helUtils.IfThenBool (LeftStr(cisZakazky,2).ToUpper='VZ', true, false);
|
jeVzorek := helUtils.IfThenBool (LeftStr(cisZakazky,2).ToUpper='VZ', true, false);
|
||||||
|
|
||||||
|
|
||||||
lSQL:= 'IF NOT EXISTS (SELECT 1 FROM ' + tblSchvalZak + ' WHERE IDZakazka=' + idZakazky.ToString + ') INSERT ' + tblSchvalZak;
|
lSQL := 'IF NOT EXISTS (SELECT 1 FROM ' + tblSchvalZak + ' WHERE IDZakazka=' + idZakazky.ToString + ') INSERT ' + tblSchvalZak
|
||||||
lSQL:= lSQL + ' (IDZakazka' + IfThen(jeVzorek, ', TypZakazky', '') + ') SELECT ' + idZakazky.ToString + IfThen (jeVzorek, ', 13', '');
|
+ ' (IDZakazka' + IfThen(jeVzorek, ', TypZakazky', '') + ') SELECT ' + idZakazky.ToString + IfThen (jeVzorek, ', 13', '');
|
||||||
Helios.ExecSQL (lSQL);
|
Helios.ExecSQL (lSQL);
|
||||||
|
|
||||||
|
|
||||||
lSQL:= 'SELECT TOP(1) p.SkupZbo FROM ' + tblPZ + ' p INNER JOIN ' + tblDZ + ' d ON (d.ID=p.IDDoklad) INNER JOIN ' + tblZak + ' z ON (z.CisloZakazky=';
|
lSQL := 'SELECT TOP(1) p.SkupZbo FROM ' + tblPZ + ' p INNER JOIN ' + tblDZ + ' d ON (d.ID=p.IDDoklad) INNER JOIN ' + tblZak + ' z ON (z.CisloZakazky='
|
||||||
lSQL:= lSQL + 'ISNULL(p.CisloZakazky,d.CisloZakazky)) WHERE d.DruhPohybuZbo IN (9,6) AND z.ID=' + idZakazky.ToString;
|
+ 'ISNULL(p.CisloZakazky,d.CisloZakazky)) WHERE d.DruhPohybuZbo IN (9,6) AND z.ID=' + idZakazky.ToString;
|
||||||
szKmene := helUtils.getHeliosStrVal(Helios, '', lSQL);
|
szKmene := helUtils.getHeliosStrVal(Helios, '', lSQL);
|
||||||
edtRegCis.EditLabel.Caption := 'Reg.èíslo' + IfThen(szKmene<>'', ' (SK ' + szKmene + ')', '') + ':';
|
edtRegCis.EditLabel.Caption := 'Reg.èíslo' + IfThen(szKmene<>'', ' (SK ' + szKmene + ')', '') + ':';
|
||||||
jeObrobek := (szKmene='VOB');
|
jeObrobek := (szKmene='VOB');
|
||||||
@@ -911,9 +938,9 @@ uses System.StrUtils, System.DateUtils,
|
|||||||
if (currRole='VDO') and not(jeObrobek) and (prevRole='VZO') and (jeVzorek) then
|
if (currRole='VDO') and not(jeObrobek) and (prevRole='VZO') and (jeVzorek) then
|
||||||
begin
|
begin
|
||||||
cbJenVDO.Caption:= ' pro VZO';
|
cbJenVDO.Caption:= ' pro VZO';
|
||||||
cbJenVDO.Enabled:= false;
|
cbJenVDO.Enabled:= true;
|
||||||
cbJenVDO.Checked;
|
cbJenVDO.Checked;
|
||||||
VdoProVzo:= true;
|
// VdoProVzo:= true;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
if (currRole='VDO') and (jeVzorek) and (jeObrobek) and (prevRole='VZO') then
|
if (currRole='VDO') and (jeVzorek) and (jeObrobek) and (prevRole='VZO') then
|
||||||
@@ -921,6 +948,11 @@ uses System.StrUtils, System.DateUtils,
|
|||||||
cbJenVDO.Checked := true;
|
cbJenVDO.Checked := true;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
if (currRole='VDO') and not(zamek) then
|
||||||
|
if (szKmene='VOD') then // jenProVDO nezobrazuj u skupiny VOD
|
||||||
|
cbJenVDO.Enabled := false;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
infoTxt:= '';
|
infoTxt:= '';
|
||||||
|
|||||||
@@ -0,0 +1,205 @@
|
|||||||
|
object formVPrZmenaPlanuUkonceni: TformVPrZmenaPlanuUkonceni
|
||||||
|
Left = 0
|
||||||
|
Top = 0
|
||||||
|
BorderIcons = [biSystemMenu]
|
||||||
|
BorderStyle = bsSingle
|
||||||
|
Caption = ' Zm'#283'na pl'#225'novan'#233'ho ukon'#269'en'#237' v'#253'roby'
|
||||||
|
ClientHeight = 306
|
||||||
|
ClientWidth = 496
|
||||||
|
Color = clBtnFace
|
||||||
|
Font.Charset = DEFAULT_CHARSET
|
||||||
|
Font.Color = clWindowText
|
||||||
|
Font.Height = -16
|
||||||
|
Font.Name = 'Segoe UI'
|
||||||
|
Font.Style = []
|
||||||
|
Position = poOwnerFormCenter
|
||||||
|
RoundedCorners = rcOn
|
||||||
|
OnShow = FormShow
|
||||||
|
DesignSize = (
|
||||||
|
496
|
||||||
|
306)
|
||||||
|
TextHeight = 21
|
||||||
|
object Label1: TLabel
|
||||||
|
Left = 16
|
||||||
|
Top = 77
|
||||||
|
Width = 191
|
||||||
|
Height = 21
|
||||||
|
Caption = 'Pl'#225'novan'#233' datum ukon'#269'en'#237':'
|
||||||
|
end
|
||||||
|
object lblPrikaz: TLabel
|
||||||
|
Left = 16
|
||||||
|
Top = 20
|
||||||
|
Width = 59
|
||||||
|
Height = 21
|
||||||
|
Caption = 'lblPrikaz'
|
||||||
|
end
|
||||||
|
object Label2: TLabel
|
||||||
|
Left = 16
|
||||||
|
Top = 155
|
||||||
|
Width = 171
|
||||||
|
Height = 21
|
||||||
|
Caption = 'Zm'#283'nit u ni'#382#353#237'ch p'#345#237'kaz'#367':'
|
||||||
|
end
|
||||||
|
object lblDilec: TLabel
|
||||||
|
Left = 16
|
||||||
|
Top = 44
|
||||||
|
Width = 51
|
||||||
|
Height = 21
|
||||||
|
Caption = 'lblDilec'
|
||||||
|
end
|
||||||
|
object grdPrikazy: TNextGrid6
|
||||||
|
Left = 16
|
||||||
|
Top = 185
|
||||||
|
Width = 463
|
||||||
|
Height = 54
|
||||||
|
Anchors = [akLeft, akTop, akRight, akBottom]
|
||||||
|
ParentColor = False
|
||||||
|
TabOrder = 0
|
||||||
|
StyleOptions = [soNativeStyles, soVCLStyles]
|
||||||
|
ActiveView = grdPrikazyView
|
||||||
|
ActiveViewIndex = 0
|
||||||
|
RowHeight = 26
|
||||||
|
ScrollBars = [sbVertical]
|
||||||
|
UserDefinedColorPalette.GeometryHoverColor = clBlack
|
||||||
|
object grdPrikazyView: TNxReportGridView6
|
||||||
|
GridLines = True
|
||||||
|
end
|
||||||
|
object colZmena: TNxCheckBoxColumn6
|
||||||
|
Alignment = taCenter
|
||||||
|
Editing = True
|
||||||
|
Font.Charset = DEFAULT_CHARSET
|
||||||
|
Font.Color = clWindowText
|
||||||
|
Font.Height = -16
|
||||||
|
Font.Name = 'Segoe UI'
|
||||||
|
Font.Style = []
|
||||||
|
Footer.Font.Charset = DEFAULT_CHARSET
|
||||||
|
Footer.Font.Color = clWindowText
|
||||||
|
Footer.Font.Height = -12
|
||||||
|
Footer.Font.Name = 'Segoe UI'
|
||||||
|
Footer.Font.Style = []
|
||||||
|
Footer.FormatMask = '#,##0.00'
|
||||||
|
Header.Font.Charset = DEFAULT_CHARSET
|
||||||
|
Header.Font.Color = clWindowText
|
||||||
|
Header.Font.Height = -12
|
||||||
|
Header.Font.Name = 'Segoe UI'
|
||||||
|
Header.Font.Style = []
|
||||||
|
Index = 0
|
||||||
|
PlaceholderText = 'True'
|
||||||
|
Position = 0
|
||||||
|
Width = 30
|
||||||
|
CheckedImageIndex = -1
|
||||||
|
UncheckedImageIndex = -1
|
||||||
|
InsertString = 'False'
|
||||||
|
end
|
||||||
|
object colRadaPrikaz: TNxTextColumn6
|
||||||
|
Alignment = taCenter
|
||||||
|
Font.Charset = DEFAULT_CHARSET
|
||||||
|
Font.Color = clWindowText
|
||||||
|
Font.Height = -16
|
||||||
|
Font.Name = 'Segoe UI'
|
||||||
|
Font.Style = []
|
||||||
|
Footer.Font.Charset = DEFAULT_CHARSET
|
||||||
|
Footer.Font.Color = clWindowText
|
||||||
|
Footer.Font.Height = -12
|
||||||
|
Footer.Font.Name = 'Segoe UI'
|
||||||
|
Footer.Font.Style = []
|
||||||
|
Footer.FormatMask = '#,##0.00'
|
||||||
|
Header.Caption = #344'ada / p'#345#237'kaz'
|
||||||
|
Header.Font.Charset = DEFAULT_CHARSET
|
||||||
|
Header.Font.Color = clWindowText
|
||||||
|
Header.Font.Height = -16
|
||||||
|
Header.Font.Name = 'Segoe UI'
|
||||||
|
Header.Font.Style = []
|
||||||
|
Header.ParentFont = False
|
||||||
|
Index = 1
|
||||||
|
PlaceholderText = 'Text Text'
|
||||||
|
Position = 1
|
||||||
|
Width = 160
|
||||||
|
end
|
||||||
|
object colNazev1: TNxTextColumn6
|
||||||
|
Font.Charset = DEFAULT_CHARSET
|
||||||
|
Font.Color = clWindowText
|
||||||
|
Font.Height = -16
|
||||||
|
Font.Name = 'Segoe UI'
|
||||||
|
Font.Style = []
|
||||||
|
Footer.Font.Charset = DEFAULT_CHARSET
|
||||||
|
Footer.Font.Color = clWindowText
|
||||||
|
Footer.Font.Height = -12
|
||||||
|
Footer.Font.Name = 'Segoe UI'
|
||||||
|
Footer.Font.Style = []
|
||||||
|
Footer.FormatMask = '#,##0.00'
|
||||||
|
Header.Caption = 'N'#225'zev 1'
|
||||||
|
Header.Font.Charset = DEFAULT_CHARSET
|
||||||
|
Header.Font.Color = clWindowText
|
||||||
|
Header.Font.Height = -16
|
||||||
|
Header.Font.Name = 'Segoe UI'
|
||||||
|
Header.Font.Style = []
|
||||||
|
Header.ParentFont = False
|
||||||
|
Index = 2
|
||||||
|
PlaceholderText = 'Text Text'
|
||||||
|
Position = 2
|
||||||
|
Width = 250
|
||||||
|
end
|
||||||
|
object colID: TNxIncrementColumn6
|
||||||
|
Font.Charset = DEFAULT_CHARSET
|
||||||
|
Font.Color = clWindowText
|
||||||
|
Font.Height = -16
|
||||||
|
Font.Name = 'Segoe UI'
|
||||||
|
Font.Style = []
|
||||||
|
Footer.Font.Charset = DEFAULT_CHARSET
|
||||||
|
Footer.Font.Color = clWindowText
|
||||||
|
Footer.Font.Height = -12
|
||||||
|
Footer.Font.Name = 'Segoe UI'
|
||||||
|
Footer.Font.Style = []
|
||||||
|
Footer.FormatMask = '#,##0.00'
|
||||||
|
Header.Caption = 'ID'
|
||||||
|
Header.Font.Charset = DEFAULT_CHARSET
|
||||||
|
Header.Font.Color = clWindowText
|
||||||
|
Header.Font.Height = -12
|
||||||
|
Header.Font.Name = 'Segoe UI'
|
||||||
|
Header.Font.Style = []
|
||||||
|
Index = 3
|
||||||
|
PlaceholderText = '1'
|
||||||
|
Position = 3
|
||||||
|
Visible = False
|
||||||
|
InsertString = '-1'
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object cbZmenaVPlanu: TCheckBox
|
||||||
|
Left = 16
|
||||||
|
Top = 109
|
||||||
|
Width = 205
|
||||||
|
Height = 27
|
||||||
|
Caption = 'Zm'#283'nit i v pl'#225'nu v'#253'roby'
|
||||||
|
TabOrder = 1
|
||||||
|
end
|
||||||
|
object dtPlanUkonceni: TDateTimePicker
|
||||||
|
Left = 257
|
||||||
|
Top = 73
|
||||||
|
Width = 113
|
||||||
|
Height = 29
|
||||||
|
Date = 46148.000000000000000000
|
||||||
|
Time = 0.410625856478873200
|
||||||
|
TabOrder = 2
|
||||||
|
end
|
||||||
|
object btnOK: TButton
|
||||||
|
Left = 16
|
||||||
|
Top = 256
|
||||||
|
Width = 119
|
||||||
|
Height = 41
|
||||||
|
Anchors = [akLeft, akBottom]
|
||||||
|
Caption = 'OK'
|
||||||
|
TabOrder = 3
|
||||||
|
OnClick = btnOKClick
|
||||||
|
end
|
||||||
|
object btnStorno: TButton
|
||||||
|
Left = 360
|
||||||
|
Top = 256
|
||||||
|
Width = 119
|
||||||
|
Height = 41
|
||||||
|
Anchors = [akRight, akBottom]
|
||||||
|
Caption = 'Storno'
|
||||||
|
TabOrder = 4
|
||||||
|
OnClick = btnStornoClick
|
||||||
|
end
|
||||||
|
end
|
||||||
@@ -0,0 +1,171 @@
|
|||||||
|
unit frmVPrZmenaPlanuUkonceni;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
|
||||||
|
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.ComCtrls, NxGridView6, NxColumns6,
|
||||||
|
NxControls6, NxCustomGrid6, NxVirtualGrid6, NxGrid6,
|
||||||
|
ddPlugin_TLB;
|
||||||
|
|
||||||
|
type
|
||||||
|
TformVPrZmenaPlanuUkonceni = class(TForm)
|
||||||
|
grdPrikazy: TNextGrid6;
|
||||||
|
cbZmenaVPlanu: TCheckBox;
|
||||||
|
dtPlanUkonceni: TDateTimePicker;
|
||||||
|
Label1: TLabel;
|
||||||
|
lblPrikaz: TLabel;
|
||||||
|
Label2: TLabel;
|
||||||
|
btnOK: TButton;
|
||||||
|
btnStorno: TButton;
|
||||||
|
grdPrikazyView: TNxReportGridView6;
|
||||||
|
colZmena: TNxCheckBoxColumn6;
|
||||||
|
colRadaPrikaz: TNxTextColumn6;
|
||||||
|
colNazev1: TNxTextColumn6;
|
||||||
|
lblDilec: TLabel;
|
||||||
|
colID: TNxIncrementColumn6;
|
||||||
|
procedure FormShow (Sender: TObject);
|
||||||
|
procedure btnStornoClick (Sender: TObject);
|
||||||
|
procedure btnOKClick (Sender: TObject);
|
||||||
|
private
|
||||||
|
{ Private declarations }
|
||||||
|
public
|
||||||
|
Helios: IHelios;
|
||||||
|
idVPr: integer;
|
||||||
|
end;
|
||||||
|
|
||||||
|
var
|
||||||
|
formVPrZmenaPlanuUkonceni: TformVPrZmenaPlanuUkonceni;
|
||||||
|
|
||||||
|
|
||||||
|
implementation
|
||||||
|
uses System.StrUtils,
|
||||||
|
helUtils;
|
||||||
|
|
||||||
|
{$R *.dfm}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TformVPrZmenaPlanuUkonceni.btnOKClick (Sender: TObject);
|
||||||
|
var lSQL: string;
|
||||||
|
i: integer;
|
||||||
|
zmeny, eMsg: string;
|
||||||
|
canCont: boolean;
|
||||||
|
begin
|
||||||
|
zmeny := '';
|
||||||
|
for i:=0 to grdPrikazy.RowCount-1 do
|
||||||
|
zmeny := zmeny + IfThen(grdPrikazy.Cell[0, i].AsBoolean, '1', '0') + ',';
|
||||||
|
if (zmeny<>'') then
|
||||||
|
zmeny := LeftStr(zmeny, zmeny.Length-1); // odstran koncovou carku
|
||||||
|
|
||||||
|
canCont := true;
|
||||||
|
if (zmeny.LastIndexOf('0')<zmeny.LastIndexOf('1')) then
|
||||||
|
canCont := false;
|
||||||
|
|
||||||
|
if (canCont) then
|
||||||
|
begin
|
||||||
|
eMsg := '';
|
||||||
|
lSQL := 'DECLARE @eMsg NVARCHAR(500)=N''''' + CRLF + 'DROP TABLE IF EXISTS #TabPrikazyZmenaUkonceni' + CRLF
|
||||||
|
+ 'CREATE TABLE #TabPrikazyZmenaUkonceni (ID INT IDENTITY(1,1) NOT NULL, RadaPrikaz NVARCHAR(50) NOT NULL)' + CRLF;
|
||||||
|
|
||||||
|
for i:=0 to grdPrikazy.RowCount-1 do
|
||||||
|
if (grdPrikazy.Cell [0, i].AsBoolean) then
|
||||||
|
lSQL := lSQL + 'INSERT #TabPrikazyZmenaUkonceni (RadaPrikaz) SELECT N' + grdPrikazy.Cells [1, i].QuotedString + CRLF;
|
||||||
|
|
||||||
|
lSQL := lSQL + 'IF OBJECT_ID(N''dbo.ep_HDC_Vyroba_Prikazy_ZmenaPlanuUkonceni'', ''P'') IS NOT NULL EXEC dbo.ep_HDC_Vyroba_Prikazy_ZmenaPlanuUkonceni @idPrikaz=' + idVpr.ToString
|
||||||
|
+ ', @datPlanUkonceni=N' + FormatDateTime('dd.mm.yyyy', dtPlanUkonceni.Date).QuotedString + ', @zmenaDoPlanu=' + IfThen(cbZmenaVPlanu.Checked, '1', '0')
|
||||||
|
+ ', @errMsg=@eMsg OUT' + CRLF + 'SELECT @eMsg AS ErrMsg';
|
||||||
|
try
|
||||||
|
with Helios.OpenSQL (lSQL) do
|
||||||
|
if (RecordCount>0) then
|
||||||
|
eMsg := FieldByNameValues('ErrMsg')
|
||||||
|
else
|
||||||
|
eMsg := 'Nemám zpìtnou vazbu z výpoètu dat zahájení/ukonèení';
|
||||||
|
if (eMsg<>'') then
|
||||||
|
Helios.Error (#1 + eMsg + #1)
|
||||||
|
else
|
||||||
|
Close;
|
||||||
|
except on E:Exception do
|
||||||
|
Helios.Error (#1'Chyba zpracování: '#1 + E.Message);
|
||||||
|
end;
|
||||||
|
end
|
||||||
|
else
|
||||||
|
Helios.Error (#1'V øadì pøíkazù s povolenou zmìnou plánovaného data ukonèení nesmí být pøíkaz bez zmìny.'#1);
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TformVPrZmenaPlanuUkonceni.btnStornoClick (Sender: TObject);
|
||||||
|
begin
|
||||||
|
Close;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TformVPrZmenaPlanuUkonceni.FormShow (Sender: TObject);
|
||||||
|
var lSQL: string;
|
||||||
|
pSZ, pRC, pNazev1, pRPr: string;
|
||||||
|
pStav, pUroven: byte;
|
||||||
|
cnt: integer;
|
||||||
|
begin
|
||||||
|
grdPrikazy.RowCount := 0;
|
||||||
|
self.Height := 325;
|
||||||
|
lblPrikaz.Caption := '';
|
||||||
|
lblDilec.Caption := '';
|
||||||
|
|
||||||
|
dtPlanUkonceni.Date := Now;
|
||||||
|
|
||||||
|
if (idVPr>0) then
|
||||||
|
begin
|
||||||
|
pSZ := '';
|
||||||
|
|
||||||
|
lSQL := 'SELECT p.RadaPrikaz, k.SkupZbo, k.RegCis, k.Nazev1, p.StavPrikazu, p.UrovenVnoreni, p.Plan_ukonceni_X FROM ' + tblVPr + ' p JOIN ' + tblKZ
|
||||||
|
+ ' k ON (k.ID=p.IDTabKmen) WHERE p.ID=' + idVPr.ToString;
|
||||||
|
with Helios.OpenSQL (lSQL) do
|
||||||
|
if not(EOF) then
|
||||||
|
begin
|
||||||
|
First;
|
||||||
|
pSZ := FieldByNameValues('SkupZbo');
|
||||||
|
pRC := FieldByNameValues('RegCis');
|
||||||
|
pNazev1 := FieldByNameValues('Nazev1');
|
||||||
|
pRPr := FieldByNameValues('RadaPrikaz');
|
||||||
|
pStav := FieldByNameValues('StavPrikazu');
|
||||||
|
pUroven := FieldByNameValues('UrovenVnoreni');
|
||||||
|
lblPrikaz.Caption := pRPr + ' ' + pRC;
|
||||||
|
lblDilec.Caption := pNazev1;
|
||||||
|
dtPlanUkonceni.Date := FieldByNameValues('Plan_ukonceni_X');
|
||||||
|
end;
|
||||||
|
|
||||||
|
if (pSZ<>'') then
|
||||||
|
begin
|
||||||
|
lSQL := 'SELECT p.RadaPrikaz, k.SkupZbo, k.RegCis, k.Nazev1, p.StavPrikazu, p.UrovenVnoreni FROM ' + tblVPr + ' p JOIN ' + tblKZ + ' k ON (k.ID=p.IDTabKmen) WHERE p.IDPrikazRidici=' + idVPr.ToString
|
||||||
|
+ ' AND p.UrovenVnoreni>' + pUroven.ToString + ' AND p.StavPrikazu IN (20,30) /*AND k.SkupZbo LIKE N''P[45]%''*/ ORDER BY p.UrovenVnoreni, k.SkupZbo DESC';
|
||||||
|
with Helios.OpenSQL (lSQL) do
|
||||||
|
if (RecordCount>0) then
|
||||||
|
begin
|
||||||
|
cnt := 0;
|
||||||
|
First;
|
||||||
|
while not(EOF) do
|
||||||
|
begin
|
||||||
|
Inc (cnt);
|
||||||
|
grdPrikazy.RowCount := cnt;
|
||||||
|
pSZ := FieldByNameValues('SkupZbo');
|
||||||
|
if (LeftStr(pSZ,2)='P4') or (LeftStr(pSZ,2)='P5') then
|
||||||
|
grdPrikazy.Cell [0, cnt-1].AsBoolean := true;
|
||||||
|
|
||||||
|
grdPrikazy.Cells [1, cnt-1] := FieldByNameValues('RadaPrikaz');
|
||||||
|
grdPrikazy.Cells [2, cnt-1] := FieldByNameValues('Nazev1');
|
||||||
|
grdPrikazy.Cells [3, cnt-1] := cnt.ToString;
|
||||||
|
self.Height := self.Height + 28;
|
||||||
|
Next;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
end.
|
||||||
+4
-2
@@ -36,6 +36,7 @@ uses
|
|||||||
madListModules,
|
madListModules,
|
||||||
System.Win.ComServ,
|
System.Win.ComServ,
|
||||||
ddPlugin_TLB,
|
ddPlugin_TLB,
|
||||||
|
dataMod in 'dataMod.pas' {dm: TDataModule},
|
||||||
ComObjekt in 'ComObjekt.pas',
|
ComObjekt in 'ComObjekt.pas',
|
||||||
frmGenPolos in 'frmGenPolos.pas' {formGenPolos},
|
frmGenPolos in 'frmGenPolos.pas' {formGenPolos},
|
||||||
frmOdlitek in 'frmOdlitek.pas' {formOdlitek},
|
frmOdlitek in 'frmOdlitek.pas' {formOdlitek},
|
||||||
@@ -50,8 +51,9 @@ uses
|
|||||||
frmInputNum in 'frmInputNum.pas' {formInputNum},
|
frmInputNum in 'frmInputNum.pas' {formInputNum},
|
||||||
frmHrOdvOperZmetky in 'frmHrOdvOperZmetky.pas' {formHrOdvOperZmetky},
|
frmHrOdvOperZmetky in 'frmHrOdvOperZmetky.pas' {formHrOdvOperZmetky},
|
||||||
frmKoopObjUprava in 'frmKoopObjUprava.pas' {formKoopObjUprava},
|
frmKoopObjUprava in 'frmKoopObjUprava.pas' {formKoopObjUprava},
|
||||||
dataMod in 'dataMod.pas' {dm: TDataModule},
|
frmOOPPohyb in 'frmOOPPohyb.pas' {formOOPPohyb},
|
||||||
frmOOPPohyb in 'frmOOPPohyb.pas' {formOOPPohyb};
|
frmVPrZmenaPlanuUkonceni in 'frmVPrZmenaPlanuUkonceni.pas' {formVPrZmenaPlanuUkonceni},
|
||||||
|
frmGenKoopObj in 'frmGenKoopObj.pas' {formGenKoopObj};
|
||||||
|
|
||||||
// ,frmPlanLis in 'frmPlanLis.pas' {formPlanLis};
|
// ,frmPlanLis in 'frmPlanLis.pas' {formPlanLis};
|
||||||
|
|
||||||
|
|||||||
+918
-35
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Reference in New Issue
Block a user