1817 lines
81 KiB
ObjectPascal
1817 lines
81 KiB
ObjectPascal
unit frmOdlitek;
|
|
|
|
interface
|
|
|
|
uses
|
|
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls,
|
|
Vcl.Forms, Vcl.Dialogs, Vcl.ComCtrls, ddPlugin_TLB, Vcl.StdCtrls, Vcl.ExtCtrls, Vcl.Mask, RzEdit,
|
|
Vcl.Themes, RxToolEdit, Vcl.NumberBox;
|
|
|
|
const
|
|
tblOdlitky = '[dbo].[_hdc_TabOdlitky]';
|
|
tblOdlitkyPrava = '[dbo].[_hdc_TabOdlitkyPrava]';
|
|
tblAtestVyst = '[dbo].[_hdc_TabAtestyVystavPozad]';
|
|
tblAtestDruhy = '[dbo].[_hdc_TabAtestyDruhy]';
|
|
tblMaterial = '[dbo].[_hdc_TabMaterial]';
|
|
|
|
type
|
|
TLazyIfThen<T:record>=record
|
|
class function IfThen(aCondition:Boolean;aIfTrue, aIfFalse:TFunc<T>):T; static;
|
|
end;
|
|
|
|
TOdlitek = record
|
|
id, idKmenZbozi: integer;
|
|
odlitek, nazev, matecniOdlitek, material, lis, cisloPKZ, poznamka: string;
|
|
forma, frmZnac, frmZnacOld, frmDruh, frmDruhAlt, oznac, vykres, incoterms: string;
|
|
vlastnik, zivotnost, zivotKov, zivotVosk, nalisKs, celkemKs, lisSkup, lisCas, casVstrik, lisSkup2, lisCas2, casVstrik2, pozicVeFrm, pozicVeFrmAlt, teplMin, teplMax: integer;
|
|
ksNaPlate, ksVeForme, ksVeFormeAlt, pocetVetv, pocetVetvAlt, ksVEtazi, strNaTavbu, ksNaTavbu, ksNaStrom, vetviNaStrom, vetviNaForm, vetviNaFormAlt: integer;
|
|
druhVtoku, doplDil1, ksDoplDil1, doplDil2, ksDoplDil2, doplDil3, ksDoplDil3, prvniObal, druhObalu, kalkVyrDavka, kalkPocetUpn: integer;
|
|
druhTech, druhVtokuTxt, doplDil1Txt, doplDil2Txt, doplDil3Txt, prurezVt, prurezVt2: string;
|
|
hmot, hmotObrob, hmotVoskD, hmotSkor, hmotStrom, hmotBrt: Extended;
|
|
garant, odrez, specifOdl, specifObr, sarze, legPripl: string;
|
|
tepZprac, voskJadra, voskJadraMoc, voskCepy, voskChlad, voskRiziko: boolean;
|
|
tstMat, tstTZ, tstObrab, tstPovrch, tstDefekt, tstJine: Boolean;
|
|
tstMatPop, tstTZPop, tstObrabPop, tstPovrchPop, tstDefektPop, tstJinePop: string;
|
|
tstMatDruh, tstTZDruh, tstObrabDruh, tstPovrchDruh, tstDefektDruh, tstJineDruh: integer;
|
|
tstMatVyst, tstMatPozad, tstTZVyst, tstTZPozad, tstObrabVyst, tstObrabPozad, tstPovrchVyst, tstPovrchPozad: string[2];
|
|
tstJazyk, tstDefektVyst, tstDefektPozad, tstJineVyst, tstJinePozad: string[2];
|
|
koopTpl, koopDefekt, koopBarva, koopJine, koopObrab, koopPovrch: boolean;
|
|
koopTplPop, koopDefektPop, koopBarvaPop, koopJinePop, koopObrabPop: string;
|
|
end;
|
|
|
|
TformOdlitek = class(TForm)
|
|
pgCtrl: TPageControl;
|
|
selDruhFor: TComboEdit;
|
|
edtDruhFor: TLabeledEdit;
|
|
edtDruhForA: TLabeledEdit;
|
|
selDruhForA: TComboEdit;
|
|
Label1: TLabel;
|
|
edtKsFor: TNumberBox;
|
|
Label2: TLabel;
|
|
edtKsForA: TNumberBox;
|
|
btnOK: TButton;
|
|
btnStorno: TButton;
|
|
edtDoplDil1: TLabeledEdit;
|
|
selDoplDil1: TComboEdit;
|
|
edtDoplDil2: TLabeledEdit;
|
|
selDoplDil2: TComboEdit;
|
|
edtDoplDil3: TLabeledEdit;
|
|
selDoplDil3: TComboEdit;
|
|
edtDruhVtoku: TLabeledEdit;
|
|
selDruhVtoku: TComboEdit;
|
|
edtKSNaStrom: TNumberBox;
|
|
Label4: TLabel;
|
|
shObecne: TTabSheet;
|
|
edtDruhTech: TEdit;
|
|
Label5: TLabel;
|
|
Label6: TLabel;
|
|
edtKsDopl1: TNumberBox;
|
|
edtKsDopl2: TNumberBox;
|
|
Label7: TLabel;
|
|
Label8: TLabel;
|
|
edtKsDopl3: TNumberBox;
|
|
Label10: TLabel;
|
|
edtVetvNaStrom: TNumberBox;
|
|
edtMatOdlit: TLabeledEdit;
|
|
selMatOdlit: TComboEdit;
|
|
edtStrNaTavbu: TNumberBox;
|
|
Label3: TLabel;
|
|
Label9: TLabel;
|
|
edtPocetVetvi: TNumberBox;
|
|
Label11: TLabel;
|
|
edtPocetVetviA: TNumberBox;
|
|
Label12: TLabel;
|
|
edtKsEtaz: TNumberBox;
|
|
shKoop: TTabSheet;
|
|
cbAtestTepel: TCheckBox;
|
|
mPoznTepel: TMemo;
|
|
cbAtestObr: TCheckBox;
|
|
mPoznObr: TMemo;
|
|
cbAtestPovrch: TCheckBox;
|
|
mPoznPovrch: TMemo;
|
|
cbAtestDefekt: TCheckBox;
|
|
mPoznDefekt: TMemo;
|
|
cbAtestJine: TCheckBox;
|
|
mPoznJine: TMemo;
|
|
Label14: TLabel;
|
|
edtHmotStr: TNumberBox;
|
|
Label15: TLabel;
|
|
edtHmotSkor: TNumberBox;
|
|
Label16: TLabel;
|
|
cbPrvniObal: TComboBox;
|
|
edtCisOrg: TLabeledEdit;
|
|
selCisOrg: TComboEdit;
|
|
edtOrg: TEdit;
|
|
selOrg: TComboEdit;
|
|
Panel1: TPanel;
|
|
edtHmotNetto: TNumberBox;
|
|
Label17: TLabel;
|
|
Label18: TLabel;
|
|
edtHmotBrutto: TNumberBox;
|
|
edtVykres: TEdit;
|
|
Label19: TLabel;
|
|
Label20: TLabel;
|
|
edtIncoterms: TEdit;
|
|
edtPKZ: TEdit;
|
|
Label21: TLabel;
|
|
Label22: TLabel;
|
|
edtHmVoskD: TNumberBox;
|
|
Label23: TLabel;
|
|
Label24: TLabel;
|
|
lblVyuziti: TLabel;
|
|
lblHmOdlKovu: TLabel;
|
|
Label25: TLabel;
|
|
cbOdrez: TComboBox;
|
|
Label26: TLabel;
|
|
edtPrurezVtk1: TEdit;
|
|
edtPrurezVtk2: TEdit;
|
|
edtGarant: TEdit;
|
|
Label27: TLabel;
|
|
Label28: TLabel;
|
|
Label29: TLabel;
|
|
cbSpecVyrOdlitek: TComboBox;
|
|
Label30: TLabel;
|
|
cbSpecVyrObrobek: TComboBox;
|
|
Label31: TLabel;
|
|
Label13: TLabel;
|
|
cbJazyk: TComboBox;
|
|
Label32: TLabel;
|
|
edtKsNaPlate: TNumberBox;
|
|
edtDruhTepel: TLabeledEdit;
|
|
selDruhTZ: TComboEdit;
|
|
Label33: TLabel;
|
|
Label34: TLabel;
|
|
selDruhObr: TComboEdit;
|
|
edtDruhObr: TEdit;
|
|
edtDruhPovrch: TEdit;
|
|
selDruhPovrch: TComboEdit;
|
|
edtDruhDefekt: TEdit;
|
|
selDruhDefekt: TComboEdit;
|
|
edtDruhJine: TEdit;
|
|
selDruhJine: TComboEdit;
|
|
Label35: TLabel;
|
|
Label36: TLabel;
|
|
cbVystTepel: TComboBox;
|
|
cbPozadTepel: TComboBox;
|
|
cbVystObr: TComboBox;
|
|
cbPozadObr: TComboBox;
|
|
cbVystPU: TComboBox;
|
|
cbPozadPU: TComboBox;
|
|
cbVystDefekt: TComboBox;
|
|
cbPozadDefekt: TComboBox;
|
|
cbVystJine: TComboBox;
|
|
cbPozadJine: TComboBox;
|
|
cbAtestMat: TCheckBox;
|
|
cbVystMat: TComboBox;
|
|
cbPozadMat: TComboBox;
|
|
edtDruhMat: TEdit;
|
|
selDruhMat: TComboEdit;
|
|
Label37: TLabel;
|
|
edtTeplotaMin: TNumberBox;
|
|
Label38: TLabel;
|
|
edtTeplotaMax: TNumberBox;
|
|
Label39: TLabel;
|
|
edtHmotObr: TNumberBox;
|
|
Label40: TLabel;
|
|
cbSarze: TComboBox;
|
|
mPozn: TMemo;
|
|
Label41: TLabel;
|
|
Label42: TLabel;
|
|
edtPozForA: TNumberBox;
|
|
Label43: TLabel;
|
|
edtPozFor: TNumberBox;
|
|
Label44: TLabel;
|
|
shOstatni: TTabSheet;
|
|
GroupBox1: TGroupBox;
|
|
pnlVosk: TPanel;
|
|
cbVoskJadra: TCheckBox;
|
|
cbVoskCepy: TCheckBox;
|
|
cbVoskChladitka: TCheckBox;
|
|
cbVoskJadraMocovina: TCheckBox;
|
|
Label45: TLabel;
|
|
cbLegPripl: TComboBox;
|
|
Label46: TLabel;
|
|
cbSkupFirem: TComboBox;
|
|
cbVoskRizikovaPoz: TCheckBox;
|
|
Shape1: TShape;
|
|
Label47: TLabel;
|
|
cbMaterial: TComboBox;
|
|
Label48: TLabel;
|
|
edtLisSkup: TEdit;
|
|
edtLisCas: TNumberBox;
|
|
edtLisSkup2: TEdit;
|
|
edtLisCas2: TNumberBox;
|
|
Label49: TLabel;
|
|
Label50: TLabel;
|
|
edtVstrikCas: TNumberBox;
|
|
Label51: TLabel;
|
|
edtVstrikCas2: TNumberBox;
|
|
selGarant: TComboEdit;
|
|
procedure FormShow(Sender: TObject);
|
|
procedure FormClose(Sender: TObject; var Action: TCloseAction);
|
|
procedure selDruhForClick(Sender: TObject);
|
|
procedure btnStornoClick(Sender: TObject);
|
|
procedure btnOKClick(Sender: TObject);
|
|
procedure selDruhForAClick(Sender: TObject);
|
|
procedure selDruhVtokuClick(Sender: TObject);
|
|
procedure selDoplDil1Click(Sender: TObject);
|
|
procedure selDoplDil2Click(Sender: TObject);
|
|
procedure selDoplDil3Click(Sender: TObject);
|
|
procedure cbAtestTepelClick(Sender: TObject);
|
|
procedure selOrgClick(Sender: TObject);
|
|
procedure selCisOrgClick(Sender: TObject);
|
|
procedure edtCisOrgExit(Sender: TObject);
|
|
procedure edtOrgExit(Sender: TObject);
|
|
procedure edtHmotStrExit(Sender: TObject);
|
|
procedure edtStrNaTavbuExit (Sender: TObject);
|
|
procedure edtKSNaStromExit (Sender: TObject);
|
|
procedure edtHmotNettoExit (Sender: TObject);
|
|
procedure cbAtestPovrchClick (Sender: TObject);
|
|
procedure cbAtestDefektClick (Sender: TObject);
|
|
procedure cbAtestJineClick (Sender: TObject);
|
|
procedure cbAtestObrClick (Sender: TObject);
|
|
procedure selMatOdlitClick (Sender: TObject);
|
|
procedure selDruhTZClick (Sender: TObject);
|
|
procedure selDruhObrClick (Sender: TObject);
|
|
procedure selDruhPovrchClick (Sender: TObject);
|
|
procedure selDruhDefektClick (Sender: TObject);
|
|
procedure selDruhJineClick (Sender: TObject);
|
|
procedure selDruhMatClick (Sender: TObject);
|
|
procedure selGarantButtonClick (Sender: TObject);
|
|
procedure edtMatOdlitKeyUp (Sender: TObject; var Key: Word; Shift: TShiftState);
|
|
procedure edtMatOdlitKeyDown (Sender: TObject; var Key: Word; Shift: TShiftState);
|
|
procedure edtMatOdlitKeyPress (Sender: TObject; var Key: Char);
|
|
procedure btnStornoMouseUp (Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
|
|
private
|
|
function NactiParametryKarty (id: integer; var karta: TOdlitek): boolean; safecall;
|
|
procedure NactiParametry; safecall;
|
|
procedure ZmenaVypoctu; safecall;
|
|
public
|
|
Helios: IHelios;
|
|
jenView: boolean;
|
|
idK: integer;
|
|
odlitek, skinName: string;
|
|
debug: boolean;
|
|
end;
|
|
|
|
|
|
var
|
|
formOdlitek: TformOdlitek;
|
|
idOdl, idOdlRodic, idKZ, idKZRodic: integer;
|
|
idProUpd: integer;
|
|
mamMatOdlitek: Boolean;
|
|
podm, tempTab: string;
|
|
oVar1, oVar2: OleVariant;
|
|
bidAtestyDruhy, bidGarant, bidMaterial: integer;
|
|
kOdlitek, kRodic: TOdlitek;
|
|
|
|
|
|
implementation
|
|
uses System.StrUtils, System.Math, {Vcl.Styles.ColorTabs,} helUtils;
|
|
|
|
{$R *.dfm}
|
|
|
|
|
|
class function TLazyIfThen<T>.IfThen(aCondition:Boolean;aIfTrue, aIfFalse:TFunc<T>):T;
|
|
begin
|
|
if aCondition then
|
|
result:= aIfTrue
|
|
else
|
|
result:= aIfFalse
|
|
end;
|
|
|
|
|
|
function NQuotedStr (inStr: string=''; trimMe: boolean=false): string;
|
|
begin
|
|
if (trimMe) then
|
|
inStr:= inStr.Trim;
|
|
result:= 'N' + inStr.QuotedString;
|
|
end;
|
|
|
|
|
|
function NullOrNumNoZero (inVal: Extended): string;
|
|
begin
|
|
if (inVal=0) then
|
|
result:= 'NULL'
|
|
else
|
|
result:= inVal.ToString.Replace(',', '.');
|
|
end;
|
|
|
|
|
|
function NullOrNQuotedStr (inStr: string=''; trimMe: boolean=false): string;
|
|
begin
|
|
if (trimMe) then
|
|
inStr:= inStr.Trim;
|
|
if (inStr='') then
|
|
result:= 'NULL'
|
|
else
|
|
result:= 'N' + inStr.QuotedString;
|
|
end;
|
|
|
|
|
|
function IfThenBool(const podm, valTrue, valFalse: Boolean): boolean;
|
|
begin
|
|
result:= valFalse;
|
|
if (podm) then
|
|
result:= valTrue;
|
|
end;
|
|
|
|
|
|
function RodicNeboPotomekS(const rVal, pVal: string; const vratJenSHodnotou:boolean): string;
|
|
begin
|
|
result:= rVal;
|
|
if (vratJenSHodnotou) then
|
|
begin
|
|
if (pVal.Trim<>'') then
|
|
result:= pVal.Trim;
|
|
end
|
|
else
|
|
if (pVal<>rVal) and (rVal<>'') then
|
|
result:= rVal.Trim;
|
|
end;
|
|
|
|
|
|
function RodicNeboPotomekE(const rVal, pVal: Extended): Extended;
|
|
begin
|
|
result:= rVal;
|
|
if (pVal<>rVal) then
|
|
result:= pVal;
|
|
end;
|
|
|
|
function RodicNeboPotomekI(const rVal, pVal: integer): integer;
|
|
begin
|
|
result:= rVal;
|
|
if (pVal<>rVal) then
|
|
result:= pVal;
|
|
end;
|
|
|
|
|
|
|
|
function EmptyToZero(inStr: string): string;
|
|
begin
|
|
inStr:= StringReplace(inStr, ',', '.', [rfReplaceAll]);
|
|
result:= inStr;
|
|
if (Trim(inStr)='') then
|
|
result:= '0';
|
|
end;
|
|
|
|
|
|
{
|
|
procedure TNumberBoxPaint(Sender: TObject; Canvas: TCanvas; const ARect: TRectF);
|
|
var nb: TNumberBox;
|
|
rf: TRectF;
|
|
tx: string;
|
|
begin
|
|
nb := Sender as TNumberBox;
|
|
|
|
if nb.Value = 0 then
|
|
tx := 'zero'
|
|
else
|
|
tx := format('%.0n',[nb.Value]);
|
|
|
|
rf := ARect;
|
|
Canvas.ClearRect(ARect, TAlphaColors.Lightpink);
|
|
rf.inflate(-4, -2);
|
|
Canvas.Fill.Color := TAlphaColors.Black;
|
|
|
|
Canvas.FillText(rf, tx, False, 1, [], TTextAlign.Leading, TTextAlign.Center);
|
|
end;
|
|
}
|
|
|
|
|
|
|
|
|
|
procedure TformOdlitek.ZmenaVypoctu;
|
|
begin
|
|
lblVyuziti.Caption:= FormatFloat('##0.##', ((edtHmotNetto.Value*edtKsNaStrom.Value)/edtHmotStr.Value)*100);
|
|
lblHmOdlKovu.Caption:= FormatFloat('#,###0', edtStrNaTavbu.Value*edtHmotStr.Value);
|
|
end;
|
|
|
|
|
|
|
|
|
|
function TformOdlitek.NactiParametryKarty (id: integer; var karta: TOdlitek): boolean;
|
|
var lSQL, matOdl, lng, sTemp: string;
|
|
iTemp: integer;
|
|
begin
|
|
result:= false;
|
|
lSQL:= 'SELECT ISNULL(Vlastnik,-1) AS Vlastnik, ISNULL(Odrez, N'''') AS Odrez, ISNULL(LisovaciSkup,0) AS LisovaciSkup, ISNULL(Sarzovat, N'''') AS Sarzovat';
|
|
lSQL:= lSQL + ', ISNULL(LisovaciSkup2,0) AS LisovaciSkup2, * FROM ' + tblOdlitky + ' WHERE ID=' + id.ToString;
|
|
with Helios.OpenSQL(lSQL) do
|
|
if (RecordCount=1) then
|
|
begin
|
|
karta.id:= id;
|
|
karta.odlitek:= VarToStr(FieldByNameValues('Odlitek'));
|
|
karta.material:= VarToStr(FieldByNameValues('Material'));
|
|
lSQL:= 'SELECT TOP(1) k.Nazev1 FROM ' + tblOdlitky + ' o INNER JOIN ' + tblKZ + ' k ON (k.RegCis=o.Odlitek) WHERE o.ID=' + id.ToString;
|
|
lSQL:= lSQL + ' AND k.SkupZbo IN (N''VOB'', N''VOD'', N''P51'', ''P41'') ORDER BY k.SkupZbo DESC';
|
|
karta.nazev:= helUtils.getHeliosStrVal(Helios, '', lSQL);
|
|
karta.frmDruh:= VarToStr(FieldByNameValues('FormaDruh'));
|
|
karta.ksVeForme:= StrToInt(EmptyToZero(VarToStr(FieldByNameValues('KSveForme'))));
|
|
karta.ksVeFormeAlt:= StrToInt(EmptyToZero(VarToStr(FieldByNameValues('KSveFormeAlt'))));
|
|
karta.frmDruhAlt:= VarToStr(FieldByNameValues('FormaDruhAlt'));
|
|
karta.strNaTavbu:= StrToInt(EmptyToZero(VarToStr(FieldByNameValues('StromuNaTavbu'))));
|
|
karta.druhVtokuTxt:= VarToStr(FieldByNameValues('DruhVtokuTxt'));
|
|
karta.doplDil1Txt:= VarToStr(FieldByNameValues('DoplDil1Txt'));
|
|
karta.doplDil2Txt:= VarToStr(FieldByNameValues('DoplDil2Txt'));
|
|
karta.doplDil3Txt:= VarToStr(FieldByNameValues('DoplDil3Txt'));
|
|
karta.ksNaStrom:= StrToInt(EmptyToZero(VarToStr(FieldByNameValues('KSnaStrom'))));
|
|
karta.druhTech:= VarToStr(FieldByNameValues('DruhTechnologie')).Trim;
|
|
karta.ksDoplDil1:= StrToInt(EmptyToZero(VarToStr(FieldByNameValues('KsDoplDil1'))));
|
|
karta.ksDoplDil2:= StrToInt(EmptyToZero(VarToStr(FieldByNameValues('KsDoplDil2'))));
|
|
karta.ksDoplDil3:= StrToInt(EmptyToZero(VarToStr(FieldByNameValues('KsDoplDil3'))));
|
|
karta.pocetVetv:= StrToInt(EmptyToZero(VarToStr(FieldByNameValues('PocetVetvicek'))));
|
|
karta.pocetVetvAlt:= StrToInt(EmptyToZero(VarToStr(FieldByNameValues('PocetVetvicekAlt'))));
|
|
karta.ksVEtazi:= StrToInt(EmptyToZero(VarToStr(FieldByNameValues('KSvEtazi'))));
|
|
|
|
karta.lisCas:= StrToInt(EmptyToZero(VarToStr(FieldByNameValues('LisovaciCas'))));
|
|
karta.casVstrik:= StrToInt(EmptyToZero(VarToStr(FieldByNameValues('VstrikCas'))));
|
|
karta.lisCas2:= StrToInt(EmptyToZero(VarToStr(FieldByNameValues('LisovaciCas2'))));
|
|
karta.casVstrik2:= StrToInt(EmptyToZero(VarToStr(FieldByNameValues('VstrikCas2'))));
|
|
|
|
karta.pozicVeFrm:= StrToInt(EmptyToZero(VarToStr(FieldByNameValues('PozicVeForme'))));
|
|
karta.pozicVeFrmAlt:= StrToInt(EmptyToZero(VarToStr(FieldByNameValues('PozicVeFormeAlt'))));
|
|
karta.teplMin:= StrToInt(EmptyToZero(VarToStr(FieldByNameValues('TeplotaMin'))));
|
|
karta.teplMax:= StrToInt(EmptyToZero(VarToStr(FieldByNameValues('TeplotaMax'))));
|
|
karta.ksNaPlate:= StrToInt(EmptyToZero(VarToStr(FieldByNameValues('KSNaPlate'))));
|
|
karta.matecniOdlitek:= Trim(VarToStr(FieldByNameValues('MatecniOdlitek')));
|
|
|
|
karta.koopTpl:= VarToBool(FieldByNameValues('Koop_TepelneZprac'));
|
|
karta.koopTplPop:= VarToStr(FieldByNameValues('Koop_TepelneZprac_Popis'));
|
|
if not(TryStrToInt(VarToStr(FieldByNameValues('Atest_TepelneZprac_Druh')), karta.tstTZDruh)) then
|
|
karta.tstTZDruh:= 0;
|
|
karta.tstTZVyst:= VarToStr(FieldByNameValues('Atest_TepelneZprac_Vystavuje'));
|
|
karta.tstTZPozad:= VarToStr(FieldByNameValues('Atest_TepelneZprac_Pozaduje'));
|
|
|
|
karta.voskJadra:= VarToBool(FieldByNameValues('VoskJadra'));
|
|
karta.voskJadraMoc:= VarToBool(FieldByNameValues('VoskJadraMocovina'));
|
|
karta.voskCepy:= VarToBool(FieldByNameValues('VoskCepy'));
|
|
karta.voskChlad:= VarToBool(FieldByNameValues('VoskChladitka'));
|
|
karta.voskRiziko:= VarToBool(FieldByNameValues('VoskRiziko'));
|
|
|
|
karta.koopObrab:= VarToBool(FieldByNameValues('Koop_Obrabeni'));
|
|
karta.koopObrabPop:= VarToStr(FieldByNameValues('Koop_Obrabeni_Popis'));
|
|
if not(TryStrToInt(VarToStr(FieldByNameValues('Atest_Obrabeni_Druh')), karta.tstObrabDruh)) then
|
|
karta.tstObrabDruh:= 0;
|
|
karta.tstObrabVyst:= VarToStr(FieldByNameValues('Atest_Obrabeni_Vystavuje'));
|
|
karta.tstObrabPozad:= VarToStr(FieldByNameValues('Atest_Obrabeni_Pozaduje'));
|
|
|
|
karta.tstPovrch:= VarToBool(FieldByNameValues('Atest_PovrchUprava'));
|
|
karta.tstPovrchPop:= VarToStr(FieldByNameValues('Atest_PovrchUprava_Popis'));
|
|
if not(TryStrToInt(VarToStr(FieldByNameValues('Atest_PovrchUprava_Druh')), karta.tstPovrchDruh)) then
|
|
karta.tstPovrchDruh:= 0;
|
|
karta.tstPovrchVyst:= VarToStr(FieldByNameValues('Atest_PovrchUprava_Vystavuje'));
|
|
karta.tstPovrchPozad:= VarToStr(FieldByNameValues('Atest_PovrchUprava_Pozaduje'));
|
|
|
|
karta.koopDefekt:= VarToBool(FieldByNameValues('Koop_Defekt'));
|
|
karta.koopDefektPop:= VarToStr(FieldByNameValues('Koop_Defekt_Popis'));
|
|
if not(TryStrToInt(VarToStr(FieldByNameValues('Atest_Defekt_Druh')), karta.tstDefektDruh)) then
|
|
karta.tstDefektDruh:= 0;
|
|
karta.tstDefektVyst:= VarToStr(FieldByNameValues('Atest_Defekt_Vystavuje'));
|
|
karta.tstDefektPozad:= VarToStr(FieldByNameValues('Atest_Defekt_Pozaduje'));
|
|
|
|
karta.koopJine:= VarToBool(FieldByNameValues('Koop_Jine'));
|
|
karta.koopJinePop:= VarToStr(FieldByNameValues('Koop_Jine_Popis'));
|
|
if not(TryStrToInt(VarToStr(FieldByNameValues('Atest_Jine_Druh')), karta.tstJineDruh)) then
|
|
karta.tstJineDruh:= 0;
|
|
karta.tstJineVyst:= VarToStr(FieldByNameValues('Atest_Jine_Vystavuje'));
|
|
karta.tstJinePozad:= VarToStr(FieldByNameValues('Atest_Jine_Pozaduje'));
|
|
|
|
karta.tstMat:= VarToBool(FieldByNameValues('Atest_Material'));
|
|
karta.tstMatPop:= VarToStr(FieldByNameValues('Atest_Material_Popis'));
|
|
if not(TryStrToInt(VarToStr(FieldByNameValues('Atest_Material_Druh')), karta.tstMatDruh)) then
|
|
karta.tstMatDruh:= 0;
|
|
karta.tstMatVyst:= VarToStr(FieldByNameValues('Atest_Material_Vystavuje'));
|
|
karta.tstMatPozad:= VarToStr(FieldByNameValues('Atest_Material_Pozaduje'));
|
|
|
|
karta.tstJazyk:= VarToStr(FieldByNameValues('Atest_Jazyk'));
|
|
|
|
if not TryStrToFloat(VarToStr(FieldByNameValues('HmotnostStrom')), karta.hmotStrom) then
|
|
karta.hmotStrom:= 0;
|
|
|
|
if not TryStrToFloat(VarToStr(FieldByNameValues('HmotnostSkorepiny')), karta.hmotSkor) then
|
|
karta.hmotSkor:= 0;
|
|
|
|
if not TryStrToInt(VarToStr(FieldByNameValues('PrvniObal')), karta.prvniObal) then
|
|
karta.prvniObal:= 0;
|
|
|
|
karta.vlastnik:= StrToInt(VarToStr(FieldByNameValues('Vlastnik')));
|
|
|
|
if not TryStrToFloat(VarToStr(FieldByNameValues('Hmotnost')), karta.hmot) then
|
|
karta.hmot:= 0;
|
|
|
|
if not TryStrToFloat(VarToStr(FieldByNameValues('HmotnostBrutto')), karta.hmotBrt) then
|
|
karta.hmotBrt:= 0;
|
|
if not TryStrToFloat(VarToStr(FieldByNameValues('HmotVoskDilce')), karta.hmotVoskD) then
|
|
karta.hmotVoskD:= 0;
|
|
|
|
{
|
|
karta.odlitek = 'SELECT '
|
|
}
|
|
|
|
karta.incoterms:= VarToStr(FieldByNameValues('Incoterms'));
|
|
kOdlitek.cisloPKZ:= VarToStr(FieldByNameValues('CisloPKZ'));
|
|
|
|
karta.odrez:= Trim(VarToStr(FieldByNameValues('Odrez')));
|
|
if (karta.odrez.Length>1) then
|
|
karta.odrez:= IfThen(karta.odrez.ToLower='false','N','A');
|
|
karta.sarze:= Trim(VarToStr(FieldByNameValues('Sarzovat')));
|
|
if (karta.sarze.Length>1) then
|
|
karta.sarze:= IfThen(karta.sarze.ToLower='false','N','A');
|
|
karta.legPripl:= Trim(VarToStr(FieldByNameValues('LegovaciPriplatek')));
|
|
if (karta.legPripl.Length>1) then
|
|
karta.legPripl:= IfThen(karta.legPripl.ToLower='false','N','A');
|
|
|
|
|
|
karta.prurezVt:= VarToStr(FieldByNameValues('PrurezVtocku'));
|
|
karta.prurezVt2:= VarToStr(FieldByNameValues('PrurezVtocku2'));
|
|
|
|
karta.garant:= Trim(VarToStr(FieldByNameValues('Garant')));
|
|
|
|
karta.specifOdl:= Trim(VarToStr(FieldByNameValues('SpecifikaceOdl')));
|
|
karta.specifObr:= Trim(VarToStr(FieldByNameValues('SpecifikaceObr')));
|
|
karta.lisSkup:= StrToInt(VarToStr(FieldValues(2)));
|
|
karta.lisSkup2:= StrToInt(VarToStr(FieldValues(4)));
|
|
karta.poznamka:= VarToStr(FieldByNameValues('Poznamka'));
|
|
result:= true;
|
|
end;
|
|
|
|
end;
|
|
|
|
|
|
procedure TformOdlitek.NactiParametry;
|
|
var lSQL, matOdl, lng: string;
|
|
ex: Extended;
|
|
i: integer;
|
|
begin
|
|
matOdl:= helUtils.getHeliosStrVal(Helios, '', ' SELECT MatecniOdlitek FROM ' + tblOdlitky + ' WHERE ID=' + idOdl.ToString);
|
|
if (matOdl<>'') then
|
|
begin
|
|
idOdl:= helUtils.getHeliosIntVal(Helios, 0, ' SELECT ID FROM ' + tblOdlitky + ' WHERE Odlitek=N' + matOdl.QuotedString);
|
|
if (idOdl=0) then
|
|
with Helios.OpenSQL('INSERT ' + tblOdlitky + ' (Odlitek, JeNovaVetaEditor) VALUES (N' + matOdl.QuotedString + ', 1); SELECT SCOPE_IDENTITY()') do
|
|
if (RecordCount=1) then
|
|
idOdl:= StrToInt(VarToStr(FieldValues(0)));
|
|
mamMatOdlitek:= true;
|
|
end;
|
|
|
|
NactiParametryKarty (idOdl, kOdlitek);
|
|
NactiParametryKarty (idOdlRodic, kRodic);
|
|
|
|
idProUpd:= IfThen(idOdlRodic=0, idOdl, idOdlRodic);
|
|
|
|
edtDruhFor.Text:= RodicNeboPotomekS(kRodic.frmDruh, kOdlitek.frmDruh, false);
|
|
if (edtDruhFor.Text='') and (kRodic.frmDruh<>'') then
|
|
edtDruhFor.Text:= kRodic.frmDruh;
|
|
edtKsFor.Value:= RodicNeboPotomekI(kRodic.ksVeForme, kOdlitek.ksVeForme);
|
|
if (edtKsFor.Value=0) and (kRodic.ksVeForme>0) then
|
|
edtKsFor.Value:= kRodic.ksVeForme;
|
|
edtDruhForA.Text:= RodicNeboPotomekS(kRodic.frmDruhAlt, kOdlitek.frmDruhAlt, false);
|
|
if (edtDruhForA.Text='') and (kRodic.frmDruhAlt<>'') then
|
|
edtDruhForA.Text:= kRodic.frmDruhAlt;
|
|
edtKsForA.Value:= RodicNeboPotomekI(kRodic.ksVeFormeAlt, kOdlitek.ksVeFormeAlt);
|
|
if (edtKsForA.Value=0) and (kRodic.ksVeFormeAlt>0) then
|
|
edtKsForA.Value:= kRodic.ksVeFormeAlt;
|
|
edtStrNaTavbu.Value:= RodicNeboPotomekI(kRodic.strNaTavbu, kOdlitek.strNaTavbu);
|
|
if (edtStrNaTavbu.Value=0) and (kRodic.strNaTavbu>0) then
|
|
edtStrNaTavbu.Value:= kRodic.strNaTavbu;
|
|
edtDruhVtoku.Text:= RodicNeboPotomekS(kRodic.druhVtokuTxt, kOdlitek.druhVtokuTxt, false);
|
|
if (edtDruhVtoku.Text='') and (kRodic.druhVtokuTxt<>'') then
|
|
edtDruhVtoku.Text:= kRodic.druhVtokuTxt;
|
|
edtDoplDil1.Text:= RodicNeboPotomekS(kRodic.doplDil1Txt, kOdlitek.doplDil1Txt, false);
|
|
if (edtDoplDil1.Text='') and (kRodic.doplDil1Txt<>'') then
|
|
edtDoplDil1.Text:= kRodic.doplDil1Txt;
|
|
edtDoplDil2.Text:= RodicNeboPotomekS(kRodic.doplDil2Txt, kOdlitek.doplDil2Txt, false);
|
|
if (edtDoplDil2.Text='') and (kRodic.doplDil2Txt<>'') then
|
|
edtDoplDil2.Text:= kRodic.doplDil2Txt;
|
|
edtDoplDil3.Text:= RodicNeboPotomekS(kRodic.doplDil3Txt, kOdlitek.doplDil3Txt, false);
|
|
if (edtDoplDil3.Text='') and (kRodic.doplDil3Txt<>'') then
|
|
edtDoplDil3.Text:= kRodic.doplDil3Txt;
|
|
|
|
if (kRodic.matecniOdlitek<>kRodic.odlitek) then
|
|
edtMatOdlit.Text:= kRodic.matecniOdlitek
|
|
else
|
|
edtMatOdlit.Text:= '';
|
|
|
|
edtKSNaStrom.Value:= RodicNeboPotomekI(kRodic.ksNaStrom, kOdlitek.ksNaStrom);
|
|
if (edtKSNaStrom.Value=0) and (kRodic.ksNaStrom>0) then
|
|
edtKSNaStrom.Value:= kRodic.ksNaStrom;
|
|
edtDruhTech.Text:= RodicNeboPotomekS(kRodic.druhTech, kOdlitek.druhTech, false);
|
|
if (edtDruhTech.Text='') and (kRodic.druhTech<>'') then
|
|
edtDruhTech.Text:= kRodic.druhTech;
|
|
edtKsDopl1.Value:= RodicNeboPotomekI(kRodic.ksDoplDil1, kOdlitek.ksDoplDil1);
|
|
if (edtKsDopl1.Value=0) and (kRodic.ksDoplDil1>0) then
|
|
edtKsDopl1.Value:= kRodic.ksDoplDil1;
|
|
edtKsDopl2.Value:= RodicNeboPotomekI(kRodic.ksDoplDil2, kOdlitek.ksDoplDil2);
|
|
if (edtKsDopl2.Value=0) and (kRodic.ksDoplDil2>0) then
|
|
edtKsDopl2.Value:= kRodic.ksDoplDil2;
|
|
edtKsDopl3.Value:= RodicNeboPotomekI(kRodic.ksDoplDil3, kOdlitek.ksDoplDil3);
|
|
if (edtKsDopl3.Value=0) and (kRodic.ksDoplDil3>0) then
|
|
edtKsDopl3.Value:= kRodic.ksDoplDil3;
|
|
edtPocetVetvi.Value:= RodicNeboPotomekI(kRodic.pocetVetv, kOdlitek.pocetVetv);
|
|
if (edtPocetVetvi.Value=0) and (kRodic.pocetVetv>0) then
|
|
edtPocetVetvi.Value:= kRodic.pocetVetv;
|
|
edtPocetVetviA.Value:= RodicNeboPotomekI(kRodic.pocetVetvAlt, kOdlitek.pocetVetvAlt);
|
|
if (edtPocetVetviA.Value=0) and (kRodic.pocetVetvAlt>0) then
|
|
edtPocetVetviA.Value:= kRodic.pocetVetvAlt;
|
|
edtKsEtaz.Value:= RodicNeboPotomekI(kRodic.ksVEtazi, kOdlitek.ksVEtazi);
|
|
if (edtKsEtaz.Value=0) and (kRodic.ksVEtazi>0) then
|
|
edtKsEtaz.Value:= kRodic.ksVEtazi;
|
|
edtLisCas.Value:= RodicNeboPotomekI(kRodic.lisCas, kOdlitek.lisCas);
|
|
if (edtLisCas.Value=0) and (kRodic.lisCas>0) then
|
|
edtLisCas.Value:= kRodic.lisCas;
|
|
edtLisCas2.Value:= RodicNeboPotomekI(kRodic.lisCas2, kOdlitek.lisCas2);
|
|
if (edtLisCas2.Value=0) and (kRodic.lisCas2>0) then
|
|
edtLisCas2.Value:= kRodic.lisCas2;
|
|
edtPozFor.Value:= RodicNeboPotomekI(kRodic.pozicVeFrm, kOdlitek.pozicVeFrm);
|
|
if (edtPozFor.Value=0) and (kRodic.pozicVeFrm>0) then
|
|
edtPozFor.Value:= kRodic.pozicVeFrm;
|
|
edtPozForA.Value:= RodicNeboPotomekI(kRodic.pozicVeFrmAlt, kOdlitek.pozicVeFrmAlt);
|
|
if (edtPozForA.Value=0) and (kRodic.pozicVeFrmAlt>0) then
|
|
edtPozForA.Value:= kRodic.pozicVeFrmAlt;
|
|
|
|
edtTeplotaMin.Value:= RodicNeboPotomekI(kRodic.teplMin, kOdlitek.teplMin);
|
|
if (edtTeplotaMin.Value=0) and (kRodic.teplMin>0) then
|
|
edtTeplotaMin.Value:= kRodic.teplMin;
|
|
edtTeplotaMax.Value:= RodicNeboPotomekI(kRodic.teplMax, kOdlitek.teplMax);
|
|
if (edtTeplotaMax.Value=0) and (kRodic.teplMax>0) then
|
|
edtTeplotaMax.Value:= kRodic.teplMax;
|
|
|
|
edtKsNaPlate.Value:= RodicNeboPotomekI(kRodic.ksNaPlate, kOdlitek.ksNaPlate);
|
|
if (edtKsNaPlate.Value=0) and (kRodic.ksNaPlate>0) then
|
|
edtKsNaPlate.Value:= kRodic.ksNaPlate;
|
|
|
|
|
|
edtVstrikCas.Value:= RodicNeboPotomekI(kRodic.casVstrik, kOdlitek.casVstrik);
|
|
if (edtVstrikCas.Value=0) and (kRodic.casVstrik>0) then
|
|
edtVstrikCas.Value:= kRodic.casVstrik;
|
|
|
|
edtVstrikCas2.Value:= RodicNeboPotomekI(kRodic.casVstrik2, kOdlitek.casVstrik2);
|
|
if (edtVstrikCas2.Value=0) and (kRodic.casVstrik2>0) then
|
|
edtVstrikCas2.Value:= kRodic.casVstrik2;
|
|
|
|
cbAtestTepel.Checked:= kRodic.koopTpl;
|
|
if not(cbAtestTepel.Checked) then
|
|
mPoznTepel.Enabled:= false;
|
|
mPoznTepel.Lines.Text:= kRodic.koopTplPop;
|
|
edtDruhTepel.Text:= kRodic.tstTZDruh.ToString;
|
|
if (edtDruhTepel.Text='0') then
|
|
edtDruhTepel.Text:= '';
|
|
cbVystTepel.ItemIndex:= cbVystTepel.Items.IndexOf(kRodic.tstTZVyst);
|
|
cbPozadTepel.ItemIndex:= cbPozadTepel.Items.IndexOf(kRodic.tstTZPozad);
|
|
|
|
cbVoskJadra.Checked:= kRodic.voskJadra;
|
|
cbVoskJadraMocovina.Checked:= kRodic.voskJadraMoc;
|
|
cbVoskCepy.Checked:= kRodic.voskCepy;
|
|
cbVoskChladitka.Checked:= kRodic.voskChlad;
|
|
cbVoskRizikovaPoz.Checked:= kRodic.voskRiziko;
|
|
|
|
cbAtestObr.Checked:= kRodic.koopObrab;
|
|
if not(cbAtestObr.Checked) then
|
|
mPoznObr.Enabled:= false;
|
|
mPoznObr.Lines.Text:= kRodic.koopObrabPop;
|
|
edtDruhObr.Text:= kRodic.tstObrabDruh.ToString;
|
|
if (edtDruhObr.Text='0') then
|
|
edtDruhObr.Text:= '';
|
|
cbVystObr.ItemIndex:= cbVystObr.Items.IndexOf(kRodic.tstObrabVyst);
|
|
cbPozadObr.ItemIndex:= cbPozadObr.Items.IndexOf(kRodic.tstObrabPozad);
|
|
|
|
cbAtestPovrch.Checked:= kRodic.tstPovrch;
|
|
if not(cbAtestPovrch.Checked) then
|
|
mPoznPovrch.Enabled:= false;
|
|
mPoznPovrch.Lines.Text:= kRodic.tstPovrchPop;
|
|
edtDruhPovrch.Text:= kRodic.tstPovrchDruh.ToString;
|
|
if (edtDruhPovrch.Text='0') then
|
|
edtDruhPovrch.Text:= '';
|
|
cbVystPU.ItemIndex:= cbVystPU.Items.IndexOf(kRodic.tstPovrchVyst);
|
|
cbPozadPU.ItemIndex:= cbPozadPU.Items.IndexOf(kRodic.tstPovrchPozad);
|
|
|
|
cbAtestDefekt.Checked:= kRodic.koopDefekt;
|
|
if not(cbAtestDefekt.Checked) then
|
|
mPoznDefekt.Enabled:= false;
|
|
mPoznDefekt.Lines.Text:= kRodic.koopDefektPop;
|
|
edtDruhDefekt.Text:= kRodic.tstDefektDruh.ToString;
|
|
if (edtDruhDefekt.Text='0') then
|
|
edtDruhDefekt.Text:= '';
|
|
cbVystDefekt.ItemIndex:= cbVystDefekt.Items.IndexOf(kRodic.tstDefektVyst);
|
|
cbPozadDefekt.ItemIndex:= cbPozadDefekt.Items.IndexOf(kRodic.tstDefektPozad);
|
|
|
|
cbAtestJine.Checked:= kRodic.koopJine;
|
|
if not(cbAtestJine.Checked) then
|
|
mPoznJine.Enabled:= false;
|
|
mPoznJine.Lines.Text:= kRodic.koopJinePop;
|
|
edtDruhJine.Text:= kRodic.tstJineDruh.ToString;
|
|
if (edtDruhJine.Text='0') then
|
|
edtDruhJine.Text:= '';
|
|
cbVystJine.ItemIndex:= cbVystJine.Items.IndexOf(kRodic.tstJineVyst);
|
|
cbPozadJine.ItemIndex:= cbPozadJine.Items.IndexOf(kRodic.tstJinePozad);
|
|
|
|
cbAtestMat.Checked:= kRodic.tstMat;
|
|
edtDruhMat.Text:= kRodic.tstMatDruh.ToString;
|
|
if (edtDruhMat.Text='0') then
|
|
edtDruhMat.Text:= '';
|
|
cbVystMat.ItemIndex:= cbVystMat.Items.IndexOf(kRodic.tstMatVyst);
|
|
cbPozadMat.ItemIndex:= cbPozadMat.Items.IndexOf(kRodic.tstMatPozad);
|
|
|
|
lng:= kRodic.material;
|
|
if (lng='') then
|
|
cbMaterial.ItemIndex:= -1
|
|
else
|
|
begin
|
|
lng:= helUtils.getHeliosStrVal(Helios, '', 'SELECT Kod FROM ' + tblMaterial + ' WHERE Znacka=N' + lng.QuotedString) + ' : ' + lng;
|
|
cbMaterial.ItemIndex:= cbMaterial.Items.IndexOf(lng);
|
|
end;
|
|
|
|
|
|
lng:= kRodic.tstJazyk;
|
|
cbJazyk.ItemIndex:= 0;
|
|
if (lng='DE') then
|
|
cbJazyk.ItemIndex:= 1;
|
|
if (lng='EN') then
|
|
cbJazyk.ItemIndex:= 2;
|
|
|
|
|
|
i:= helUtils.getHeliosIntVal(Helios, -1, 'SELECT SkupinaFirem FROM ' + tblOdlitky + ' WHERE ID=' + idOdlRodic.ToString);
|
|
cbSkupFirem.ItemIndex:= i + 1;
|
|
|
|
cbPrvniObal.ItemIndex:= RodicNeboPotomekI(kRodic.prvniObal, kOdlitek.prvniObal);
|
|
|
|
edtCisOrg.Text:= RodicNeboPotomekS(kRodic.vlastnik.ToString, kOdlitek.vlastnik.ToString, false);
|
|
if (edtCisOrg.Text='-1') then
|
|
edtCisOrg.Text:= '';
|
|
if (edtCisOrg.Text<>'') then
|
|
edtOrg.Text:= helUtils.getHeliosStrVal(Helios, '', 'SELECT Nazev FROM ' + tblCOrg + ' WHERE CisloOrg=' + edtCisOrg.Text);
|
|
|
|
edtHmotNetto.Value:= RodicNeboPotomekE(kRodic.hmot, kOdlitek.hmot);
|
|
if (edtHmotNetto.Value=0) and (kRodic.hmot>0) then
|
|
edtHmotNetto.Value:= kRodic.hmot;
|
|
edtHmotBrutto.Value:= RodicNeboPotomekE(kRodic.hmotBrt, kOdlitek.hmotBrt);
|
|
if (edtHmotBrutto.Value=0) and (kRodic.hmotBrt>0) then
|
|
edtHmotBrutto.Value:= kRodic.hmotBrt;
|
|
edtHmVoskD.Value:= RodicNeboPotomekE(kRodic.hmotVoskD, kOdlitek.hmotVoskD);
|
|
if (edtHmVoskD.Value=0) and (kRodic.hmotVoskD>0) then
|
|
edtHmVoskD.Value:= kRodic.hmotVoskD;
|
|
edtHmotStr.Value:= RodicNeboPotomekE(kRodic.hmotStrom, kOdlitek.hmotStrom);
|
|
if (edtHmotStr.Value=0) and (kRodic.hmotStrom>0) then
|
|
edtHmotStr.Value:= kRodic.hmotStrom;
|
|
edtHmotSkor.Value:= RodicNeboPotomekE(kRodic.hmotSkor, kOdlitek.hmotSkor);
|
|
if (edtHmotSkor.Value=0) and (kRodic.hmotSkor>0) then
|
|
edtHmotSkor.Value:= kRodic.hmotSkor;
|
|
|
|
ZmenaVypoctu;
|
|
|
|
edtIncoterms.Text:= RodicNeboPotomekS(kRodic.incoterms, kOdlitek.incoterms, false);
|
|
if (edtIncoterms.Text='') and (kRodic.incoterms<>'') then
|
|
edtIncoterms.Text:= kRodic.incoterms;
|
|
|
|
cbOdrez.ItemIndex:= 0;
|
|
lng:= RodicNeboPotomekS(kRodic.odrez, kOdlitek.odrez, false);
|
|
if (lng='A') then
|
|
cbOdrez.ItemIndex:= 1;
|
|
if (lng='N') then
|
|
cbOdrez.ItemIndex:= 2;
|
|
|
|
cbSarze.ItemIndex:= 0;
|
|
lng:= RodicNeboPotomekS(kRodic.sarze, kOdlitek.sarze, false);
|
|
if (lng='A') then
|
|
cbSarze.ItemIndex:= 1;
|
|
if (lng='N') then
|
|
cbSarze.ItemIndex:= 2;
|
|
|
|
cbLegPripl.ItemIndex:= 0;
|
|
lng:= RodicNeboPotomekS(kRodic.legPripl, kOdlitek.legPripl, false);
|
|
if (lng='A') then
|
|
cbLegPripl.ItemIndex:= 1;
|
|
if (lng='N') then
|
|
cbLegPripl.ItemIndex:= 2;
|
|
|
|
edtPrurezVtk1.Text:= RodicNeboPotomekS(kRodic.prurezVt, kOdlitek.prurezVt, false);
|
|
if (edtPrurezVtk1.Text='') and (kRodic.prurezVt<>'') then
|
|
edtPrurezVtk1.Text:= kRodic.prurezVt;
|
|
edtPrurezVtk2.Text:= RodicNeboPotomekS(kRodic.prurezVt2, kOdlitek.prurezVt2, false);
|
|
if (edtPrurezVtk2.Text='') and (kRodic.prurezVt2<>'') then
|
|
edtPrurezVtk2.Text:= kRodic.prurezVt2;
|
|
|
|
edtGarant.Text:= RodicNeboPotomekS(kRodic.garant, kOdlitek.garant, false);
|
|
if (edtGarant.Text='') and (kRodic.garant<>'') then
|
|
edtGarant.Text:= kRodic.garant;
|
|
|
|
cbSpecVyrOdlitek.ItemIndex:= 0;
|
|
lng:= RodicNeboPotomekS (kRodic.specifOdl, kOdlitek.specifOdl, false);
|
|
if (lng='S') then
|
|
cbSpecVyrOdlitek.ItemIndex:= 1;
|
|
if (lng='P') then
|
|
cbSpecVyrOdlitek.ItemIndex:= 2;
|
|
|
|
cbSpecVyrObrobek.ItemIndex:= 0;
|
|
lng:= RodicNeboPotomekS (kRodic.specifObr, kOdlitek.specifObr, false);
|
|
if (lng='S') then
|
|
cbSpecVyrObrobek.ItemIndex:= 1;
|
|
if (lng='P') then
|
|
cbSpecVyrObrobek.ItemIndex:= 2;
|
|
|
|
edtLisSkup.Text:= RodicNeboPotomekS (kRodic.lisSkup.ToString, kOdlitek.lisSkup.ToString, false);
|
|
if (edtLisSkup.Text='0') and (kRodic.lisSkup.ToString<>'0') then
|
|
edtLisSkup.Text:= kRodic.lisSkup.ToString;
|
|
if (edtLisSkup.Text='0') then
|
|
edtLisSkup.Text:= '';
|
|
|
|
edtLisSkup2.Text:= RodicNeboPotomekS (kRodic.lisSkup2.ToString, kOdlitek.lisSkup2.ToString, false);
|
|
if (edtLisSkup2.Text='0') and (kRodic.lisSkup2.ToString<>'0') then
|
|
edtLisSkup2.Text:= kRodic.lisSkup2.ToString;
|
|
if (edtLisSkup2.Text='0') then
|
|
edtLisSkup2.Text:= '';
|
|
|
|
// parametry rozdilne u obrobku (rodice) a odlitku
|
|
kOdlitek.vykres:= helUtils.getHeliosStrVal (Helios, '', 'SELECT Vykres FROM ' + tblOdlitky + ' WHERE ID=' + idOdlRodic.ToString);
|
|
edtVykres.Text:= kOdlitek.vykres;
|
|
if (edtVykres.Text='') and (kRodic.vykres<>'') then
|
|
edtVykres.Text:= kRodic.vykres;
|
|
|
|
kOdlitek.poznamka:= helUtils.getHeliosStrVal (Helios, '', 'SELECT Poznamka FROM ' + tblOdlitky + ' WHERE ID=' + idOdlRodic.ToString);
|
|
mPozn.Text:= kOdlitek.poznamka;
|
|
if (mPozn.Text='') and (kRodic.poznamka<>'') then
|
|
mPozn.Text:= kRodic.poznamka;
|
|
|
|
kOdlitek.hmotObrob:= helUtils.getHeliosFloatVal (Helios, 0, 'SELECT HmotnostObrobku FROM ' + tblOdlitky + ' WHERE ID=' + idOdlRodic.ToString);
|
|
edtHmotObr.Value:= kOdlitek.hmotObrob;
|
|
if (edtHmotObr.Value=0) and (kRodic.hmotObrob>0) then
|
|
edtHmotObr.Value:= kRodic.hmotObrob;
|
|
|
|
kOdlitek.cisloPKZ:= helUtils.getHeliosStrVal (Helios, '', 'SELECT CisloPKZ FROM ' + tblOdlitky + ' WHERE ID=' + idOdlRodic.ToString);
|
|
edtPKZ.Text:= kOdlitek.cisloPKZ;
|
|
if (edtPKZ.Text='') and (kRodic.cisloPKZ<>'') then
|
|
edtPKZ.Text:= kRodic.cisloPKZ;
|
|
|
|
end;
|
|
|
|
|
|
|
|
procedure TformOdlitek.btnOKClick (Sender: TObject);
|
|
var lSQL, lng, matTxt: string;
|
|
i,idMatOdl: integer;
|
|
begin
|
|
if not(jenView) then
|
|
begin
|
|
i:= 0;
|
|
while (i<Self.ComponentCount-1) do
|
|
begin
|
|
if (Self.Components[i] is TLabeledEdit) then
|
|
(Self.Components[i] as TLabeledEdit).Text:= Trim((Self.Components[i] as TLabeledEdit).Text);
|
|
if (Self.Components[i] is TEdit) then
|
|
(Self.Components[i] as TEdit).Text:= Trim((Self.Components[i] as TEdit).Text);
|
|
if (Self.Components[i] is TMemo) then
|
|
(Self.Components[i] as TMemo).Text:= Trim((Self.Components[i] as TMemo).Text);
|
|
Inc(i);
|
|
end;
|
|
|
|
if (edtMatOdlit.Text='') then
|
|
begin
|
|
idOdl:= idOdlRodic;
|
|
Helios.ExecSQL ('UPDATE ' + tblOdlitky + ' SET MatecniOdlitek=N'''' WHERE ID=' + idOdl.ToString);
|
|
end
|
|
else
|
|
if (idOdl>0) and (idOdlRodic>0) then
|
|
Helios.ExecSQL ('UPDATE ' + tblOdlitky + ' SET MatecniOdlitek=N' + edtMatOdlit.Text.QuotedString + ' WHERE ID=' + idOdlRodic.ToString);
|
|
|
|
idProUpd:= IfThen(idOdlRodic=0, idOdl, idOdlRodic);
|
|
|
|
lSQL:= 'UPDATE ' + tblOdlitky + ' SET DruhTechnologie=' + NullOrNQuotedStr (edtDruhTech.Text) + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(DruhTechnologie,N'''')<>' + NQuotedStr (edtDruhTech.Text) + CRLF;
|
|
if (idK>0) then
|
|
lSQL:= lSQL + 'UPDATE ' + tblKZe + ' SET _DruhTechnologie=' + NullOrNQuotedStr (edtDruhTech.Text) + ' WHERE ID=' + idK.ToString + CRLF;
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET FormaDruh=' + NullOrNQuotedStr (edtDruhFor.Text) + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(FormaDruh,N'''')<>' + NQuotedStr (edtDruhFor.Text) + CRLF;
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET KSveForme=' + edtKsFor.ValueInt.ToString + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(KSveForme,0)<>' + edtKsFor.ValueInt.ToString + CRLF;
|
|
if (idK>0) then
|
|
lSQL:= lSQL + 'UPDATE ' + tblKZe + ' SET _KsVeForme=' + IfThen(edtKsFor.Value=0, 'NULL', edtKsFor.ValueInt.ToString) + ' WHERE ID=' + idK.ToString + CRLF;
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET FormaDruhAlt=' + NullOrNQuotedStr (edtDruhForA.Text) + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(FormaDruhAlt,N'''')<>' + NQuotedStr (edtDruhForA.Text) + CRLF;
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET KSveFormeAlt=' + edtKsForA.Value.ToString + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(KSveFormeAlt,0)<>' + edtKsForA.Value.ToString + CRLF;
|
|
|
|
matTxt:= '';
|
|
if (cbMaterial.ItemIndex>-1) then
|
|
if (Pos(' : ', cbMaterial.Text)>0) then
|
|
matTxt:= MidStr(cbMaterial.Text, Pos(' : ', cbMaterial.Text)+3, 255);
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET Material=' + NullOrNQuotedStr (matTxt) + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(Material,N'''')<>' + NQuotedStr (matTxt) + CRLF;
|
|
if (idOdlRodic>0) and (idOdl<>idOdlRodic) then
|
|
begin
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET Material=' + NullOrNQuotedStr (matTxt) + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idOdlRodic.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(Material,N'''')<>' + NQuotedStr (matTxt) + CRLF;
|
|
end;
|
|
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET TeplotaMin=' + edtTeplotaMin.Value.ToString + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(TeplotaMin,0)<>' + edtTeplotaMin.Value.ToString + CRLF;
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET TeplotaMax=' + edtTeplotaMax.Value.ToString + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(TeplotaMax,0)<>' + edtTeplotaMax.Value.ToString + CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET PozicVeForme=' + edtPozFor.Value.ToString + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(PozicVeForme,0)<>' + edtPozFor.Value.ToString + CRLF;
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET PozicVeFormeAlt=' + edtPozForA.Value.ToString + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(PozicVeFormeAlt,0)<>' + edtPozForA.Value.ToString + CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET StromuNaTavbu=' + edtStrNaTavbu.Value.ToString + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(StromuNaTavbu,0)<>' + edtStrNaTavbu.Value.ToString + CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET LisovaciCas=' + edtLisCas.Value.ToString + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(LisovaciCas,0)<>' + edtLisCas.Value.ToString + CRLF;
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET LisovaciCas2=' + edtLisCas2.Value.ToString + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(LisovaciCas2,0)<>' + edtLisCas2.Value.ToString + CRLF;
|
|
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET VstrikCas=' + edtVstrikCas.Value.ToString + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(VstrikCas,0)<>' + edtVstrikCas.Value.ToString + CRLF;
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET VstrikCas2=' + edtVstrikCas2.Value.ToString + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(VstrikCas2,0)<>' + edtVstrikCas2.Value.ToString + CRLF;
|
|
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET VoskJadra=' + IfThen(cbVoskJadra.Checked,'1','0') + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(VoskJadra,0)<>' + IfThen(cbVoskJadra.Checked,'1','0') + CRLF;
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET VoskJadraMocovina=' + IfThen(cbVoskJadraMocovina.Checked,'1','0') + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(VoskJadraMocovina,0)<>' + IfThen(cbVoskJadraMocovina.Checked,'1','0') + CRLF;
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET VoskCepy=' + IfThen(cbVoskCepy.Checked,'1','0') + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(VoskCepy,0)<>' + IfThen(cbVoskCepy.Checked,'1','0') + CRLF;
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET VoskChladitka=' + IfThen(cbVoskChladitka.Checked,'1','0') + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(VoskChladitka,0)<>' + IfThen(cbVoskChladitka.Checked,'1','0') + CRLF;
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET VoskRiziko=' + IfThen(cbVoskRizikovaPoz.Checked,'1','0') + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(VoskRiziko,0)<>' + IfThen(cbVoskRizikovaPoz.Checked,'1','0') + CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET DoplDil1Txt=' + NullOrNQuotedStr (edtDoplDil1.Text) + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(DoplDil1Txt,N'''')<>' + NQuotedStr (edtDoplDil1.Text) + CRLF;
|
|
|
|
|
|
lSQL:= lSQL + 'MERGE dbo._hdc_TabOdlitky AS T USING (SELECT ID, SKP, RegCis FROM dbo.TabKmenZbozi WHERE SKP<>N'''' AND SkupZbo=N''P10''';
|
|
lSQL:= lSQL + ' AND LEFT(RIGHT(REPLACE(dbo.ef_RemoveAlpha(RegCis),N''-'',N''''),4),1)=N''1'') AS S ON (S.RegCis=T.Odlitek)';
|
|
lSQL:= lSQL + ' WHEN MATCHED AND T.DoplDil1Txt=S.SKP AND S.RegCis LIKE N''%-''+CASE WHEN T.DruhTechnologie IN (N''1'', N''5'') THEN N''M'' ELSE N''S''';
|
|
lSQL:= lSQL + ' END THEN UPDATE SET T.DoplDil1=S.ID, T.Zmenil=SUSER_SNAME(), T.DatZmeny=GETDATE();' + CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET DoplDil2Txt=' + NullOrNQuotedStr (edtDoplDil2.Text) + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(DoplDil2Txt,N'''')<>' + NQuotedStr (edtDoplDil2.Text) + CRLF;
|
|
lSQL:= lSQL + 'MERGE dbo._hdc_TabOdlitky AS T USING (SELECT ID, SKP, RegCis FROM dbo.TabKmenZbozi WHERE SKP<>N'''' AND SkupZbo=N''P10''';
|
|
lSQL:= lSQL + ' AND LEFT(RIGHT(REPLACE(dbo.ef_RemoveAlpha(RegCis),N''-'',N''''),4),1)=N''1'') AS S ON (S.RegCis=T.Odlitek)';
|
|
lSQL:= lSQL + ' WHEN MATCHED AND T.DoplDil2Txt=S.SKP AND S.RegCis LIKE N''%-''+CASE WHEN T.DruhTechnologie IN (N''1'',N''5'') THEN N''M'' ELSE N''S''';
|
|
lSQL:= lSQL + ' END THEN UPDATE SET T.DoplDil2=S.ID, T.Zmenil=SUSER_SNAME(), T.DatZmeny=GETDATE();' + CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET DoplDil3Txt=' + NullOrNQuotedStr (edtDoplDil3.Text) + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(DoplDil3Txt,N'''')<>' + NQuotedStr (edtDoplDil3.Text) + CRLF;
|
|
lSQL:= lSQL + 'MERGE dbo._hdc_TabOdlitky AS T USING (SELECT ID, SKP, RegCis FROM dbo.TabKmenZbozi WHERE SKP<>N'''' AND SkupZbo=N''P10''';
|
|
lSQL:= lSQL + ' AND LEFT(RIGHT(REPLACE(dbo.ef_RemoveAlpha(RegCis),N''-'',N''''),4),1)=N''1'') AS S ON (S.RegCis=T.Odlitek)';
|
|
lSQL:= lSQL + ' WHEN MATCHED AND T.DoplDil3Txt=S.SKP AND S.RegCis LIKE N''%-''+CASE WHEN T.DruhTechnologie IN (N''1'',N''5'') THEN N''M'' ELSE N''S''';
|
|
lSQL:= lSQL + ' END THEN UPDATE SET T.DoplDil3=S.ID, T.Zmenil=SUSER_SNAME(), T.DatZmeny=GETDATE();' + CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET DruhVtokuTxt=' + NullOrNQuotedStr (edtDruhVtoku.Text) + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(DruhVtokuTxt,N'''')<>' + NQuotedStr (edtDruhVtoku.Text) + CRLF;
|
|
lSQL:= lSQL + 'MERGE dbo._hdc_TabOdlitky AS T USING (SELECT ID, SKP, RegCis FROM dbo.TabKmenZbozi WHERE SKP<>N'''' AND SkupZbo=N''P10''';
|
|
lSQL:= lSQL + ' AND LEFT(RIGHT(REPLACE(dbo.ef_RemoveAlpha(RegCis),N''-'',N''''),4),1)=N''2'') AS S ON (S.RegCis=T.Odlitek)';
|
|
lSQL:= lSQL + ' WHEN MATCHED AND T.DruhVtokuTxt=S.SKP AND S.RegCis LIKE N''%-''+CASE WHEN T.DruhTechnologie IN (N''1'',N''5'') THEN N''M'' ELSE N''S''';
|
|
lSQL:= lSQL + ' END THEN UPDATE SET T.DruhVtoku=S.ID, T.Zmenil=SUSER_SNAME(), T.DatZmeny=GETDATE();' + CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET DruhVtoku=' + kOdlitek.druhVtoku.ToString + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(DruhVtoku,-1)<>' + kOdlitek.druhVtoku.ToString;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET MatecniOdlitek=' + NullOrNQuotedStr (edtMatOdlit.Text, true) + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(MatecniOdlitek,N'''')<>Odlitek AND ISNULL(MatecniOdlitek,N'''')<>' + NQuotedStr(edtMatOdlit.Text) + CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET MatecniOdlitek=N'''' WHERE ID=' + idOdl.ToString + ' AND MatecniOdlitek=Odlitek' + CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET Vlastnik=' + IfThen(edtCisOrg.Text='', 'NULL', edtCisOrg.Text);
|
|
lSQL:= lSQL + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString + ' AND ISNULL(Vlastnik,-1)<>' + IfThen(edtCisOrg.Text='', '-1', edtCisOrg.Text) + CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET KSnaStrom=' + edtKSNaStrom.ValueInt.ToString + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(KSnaStrom,0)<>' + edtKSNaStrom.ValueInt.ToString + CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET KsDoplDil1=' + edtKsDopl1.ValueInt.ToString + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(KsDoplDil1,0)<>' + edtKsDopl1.ValueInt.ToString + CRLF;
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET KsDoplDil2=' + edtKsDopl2.ValueInt.ToString + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(KsDoplDil2,0)<>' + edtKsDopl2.ValueInt.ToString + CRLF;
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET KsDoplDil3=' + edtKsDopl3.ValueInt.ToString + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(KsDoplDil3,0)<>' + edtKsDopl3.ValueInt.ToString + CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET PocetVetvicek=' + edtPocetVetvi.ValueInt.ToString + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(PocetVetvicek,0)<>' + edtPocetVetvi.ValueInt.ToString + CRLF;
|
|
if (idK>0) then
|
|
lSQL:= lSQL + 'UPDATE ' + tblKZe + ' SET _VetvicekNaStrom=' + IfThen(edtPocetVetvi.ValueInt=0, 'NULL', edtPocetVetvi.ValueInt.ToString) + ' WHERE ID=' + idK.ToString + CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET PocetVetvicekAlt=' + edtPocetVetviA.Value.ToString + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(PocetVetvicekAlt,0)<>' + edtPocetVetviA.Value.ToString + CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET KSvEtazi=' + NullOrNumNoZero (edtKsEtaz.Value) + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(KSvEtazi,0)<>' + edtKsEtaz.ValueInt.ToString + CRLF;
|
|
if (idK>0) then
|
|
lSQL:= lSQL + 'UPDATE ' + tblKZe + ' SET _VetvicekNaEtaz=' + NullOrNumNoZero (edtKsEtaz.Value) + ' WHERE ID=' + idK.ToString + CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET HmotnostStrom=' + NullOrNumNoZero (edtHmotStr.Value) + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(HmotnostStrom,0)<>' + StringReplace(edtHmotStr.Value.ToString, ',', '.', [rfReplaceAll]) + CRLF;
|
|
if (idK>0) then
|
|
lSQL:= lSQL + 'UPDATE ' + tblKZe + ' SET _HmotnostStrom=' + NullOrNumNoZero (edtHmotStr.Value) + ' WHERE ID=' + idK.ToString + CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET HmotnostSkorepiny=' + NullOrNumNoZero (edtHmotSkor.Value) + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(HmotnostSkorepiny,0)<>' + StringReplace(edtHmotSkor.Value.ToString, ',', '.', [rfReplaceAll]) + CRLF;
|
|
if (idK>0) then
|
|
lSQL:= lSQL + 'UPDATE ' + tblKZe + ' SET _HmotnostSkorepiny=' + NullOrNumNoZero (edtHmotSkor.Value) + ' WHERE ID=' + idK.ToString + CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET Hmotnost=' + StringReplace(edtHmotNetto.Value.ToString, ',', '.', [rfReplaceAll]);
|
|
lSQL:= lSQL + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + IfThen(idOdlRodic=0, idOdl, idOdlRodic).ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(Hmotnost,0)<>' + StringReplace(edtHmotNetto.Value.ToString, ',', '.', [rfReplaceAll]) + CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET HmotnostBrutto=' + StringReplace(edtHmotBrutto.Value.ToString, ',', '.', [rfReplaceAll]);
|
|
lSQL:= lSQL + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(HmotnostBrutto,0)<>' + StringReplace(edtHmotBrutto.Value.ToString, ',', '.', [rfReplaceAll]) + CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET HmotVoskDilce=' + NullOrNumNoZero (edtHmVoskD.Value) + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(HmotVoskDilce,0)<>' + StringReplace(edtHmVoskD.Value.ToString, ',', '.', [rfReplaceAll]) + CRLF;
|
|
if (idK>0) then
|
|
lSQL:= lSQL + 'UPDATE ' + tblKZe + ' SET _HmotnostVD=' + NullOrNumNoZero (edtHmVoskD.Value) + ' WHERE ID=' + idK.ToString + CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET IncoTerms=' + NullOrNQuotedStr (edtIncoterms.Text) + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND IncoTerms<>' + NQuotedStr (edtIncoterms.Text) + CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET PrurezVtocku=' + NullOrNQuotedStr (edtPrurezVtk1.Text) + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(PrurezVtocku,N'''')<>' + NQuotedStr (edtPrurezVtk1.Text) + CRLF;
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET PrurezVtocku2=' + NullOrNQuotedStr (edtPrurezVtk2.Text) + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(PrurezVtocku2,N'''')<>' + NQuotedStr (edtPrurezVtk2.Text) + CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET Garant=' + NullOrNQuotedStr (edtGarant.Text, true) + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(Garant,N'''')<>' + NQuotedStr (edtGarant.Text) + CRLF;
|
|
|
|
lng:= '';
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET SpecifikaceOdl=';
|
|
case cbSpecVyrOdlitek.ItemIndex of
|
|
0: lng:= 'NULL';
|
|
1: lng:= 'S';
|
|
2: lng:= 'P';
|
|
end;
|
|
if (lng.Length>1) then
|
|
lSQL:= lSQL + 'NULL, Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString + ' AND SpecifikaceOdl IS NOT NULL' + CRLF
|
|
else
|
|
lSQL:= lSQL + NQuotedStr(lng) + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString + ' AND SpecifikaceOdl<>' + NQuotedStr (lng) + CRLF;
|
|
|
|
lng:= '';
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET Sarzovat=';
|
|
case cbSarze.ItemIndex of
|
|
0: lng:= 'NULL';
|
|
1: lng:= 'A';
|
|
2: lng:= 'N';
|
|
end;
|
|
if (lng.Length>1) then
|
|
lSQL:= lSQL + 'NULL, Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString + ' AND Sarzovat IS NOT NULL' + CRLF
|
|
else
|
|
lSQL:= lSQL + NQuotedStr (lng) + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString + ' AND ISNULL(Sarzovat,N'''')<>' + NQuotedStr (lng) + CRLF;
|
|
|
|
lng:= '';
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET SkupinaFirem=';
|
|
if (cbSkupFirem.ItemIndex<=0) then
|
|
lSQL:= lSQL + 'NULL'
|
|
else
|
|
lSQL:= lSQL + IntToStr(cbSkupFirem.ItemIndex-1);
|
|
lSQL:= lSQL + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString + ' AND (SkupinaFirem IS NULL OR SkupinaFirem<>';
|
|
lSQL:= lSQL + IntToStr(cbSkupFirem.ItemIndex-1) + ')' + CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET PrvniObal=' + cbPrvniObal.ItemIndex.ToString + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(PrvniObal,0)<>' + cbPrvniObal.ItemIndex.ToString + CRLF;
|
|
|
|
lng:= '';
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET SpecifikaceObr=';
|
|
case cbSpecVyrObrobek.ItemIndex of
|
|
0: lng:= 'NULL';
|
|
1: lng:= 'S';
|
|
2: lng:= 'P';
|
|
end;
|
|
if (lng.Length>1) then
|
|
lSQL:= lSQL + 'NULL, Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString + ' AND SpecifikaceObr IS NOT NULL' + CRLF
|
|
else
|
|
lSQL:= lSQL + 'N' + lng.QuotedString + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString + ' AND ISNULL(SpecifikaceObr,N'''')<>N' + QuotedStr(lng) + CRLF;
|
|
|
|
lng:= '';
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET LegovaciPriplatek=';
|
|
case cbLegPripl.ItemIndex of
|
|
0: lng:= 'NULL';
|
|
1: lng:= '1';
|
|
2: lng:= '0';
|
|
end;
|
|
if (lng.Length>1) then
|
|
lSQL:= lSQL + 'NULL, Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString + ' AND LegovaciPriplatek IS NOT NULL' + CRLF
|
|
else
|
|
lSQL:= lSQL + lng + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString + ' AND ISNULL(LegovaciPriplatek,-1)<>' + lng + CRLF;
|
|
if (idOdlRodic>0) and (idProUpd<>idOdlRodic) then
|
|
begin
|
|
lng:= '';
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET LegovaciPriplatek=';
|
|
case cbLegPripl.ItemIndex of
|
|
0: lng:= 'NULL';
|
|
1: lng:= '1';
|
|
2: lng:= '0';
|
|
end;
|
|
if (lng.Length>1) then
|
|
lSQL:= lSQL + 'NULL, Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idOdlRodic.ToString + ' AND LegovaciPriplatek IS NOT NULL' + CRLF
|
|
else
|
|
lSQL:= lSQL + lng + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idOdlRodic.ToString + ' AND ISNULL(LegovaciPriplatek,-1)<>' + lng + CRLF;
|
|
end;
|
|
|
|
|
|
|
|
lng:= '';
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET Odrez=';
|
|
case cbOdrez.ItemIndex of
|
|
0: lng:= 'NULL';
|
|
1: lng:= 'A';
|
|
2: lng:= 'N';
|
|
end;
|
|
if (lng.Length>1) then
|
|
lSQL:= lSQL + 'NULL, Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString + ' AND Odrez IS NOT NULL' + CRLF
|
|
else
|
|
lSQL:= lSQL + 'N' + lng.QuotedString + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString + ' AND ISNULL(Odrez,N'''')<>N' + lng.QuotedString + CRLF;
|
|
|
|
lng:= '';
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET Sarzovat=';
|
|
case cbSarze.ItemIndex of
|
|
0: lng:= 'NULL';
|
|
1: lng:= 'A';
|
|
2: lng:= 'N';
|
|
end;
|
|
if (lng.Length>1) then
|
|
lSQL:= lSQL + 'NULL, Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString + ' AND Sarzovat IS NOT NULL' + CRLF
|
|
else
|
|
lSQL:= lSQL + 'N' + lng.QuotedString + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString + ' AND ISNULL(Sarzovat,N'''')<>N' + lng.QuotedString + CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET LisovaciSkup=' + IfThen(edtLisSkup.Text='', 'NULL', edtLisSkup.Text) + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(LisovaciSkup,0)<>' + IfThen(edtLisSkup.Text='', '0', edtLisSkup.Text);
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET LisovaciSkup2=' + IfThen(edtLisSkup2.Text='', 'NULL', edtLisSkup2.Text) + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(LisovaciSkup2,0)<>' + IfThen(edtLisSkup2.Text='', '0', edtLisSkup2.Text);
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET KSNaPlate=' + edtKsNaPlate.Value.ToString + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(KSNaPlate,0)<>' + edtKsNaPlate.Value.ToString;
|
|
|
|
Helios.ExecSQL(lSQL);
|
|
|
|
|
|
|
|
edtDruhTepel.Text:= Trim(edtDruhTepel.Text);
|
|
lSQL:= 'UPDATE ' + tblOdlitky + ' SET Koop_TepelneZprac=' + cbAtestTepel.Checked.ToString + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + {' AND Koop_TepelneZprac<>' + cbAtestTepel.Checked.ToString +} CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET Atest_TepelneZprac_Druh=' + IfThen(edtDruhTepel.Text='', '0', edtDruhTepel.Text) + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=';
|
|
lSQL:= lSQL + idProUpd.ToString;
|
|
lSQL:= lSQL + {' AND Atest_TepelneZprac_Druh<>' + IfThen(edtDruhTepel.Text='', '0', edtDruhTepel.Text) +} CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET Atest_TepelneZprac_Vystavuje=N' + cbVystTepel.Text.QuotedString + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + {' AND Atest_TepelneZprac_Vystavuje<>N' + QuotedStr(cbVystTepel.Text) +} CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET Atest_TepelneZprac_Pozaduje=N' + cbPozadTepel.Text.QuotedString + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + {' AND Atest_TepelneZprac_Pozaduje<>N' + QuotedStr(cbPozadTepel.Text) +} CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET Koop_TepelneZprac_Popis=N' + mPoznTepel.Lines.Text.Trim.QuotedString + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
// lSQL:= lSQL + IfThen(idOdlRodic=0, idOdl.ToString, idOdlRodic.ToString);
|
|
lSQL:= lSQL + {' AND Koop_TepelneZprac_Popis<>N' + QuotedStr(mPoznTepel.Lines.Text.Trim) +} CRLF;
|
|
|
|
edtDruhObr.Text:= Trim(edtDruhObr.Text);
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET Koop_Obrabeni=' + cbAtestObr.Checked.ToString + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + {' AND Koop_Obrabeni<>' + cbAtestObr.Checked.ToString +} CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET Atest_Obrabeni_Druh=' + IfThen(edtDruhObr.Text='', '0', edtDruhObr.Text) + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + {' AND Atest_Obrabeni_Druh<>' + IfThen(edtDruhObr.Text='', '0', edtDruhObr.Text) +} CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET Atest_Obrabeni_Vystavuje=' + NullOrNQuotedStr (cbVystObr.Text, true) + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + {' AND Atest_Obrabeni_Vystavuje<>N' + QuotedStr(cbVystObr.Text) +} CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET Atest_Obrabeni_Pozaduje=' + NullOrNQuotedStr (cbPozadObr.Text, true) + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + {' AND Atest_Obrabeni_Pozaduje<>N' + QuotedStr(cbPozadObr.Text) +} CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET Koop_Obrabeni_Popis=' + NullOrNQuotedStr (mPoznObr.Lines.Text, true) + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + {' AND Koop_Obrabeni_Popis<>N' + QuotedStr(mPoznObr.Lines.Text.Trim) +} CRLF;
|
|
|
|
|
|
edtDruhPovrch.Text:= Trim(edtDruhPovrch.Text);
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET Atest_PovrchUprava=' + cbAtestPovrch.Checked.ToString + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + {' AND Atest_PovrchUprava<>' + cbAtestPovrch.Checked.ToString +} CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET Atest_PovrchUprava_Druh=' + IfThen(edtDruhPovrch.Text='', '0', edtDruhPovrch.Text) + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=';
|
|
lSQL:= lSQL + idProUpd.ToString;
|
|
lSQL:= lSQL + {' AND Atest_PovrchUprava_Druh<>' + IfThen(edtDruhPovrch.Text='', '0', edtDruhPovrch.Text) +} CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET Atest_PovrchUprava_Vystavuje=' + NullOrNQuotedStr (cbVystPU.Text, true) + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + {' AND Atest_PovrchUprava_Vystavuje<>N' + QuotedStr(cbVystPU.Text) +} CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET Atest_PovrchUprava_Pozaduje=' + NullOrNQuotedStr (cbPozadPU.Text, true) + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + {' AND Atest_PovrchUprava_Pozaduje<>N' + QuotedStr(cbPozadPU.Text) +} CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET Atest_PovrchUprava_Popis=' + NullOrNQuotedStr (mPoznPovrch.Lines.Text, true) + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + {' AND Atest_PovrchUprava_Popis<>N' + QuotedStr(mPoznPovrch.Lines.Text.Trim) +} CRLF;
|
|
|
|
|
|
edtDruhDefekt.Text:= Trim(edtDruhDefekt.Text);
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET Koop_Defekt=' + cbAtestDefekt.Checked.ToString + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + {' AND Koop_Defekt<>' + cbAtestDefekt.Checked.ToString +} CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET Atest_Defekt_Druh=' + IfThen(edtDruhDefekt.Text='', '0', edtDruhDefekt.Text) + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + {' AND Atest_Defekt_Druh<>' + IfThen(edtDruhDefekt.Text='', '0', edtDruhDefekt.Text) +} CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET Atest_Defekt_Vystavuje=' + NullOrNQuotedStr (cbVystDefekt.Text, true) + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + {' AND Atest_Defekt_Vystavuje<>N' + QuotedStr(cbVystDefekt.Text) +} CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET Atest_Defekt_Pozaduje=' + NullOrNQuotedStr (cbPozadDefekt.Text, true) + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + {' AND Atest_Defekt_Pozaduje<>N' + QuotedStr(cbPozadDefekt.Text) +} CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET Koop_Defekt_Popis=' + NullOrNQuotedStr (mPoznDefekt.Lines.Text, true) + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + {' AND Koop_Defekt_Popis<>N' + QuotedStr(mPoznDefekt.Lines.Text.Trim) +} CRLF;
|
|
|
|
|
|
edtDruhJine.Text:= Trim(edtDruhJine.Text);
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET Koop_Jine=' + cbAtestJine.Checked.ToString + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
// lSQL:= lSQL + IfThen(idOdlRodic=0, idOdl.ToString, idOdlRodic.ToString);
|
|
lSQL:= lSQL + {' AND Koop_Jine<>' + cbAtestJine.Checked.ToString +} CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET Atest_Jine_Druh=' + IfThen(edtDruhJine.Text='', '0', edtDruhJine.Text) + ' WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + {' AND Atest_Jine_Druh<>' + IfThen(edtDruhJine.Text='', '0', edtDruhJine.Text) +} CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET Atest_Jine_Vystavuje=N' + cbVystJine.Text.QuotedString + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + {' AND Atest_Jine_Vystavuje<>N' + QuotedStr(cbVystJine.Text) +} CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET Atest_Jine_Pozaduje=N' + cbPozadJine.Text.QuotedString + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + {' AND Atest_Jine_Pozaduje<>N' + QuotedStr(cbPozadJine.Text) +} CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET Koop_Jine_Popis=N' + mPoznJine.Lines.Text.Trim.QuotedString + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + {' AND Koop_Jine_Popis<>N' + QuotedStr(mPoznJine.Lines.Text.Trim) +} CRLF;
|
|
|
|
|
|
edtDruhMat.Text:= Trim(edtDruhMat.Text);
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET Atest_Material=' + cbAtestMat.Checked.ToString + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + {' AND Atest_Material<>' + cbAtestMat.Checked.ToString +} CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET Atest_Material_Druh=' + IfThen(edtDruhMat.Text='', '0', edtDruhMat.Text) + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + {' AND Atest_Material_Druh<>' + IfThen(edtDruhMat.Text='', '0', edtDruhMat.Text) +} CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET Atest_Material_Vystavuje=N' + QuotedStr(cbVystMat.Text) + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + {' AND Atest_Material_Vystavuje<>N' + QuotedStr(cbVystMat.Text) +} CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET Atest_Material_Pozaduje=N' + QuotedStr(cbPozadMat.Text) + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + {' AND Atest_Material_Pozaduje<>N' + QuotedStr(cbPozadMat.Text) +} CRLF;
|
|
|
|
|
|
lng:= 'CZ';
|
|
case cbJazyk.ItemIndex of
|
|
1: lng:= 'DE';
|
|
2: lng:= 'EN';
|
|
end;
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET Atest_Jazyk=N' + lng.QuotedString + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND Atest_Jazyk<>N' + lng.QuotedString + CRLF;
|
|
|
|
|
|
// rodic
|
|
if (idOdlRodic>0) then
|
|
begin
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET Vykres=N' + edtVykres.Text.QuotedString + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(Vykres,N'''')<>N' + edtVykres.Text.QuotedString + CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET CisloPKZ=N' + edtPKZ.Text.QuotedString + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(CisloPKZ,N'''')<>N' + edtPKZ.Text.QuotedString + CRLF;
|
|
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET Poznamka=N' + Trim(mPozn.Lines.Text.Trim).QuotedString + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(Poznamka,N'''')<>N' + Trim(mPozn.Lines.Text.Trim).QuotedString + CRLF;
|
|
|
|
{
|
|
if (kOdlitek.vykres='') and (kRodic.vykres<>'') then
|
|
begin
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET Vykres=N' + kRodic.vykres.QuotedString + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idOdl.ToString;
|
|
lSQL:= lSQL + ' AND Vykres<>N' + kRodic.vykres.QuotedString + CRLF;
|
|
end;
|
|
}
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET HmotnostObrobku=' + StringReplace(edtHmotObr.Value.ToString, ',', '.', [rfReplaceAll]);
|
|
lSQL:= lSQL + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idProUpd.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(HmotnostObrobku,0)<>' + StringReplace(edtHmotObr.Value.ToString, ',', '.', [rfReplaceAll]);
|
|
end;
|
|
|
|
{
|
|
if (kOdlitek.hmotObrob=0) and (kRodic.hmotObrob>0) then
|
|
begin
|
|
lSQL:= lSQL + 'UPDATE ' + tblOdlitky + ' SET HmotnostObrobku=' + StringReplace(kRodic.hmotObrob.ToString, ',', '.', [rfReplaceAll]);
|
|
lSQL:= lSQL + ', Zmenil=SUSER_SNAME(), DatZmeny=GETDATE() WHERE ID=' + idOdl.ToString;
|
|
lSQL:= lSQL + ' AND ISNULL(HmotnostObrobku,0)<>' + StringReplace(kRodic.hmotObrob.ToString, ',', '.', [rfReplaceAll]);
|
|
end;
|
|
}
|
|
Helios.ExecSQL(lSQL);
|
|
|
|
end;
|
|
Close;
|
|
end;
|
|
|
|
|
|
procedure TformOdlitek.btnStornoClick (Sender: TObject);
|
|
begin
|
|
Close;
|
|
end;
|
|
|
|
|
|
|
|
procedure TformOdlitek.btnStornoMouseUp (Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
|
|
begin
|
|
if (jenView) then
|
|
if (Shift * [ssCtrl, ssAlt, ssShift] = [ssCtrl, ssShift]) and (Button=TMouseButton.mbRight) then
|
|
begin
|
|
Helios.ExecSQL ('UPDATE ' + tblOdlitky + ' SET BlokovaniEditoru=NULL WHERE ID=' + idProUpd.ToString);
|
|
btnStornoClick (Sender);
|
|
end;
|
|
end;
|
|
|
|
|
|
|
|
procedure TformOdlitek.cbAtestObrClick (Sender: TObject);
|
|
begin
|
|
mPoznObr.Enabled:= cbAtestObr.Checked;
|
|
end;
|
|
|
|
|
|
|
|
procedure TformOdlitek.cbAtestTepelClick (Sender: TObject);
|
|
begin
|
|
mPoznTepel.Enabled:= cbAtestTepel.Checked;
|
|
end;
|
|
|
|
|
|
|
|
procedure TformOdlitek.cbAtestDefektClick (Sender: TObject);
|
|
begin
|
|
mPoznDefekt.Enabled:= cbAtestDefekt.Checked;
|
|
end;
|
|
|
|
|
|
|
|
procedure TformOdlitek.cbAtestJineClick(Sender: TObject);
|
|
begin
|
|
mPoznJine.Enabled:= cbAtestJine.Checked;
|
|
end;
|
|
|
|
|
|
|
|
procedure TformOdlitek.cbAtestPovrchClick (Sender: TObject);
|
|
begin
|
|
mPoznPovrch.Enabled:= cbAtestPovrch.Checked;
|
|
end;
|
|
|
|
|
|
|
|
|
|
procedure TformOdlitek.edtCisOrgExit(Sender: TObject);
|
|
begin
|
|
edtCisOrg.Text:= Trim(edtCisOrg.Text);
|
|
if (edtCisOrg.Text='') then
|
|
edtOrg.Text:= '';
|
|
end;
|
|
|
|
|
|
|
|
procedure TformOdlitek.edtHmotNettoExit (Sender: TObject);
|
|
begin
|
|
ZmenaVypoctu;
|
|
end;
|
|
|
|
|
|
|
|
procedure TformOdlitek.edtHmotStrExit (Sender: TObject);
|
|
begin
|
|
ZmenaVypoctu;
|
|
end;
|
|
|
|
|
|
|
|
procedure TformOdlitek.edtKSNaStromExit(Sender: TObject);
|
|
begin
|
|
ZmenaVypoctu;
|
|
end;
|
|
|
|
|
|
|
|
procedure TformOdlitek.edtMatOdlitKeyDown (Sender: TObject; var Key: Word; Shift: TShiftState);
|
|
begin
|
|
if (Key=VK_BACK) then
|
|
edtMatOdlit.Text:= '';
|
|
Key:=0;
|
|
end;
|
|
|
|
|
|
|
|
procedure TformOdlitek.edtMatOdlitKeyPress(Sender: TObject; var Key: Char);
|
|
begin
|
|
Key:= #0;
|
|
end;
|
|
|
|
|
|
|
|
procedure TformOdlitek.edtMatOdlitKeyUp (Sender: TObject; var Key: Word; Shift: TShiftState);
|
|
begin
|
|
if (Key=VK_BACK) then
|
|
edtMatOdlit.Text:= '';
|
|
Key:=0;
|
|
end;
|
|
|
|
|
|
|
|
procedure TformOdlitek.edtOrgExit(Sender: TObject);
|
|
begin
|
|
edtOrg.Text:= Trim(edtOrg.Text);
|
|
if (edtOrg.Text='') then
|
|
edtCisOrg.Text:= '';
|
|
end;
|
|
|
|
|
|
|
|
procedure TformOdlitek.edtStrNaTavbuExit(Sender: TObject);
|
|
begin
|
|
ZmenaVypoctu;
|
|
end;
|
|
|
|
|
|
|
|
procedure TformOdlitek.FormClose(Sender: TObject; var Action: TCloseAction);
|
|
begin
|
|
if not(jenView) then
|
|
Helios.ExecSQL('UPDATE ' + tblOdlitky + ' SET BlokovaniEditoru=NULL, JeNovaVetaEditor=0 WHERE ID=' + idOdl.ToString);
|
|
Action:= caFree;
|
|
|
|
Helios.ExecSQL('UPDATE ' + tblOdlitky + ' SET MatecniOdlitek=N'''' WHERE ID=' + idOdl.ToString + ' AND ISNULL(MatecniOdlitek,N'''')=Odlitek');
|
|
Helios.Refresh(true);
|
|
|
|
if (tempTab<>'') then
|
|
Helios.ExecSQL('DROP TABLE IF EXISTS ' + tempTab);
|
|
|
|
end;
|
|
|
|
|
|
|
|
procedure TformOdlitek.FormShow(Sender: TObject);
|
|
var lSQL, sTemp: string;
|
|
i: integer;
|
|
begin
|
|
|
|
self.ParentWindow:= Helios.MainApplicationHandle;
|
|
self.Icon.Handle:= Helios.MainApplicationIconHandle;
|
|
|
|
if (skinName<>'') then
|
|
TStyleManager.SetStyle(skinName);
|
|
|
|
self.Font.Name:= Helios.Font;
|
|
self.Font.Height:= Helios.FontHeight;
|
|
pgCtrl.Font.Name:= Helios.Font;
|
|
pgCtrl.Font.Size:= Helios.FontHeight;
|
|
|
|
for i:=0 to Self.ComponentCount-1 do
|
|
begin
|
|
if (Self.Components[i] is TButton) then
|
|
begin
|
|
(Self.Components[i] as TButton).Font.Name:= Helios.Font;
|
|
(Self.Components[i] as TButton).Font.Height:= Helios.FontHeight;
|
|
end;
|
|
if (Self.Components[i] is TComboEdit) then
|
|
begin
|
|
(Self.Components[i] as TComboEdit).Width:= 26;
|
|
(Self.Components[i] as TComboEdit).Height:= 26;
|
|
end;
|
|
|
|
if (Self.Components[i] is TNumberBox) then
|
|
(Self.Components[i] as TNumberBox).DisplayFormat:= '#,##0.####';
|
|
end;
|
|
|
|
|
|
|
|
bidAtestyDruhy:= helUtils.getHeliosIntVal(Helios, 0, 'SELECT DPBID FROM ' + tblObecPrehled + ' WHERE NazevSys=N''hvw_AtestyDruhy''');
|
|
bidGarant:= helUtils.getHeliosIntVal(Helios, 0, 'SELECT DPBID FROM ' + tblObecPrehled + ' WHERE NazevSys=N''hvw_OdlitkyParam_Garant''');
|
|
bidMaterial:= helUtils.getHeliosIntVal(Helios, 0, 'SELECT DPBID FROM ' + tblObecPrehled + ' WHERE NazevSys=N''hvw_Material''');
|
|
|
|
cbJazyk.Items.Clear;
|
|
cbJazyk.Items.Add('Čeština');
|
|
cbJazyk.Items.Add('Němčina');
|
|
cbJazyk.Items.Add('Angličtina');
|
|
cbJazyk.ItemIndex:= 0;
|
|
|
|
cbVystTepel.Items.Clear;
|
|
cbVystTepel.Items.Add('');
|
|
with Helios.OpenSQL('SELECT Kod FROM ' + tblAtestVyst + ' ORDER BY Kod') do
|
|
if (RecordCount>0) then
|
|
begin
|
|
First;
|
|
while not(EOF) do
|
|
begin
|
|
cbVystTepel.Items.Add(VarToStr(FieldValues(0)));
|
|
Next;
|
|
end;
|
|
end;
|
|
cbVystTepel.ItemIndex:= 0;
|
|
|
|
cbPozadTepel.Items.Clear;
|
|
cbPozadTepel.Items.Add('');
|
|
cbPozadTepel.Items.AddStrings(cbVystTepel.Items);
|
|
cbPozadTepel.ItemIndex:= 0;
|
|
|
|
cbMaterial.Items.Clear;
|
|
cbMaterial.Items.Add('');
|
|
with Helios.OpenSQL('SELECT Kod + N'' : '' + Znacka FROM ' + tblMaterial + ' ORDER BY Kod') do
|
|
if (RecordCount>0) then
|
|
begin
|
|
First;
|
|
while not(EOF) do
|
|
begin
|
|
cbMaterial.Items.Add(VarToStr(FieldValues(0)));
|
|
Next;
|
|
end;
|
|
end;
|
|
cbMaterial.ItemIndex:= 0;
|
|
|
|
cbVystObr.Items.Clear;
|
|
cbVystObr.Items.Add('');
|
|
cbVystObr.Items.AddStrings(cbVystTepel.Items);
|
|
cbVystObr.ItemIndex:= 0;
|
|
cbPozadObr.Items.Clear;
|
|
cbPozadObr.Items.Add('');
|
|
cbPozadObr.Items.AddStrings(cbVystTepel.Items);
|
|
cbPozadObr.ItemIndex:= 0;
|
|
|
|
cbVystPU.Items.Clear;
|
|
cbVystPU.Items.Add('');
|
|
cbVystPU.Items.AddStrings(cbVystTepel.Items);
|
|
cbVystPU.ItemIndex:= 0;
|
|
cbPozadPU.Items.Clear;
|
|
cbPozadPU.Items.Add('');
|
|
cbPozadPU.Items.AddStrings(cbVystTepel.Items);
|
|
cbPozadPU.ItemIndex:= 0;
|
|
|
|
cbVystDefekt.Items.Clear;
|
|
cbVystDefekt.Items.Add('');
|
|
cbVystDefekt.Items.AddStrings(cbVystTepel.Items);
|
|
cbVystDefekt.ItemIndex:= 0;
|
|
cbPozadDefekt.Items.Clear;
|
|
cbPozadDefekt.Items.Add('');
|
|
cbPozadDefekt.Items.AddStrings(cbVystTepel.Items);
|
|
cbPozadDefekt.ItemIndex:= 0;
|
|
|
|
cbVystJine.Items.Clear;
|
|
cbVystJine.Items.Add('');
|
|
cbVystJine.Items.AddStrings(cbVystTepel.Items);
|
|
cbVystJine.ItemIndex:= 0;
|
|
cbPozadJine.Items.Clear;
|
|
cbPozadJine.Items.Add('');
|
|
cbPozadJine.Items.AddStrings(cbVystTepel.Items);
|
|
cbPozadJine.ItemIndex:= 0;
|
|
|
|
cbVystMat.Items.Clear;
|
|
cbVystMat.Items.Add('');
|
|
cbVystMat.Items.AddStrings(cbVystTepel.Items);
|
|
cbVystMat.ItemIndex:= 0;
|
|
cbPozadMat.Items.Clear;
|
|
cbPozadMat.Items.Add('');
|
|
cbPozadMat.Items.AddStrings(cbVystTepel.Items);
|
|
cbPozadMat.ItemIndex:= 0;
|
|
|
|
|
|
if not(jenView) then
|
|
begin
|
|
if (helUtils.HeliosExistsTest(Helios, tblOdlitkyPrava, 'IDRole=(SELECT IDRole FROM '+ tblUziv + ' WHERE LoginName=SUSER_SNAME())')) then
|
|
jenView:= helUtils.getHeliosBoolVal(Helios, true, 'SELECT ReadOnly FROM ' + tblOdlitkyPrava + ' WHERE IDRole=(SELECT IDRole FROM '+ tblUziv + ' WHERE LoginName=SUSER_SNAME())');
|
|
if (helUtils.HeliosExistsTest(Helios, tblOdlitkyPrava, 'LoginName=SUSER_SNAME()')) then
|
|
jenView:= helUtils.getHeliosBoolVal(Helios, true, 'SELECT ReadOnly FROM ' + tblOdlitkyPrava + ' WHERE LoginName=SUSER_SNAME()');
|
|
|
|
with Helios.OpenSQL('SELECT * FROM ' + tblOdlitkyPrava) do
|
|
if (RecordCount=0) then
|
|
jenView:= false;
|
|
end;
|
|
|
|
|
|
idOdl:= 0;
|
|
idOdlRodic:= 0;
|
|
mamMatOdlitek:= false;
|
|
|
|
odlitek:= Trim(odlitek);
|
|
if (odlitek<>'') then
|
|
begin
|
|
idOdl:= helUtils.getHeliosIntVal(Helios, 0, 'SELECT ID FROM ' + tblOdlitky + ' WHERE Odlitek=N' + odlitek.QuotedString);
|
|
idOdlRodic:= idOdl;
|
|
|
|
Self.Caption:= ' Odlitek: ';
|
|
with Helios.OpenSQL('SELECT ID FROM ' + tblOdlitky + ' WHERE ID=' + idOdl.ToString + ' AND MamMatecniOdlitek=1') do
|
|
if (RecordCount=1) then
|
|
begin
|
|
Self.Caption:= ' Obrobek: ';
|
|
mamMatOdlitek:= true;
|
|
end;
|
|
lSQL:= 'SELECT TOP(1) k.Nazev1 FROM ' + tblOdlitky + ' o INNER JOIN ' + tblKZ + ' k ON (k.RegCis=o.Odlitek) WHERE o.ID=' + idOdl.ToString;
|
|
lSQL:= lSQL + ' AND k.SkupZbo IN (N''VOB'', N''VOD'', N''P51'', ''P41'') ORDER BY k.SkupZbo DESC';
|
|
Self.Caption:= Self.Caption + odlitek + ' ' + helUtils.getHeliosStrVal(Helios, '', lSQL);
|
|
NactiParametry;
|
|
if not(jenView) then
|
|
Helios.ExecSQL('UPDATE ' + tblOdlitky + ' SET BlokovaniEditoru=' + Helios.UserId.ToString + ' WHERE ID=' + idOdl.ToString);
|
|
end;
|
|
|
|
if (jenView) then
|
|
Self.Caption:= Self.Caption + ' (jen pro čtení)';
|
|
|
|
if (jenView) then
|
|
btnOK.Enabled:= false
|
|
else
|
|
btnOK.Enabled:= true;
|
|
|
|
|
|
tempTab:= '_temp_TabOdlitek' + FormatDateTime('yyyymmddhhnnsszzz', Now);
|
|
lSQL:= 'IF OBJECT_ID(''dbo.ep_HDC_VytvorKopiiTabulky'') IS NOT NULL EXEC dbo.ep_HDC_VytvorKopiiTabulky @zdroj=N''_hdc_TabOdlitky'', @cil=N' + tempTab.QuotedString + CRLF;
|
|
sTemp:= 'Odlitek=N' + odlitek.QuotedString;
|
|
lSQL:= lSQL + 'IF OBJECT_ID(''dbo.ep_HDC_InsertKopieTabulky'', ''P'') IS NOT NULL EXEC dbo.ep_HDC_InsertKopieTabulky';
|
|
lSQL:= lSQL + ' @zdroj=N''_hdc_TabOdlitky'', @cil=N' + tempTab.QuotedString + ', @skipSloupce=N''ID'', @where=N' + sTemp.QuotedString;
|
|
Helios.ExecSQL(lSQL);
|
|
|
|
pgCtrl.ActivePageIndex:= 0;
|
|
edtDruhTech.SetFocus;
|
|
end;
|
|
|
|
|
|
|
|
procedure TformOdlitek.selCisOrgClick(Sender: TObject);
|
|
begin
|
|
try
|
|
if Helios.Prenos(bidCisOrg, 'TabCisOrg.CisloOrg', oVar1, '', 'Vyberte Organizaci', True) then
|
|
begin
|
|
edtCisOrg.Text:= VarToStr(oVar1);
|
|
edtOrg.Text:= helUtils.getHeliosStrVal(Helios, '', 'SELECT Nazev FROM ' + tblCOrg + ' WHERE CisloOrg=' + edtCisOrg.Text);
|
|
end;
|
|
except on E:Exception do
|
|
Helios.Error(E.Message);
|
|
end;
|
|
end;
|
|
|
|
|
|
|
|
procedure TformOdlitek.selDoplDil1Click(Sender: TObject);
|
|
begin
|
|
podm:= tblKZ + '.SkupZbo=N''P10'' AND LEFT(RIGHT(REPLACE(dbo.ef_RemoveAlpha(RegCis),N''-'',N''''),4),1)=N''1''';
|
|
if Helios.Prenos(bidKZ, 'ID', oVar1, podm, 'Vyberte Doplňkový díl 1', true) then
|
|
edtDoplDil1.Text:= helUtils.getHeliosStrVal(Helios, '', 'SELECT RegCis FROM ' + tblKZ + ' WHERE ID=' + VarToStr(oVar1));
|
|
end;
|
|
|
|
|
|
|
|
procedure TformOdlitek.selDoplDil2Click(Sender: TObject);
|
|
begin
|
|
podm:= tblKZ + '.SkupZbo=N''P10'' AND LEFT(RIGHT(REPLACE(dbo.ef_RemoveAlpha(RegCis),N''-'',N''''),4),1)=N''1''';
|
|
if Helios.Prenos(bidKZ, 'ID', oVar1, podm, 'Vyberte Doplňkový díl 2', true) then
|
|
edtDoplDil2.Text:= helUtils.getHeliosStrVal(Helios, '', 'SELECT RegCis FROM ' + tblKZ + ' WHERE ID=' + VarToStr(oVar1));
|
|
end;
|
|
|
|
|
|
procedure TformOdlitek.selDoplDil3Click(Sender: TObject);
|
|
begin
|
|
podm:= tblKZ + '.SkupZbo=N''P10'' AND LEFT(RIGHT(REPLACE(dbo.ef_RemoveAlpha(RegCis),N''-'',N''''),4),1)=N''1''';
|
|
if Helios.Prenos(bidKZ, 'ID', oVar1, podm, 'Vyberte Doplňkový díl 3', true) then
|
|
edtDoplDil3.Text:= helUtils.getHeliosStrVal(Helios, '', 'SELECT RegCis FROM ' + tblKZ + ' WHERE ID=' + VarToStr(oVar1));
|
|
end;
|
|
|
|
|
|
|
|
procedure TformOdlitek.selDruhDefektClick(Sender: TObject);
|
|
begin
|
|
oVar1:= edtDruhDefekt.Text;
|
|
if (bidAtestyDruhy=0) then
|
|
Helios.Error('Nelze dohledat přehled k zobrazení (hvw_AtestyDruhy)')
|
|
else
|
|
if Helios.Prenos(bidAtestyDruhy, 'Kod', oVar1, '', 'Vyberte Druh atestu/zkoušky', true) then
|
|
edtDruhDefekt.Text:= VarToStr(oVar1);
|
|
end;
|
|
|
|
|
|
|
|
procedure TformOdlitek.selDruhForAClick(Sender: TObject);
|
|
begin
|
|
if Helios.Prenos(100057, 'DruhFormy', oVar1, '', 'Vyberte formu/přípravek', true) then
|
|
edtDruhForA.Text:= VarToStr(oVar1);
|
|
end;
|
|
|
|
|
|
|
|
procedure TformOdlitek.selDruhForClick(Sender: TObject);
|
|
begin
|
|
if Helios.Prenos(100057, 'DruhFormy', oVar1, '', 'Vyberte formu/přípravek', true) then
|
|
edtDruhFor.Text:= VarToStr(oVar1);
|
|
end;
|
|
|
|
|
|
|
|
procedure TformOdlitek.selDruhJineClick(Sender: TObject);
|
|
begin
|
|
oVar1:= edtDruhJine.Text;
|
|
if Helios.Prenos(bidAtestyDruhy, 'Kod', oVar1, '', 'Vyberte Druh atestu/zkoušky', true) then
|
|
edtDruhJine.Text:= VarToStr(oVar1);
|
|
end;
|
|
|
|
|
|
|
|
procedure TformOdlitek.selDruhMatClick(Sender: TObject);
|
|
begin
|
|
oVar1:= edtDruhMat.Text;
|
|
if (bidAtestyDruhy=0) then
|
|
Helios.Error('Nelze dohledat přehled k zobrazení (hvw_AtestyDruhy)')
|
|
else
|
|
if Helios.Prenos(bidAtestyDruhy, 'Kod', oVar1, '', 'Vyberte Druh atestu/zkoušky', true) then
|
|
edtDruhMat.Text:= VarToStr(oVar1);
|
|
end;
|
|
|
|
|
|
|
|
procedure TformOdlitek.selDruhObrClick(Sender: TObject);
|
|
begin
|
|
oVar1:= edtDruhObr.Text;
|
|
if (bidAtestyDruhy=0) then
|
|
Helios.Error('Nelze dohledat přehled k zobrazení (hvw_AtestyDruhy)')
|
|
else
|
|
if Helios.Prenos(bidAtestyDruhy, 'Kod', oVar1, '', 'Vyberte Druh atestu/zkoušky', true) then
|
|
edtDruhObr.Text:= VarToStr(oVar1);
|
|
end;
|
|
|
|
|
|
|
|
procedure TformOdlitek.selDruhPovrchClick(Sender: TObject);
|
|
begin
|
|
oVar1:= edtDruhPovrch.Text;
|
|
if (bidAtestyDruhy=0) then
|
|
Helios.Error('Nelze dohledat přehled k zobrazení (hvw_AtestyDruhy)')
|
|
else
|
|
if Helios.Prenos(bidAtestyDruhy, 'Kod', oVar1, '', 'Vyberte Druh atestu/zkoušky', true) then
|
|
edtDruhPovrch.Text:= VarToStr(oVar1);
|
|
end;
|
|
|
|
|
|
|
|
|
|
procedure TformOdlitek.selDruhTZClick(Sender: TObject);
|
|
begin
|
|
oVar1:= edtDruhTepel.Text;
|
|
if (bidAtestyDruhy=0) then
|
|
Helios.Error('Nelze dohledat přehled k zobrazení (hvw_AtestyDruhy)')
|
|
else
|
|
if Helios.Prenos(bidAtestyDruhy, 'Kod', oVar1, '', 'Vyberte Druh atestu/zkoušky', true) then
|
|
edtDruhTepel.Text:= VarToStr(oVar1);
|
|
end;
|
|
|
|
|
|
|
|
|
|
procedure TformOdlitek.selDruhVtokuClick(Sender: TObject);
|
|
begin
|
|
podm:= tblKZ + '.SkupZbo=N''P10'' AND LEFT(RIGHT(REPLACE(dbo.ef_RemoveAlpha(RegCis),N''-'',N''''),4),1)=N''2''';
|
|
if Helios.Prenos(bidKZ, 'ID', oVar1, podm, 'Vyberte Druh vtoku', true) then
|
|
edtDruhVtoku.Text:= helUtils.getHeliosStrVal(Helios, '', 'SELECT RegCis FROM ' + tblKZ + ' WHERE ID=' + VarToStr(oVar1));
|
|
end;
|
|
|
|
|
|
|
|
|
|
procedure TformOdlitek.selGarantButtonClick(Sender: TObject);
|
|
begin
|
|
oVar1:= edtGarant.Text;
|
|
if (bidGarant=0) then
|
|
Helios.Error('Nelze dohledat přehled k zobrazení (hvw_OdlitkyParam_Garant)')
|
|
else
|
|
if Helios.Prenos(bidGarant, 'Zkratka', oVar1, '', 'Vyberte Garanta', true) then
|
|
edtGarant.Text:= VarToStr(oVar1);
|
|
end;
|
|
|
|
|
|
|
|
|
|
procedure TformOdlitek.selMatOdlitClick(Sender: TObject);
|
|
var lSQL: string;
|
|
begin
|
|
podm:= 'SkupZbo IN (SELECT s.SkupZbo FROM ' + tblSZ + ' s INNER JOIN ' + tblSZe + ' se ON (se.ID=s.ID) WHERE se._MuzeBytMatecniOdlitek=1) AND RegCis<>N' + odlitek.QuotedString;
|
|
if Helios.Prenos(bidKZ, 'ID', oVar1, podm, 'Vyberte Mateční odlitek', true) then
|
|
begin
|
|
idKZ:= StrToInt(VarToStr(oVar1));
|
|
edtMatOdlit.Text:= helUtils.getHeliosStrVal(Helios, '', 'SELECT RegCis FROM ' + tblKZ + ' WHERE ID=' + idKZ.ToString);
|
|
lSQL:= 'SELECT ID FROM ' + tblOdlitky + ' WHERE Odlitek=N' + QuotedStr(edtMatOdlit.Text) + CRLF + 'IF NOT EXISTS(SELECT ID FROM ' + tblOdlitky;
|
|
lSQL:= lSQL + ' WHERE Odlitek=N' + QuotedStr(edtMatOdlit.Text) + ') INSERT ' + tblOdlitky;
|
|
lSQL:= lSQL + ' (Odlitek, JeNovaVetaEditor) VALUES (N' + QuotedStr(edtMatOdlit.Text) + ', 1)' + CRLF + 'SELECT SCOPE_IDENTITY()';
|
|
with Helios.OpenSQL(lSQL) do
|
|
if (RecordCount=1) then
|
|
idOdl:= StrToInt(VarToStr(FieldValues(0)))
|
|
else
|
|
idOdl:= 0;
|
|
end;
|
|
end;
|
|
|
|
|
|
|
|
procedure TformOdlitek.selOrgClick(Sender: TObject);
|
|
begin
|
|
try
|
|
oVar1:= Variant(edtOrg.Text);
|
|
if Helios.Prenos2(bidCisOrg, 'TabCisOrg.Nazev', 'TabCisOrg.CisloOrg', oVar1, oVar2, '', 'Vyberte Organizaci', True, False, False, 1) then
|
|
begin
|
|
edtCisOrg.Text:= VarToStr(oVar2);
|
|
edtOrg.Text:= VarToStr(oVar1);
|
|
end;
|
|
except on E:Exception do
|
|
Helios.Error(E.Message);
|
|
end;
|
|
end;
|
|
|
|
end.
|