Prvni verze
This commit is contained in:
33
.gitignore
vendored
33
.gitignore
vendored
@ -4,7 +4,7 @@
|
|||||||
#
|
#
|
||||||
# Resource files are binaries containing manifest, project icon and version info.
|
# Resource files are binaries containing manifest, project icon and version info.
|
||||||
# They can not be viewed as text or compared by diff-tools. Consider replacing them with .rc files.
|
# They can not be viewed as text or compared by diff-tools. Consider replacing them with .rc files.
|
||||||
#*.res
|
*.res
|
||||||
#
|
#
|
||||||
# Type library file (binary). In old Delphi versions it should be stored.
|
# Type library file (binary). In old Delphi versions it should be stored.
|
||||||
# Since Delphi 2009 it is produced from .ridl file and can safely be ignored.
|
# Since Delphi 2009 it is produced from .ridl file and can safely be ignored.
|
||||||
@ -16,29 +16,17 @@
|
|||||||
#
|
#
|
||||||
# Visual LiveBindings file. Added in Delphi XE2.
|
# Visual LiveBindings file. Added in Delphi XE2.
|
||||||
# Uncomment this if you are not using LiveBindings Designer.
|
# Uncomment this if you are not using LiveBindings Designer.
|
||||||
#*.vlb
|
*.vlb
|
||||||
#
|
#
|
||||||
# Deployment Manager configuration file for your project. Added in Delphi XE2.
|
# Deployment Manager configuration file for your project. Added in Delphi XE2.
|
||||||
# Uncomment this if it is not mobile development and you do not use remote debug feature.
|
# Uncomment this if it is not mobile development and you do not use remote debug feature.
|
||||||
#*.deployproj
|
*.deployproj
|
||||||
#
|
#
|
||||||
# C++ object files produced when C/C++ Output file generation is configured.
|
# C++ object files produced when C/C++ Output file generation is configured.
|
||||||
# Uncomment this if you are not using external objects (zlib library for example).
|
# Uncomment this if you are not using external objects (zlib library for example).
|
||||||
#*.obj
|
#*.obj
|
||||||
#
|
#
|
||||||
|
|
||||||
# Default Delphi compiler directories
|
|
||||||
# Content of this directories are generated with each Compile/Construct of a project.
|
|
||||||
# Most of the time, files here have not there place in a code repository.
|
|
||||||
#Win32/
|
|
||||||
#Win64/
|
|
||||||
#OSX64/
|
|
||||||
#OSXARM64/
|
|
||||||
#Android/
|
|
||||||
#Android64/
|
|
||||||
#iOSDevice64/
|
|
||||||
#Linux64/
|
|
||||||
|
|
||||||
# Delphi compiler-generated binaries (safe to delete)
|
# Delphi compiler-generated binaries (safe to delete)
|
||||||
*.exe
|
*.exe
|
||||||
*.dll
|
*.dll
|
||||||
@ -77,7 +65,18 @@ __recovery/
|
|||||||
|
|
||||||
# Castalia statistics file (since XE7 Castalia is distributed with Delphi)
|
# Castalia statistics file (since XE7 Castalia is distributed with Delphi)
|
||||||
*.stat
|
*.stat
|
||||||
|
.gitignore
|
||||||
|
*.log
|
||||||
|
|
||||||
# Boss dependency manager vendor folder https://github.com/HashLoad/boss
|
|
||||||
modules/
|
|
||||||
|
|
||||||
|
*.7z
|
||||||
|
*.skincfg
|
||||||
|
*.json
|
||||||
|
|
||||||
|
|
||||||
|
_old/
|
||||||
|
bak/
|
||||||
|
core/
|
||||||
|
defsX/
|
||||||
|
_plgPlan/bak/
|
||||||
|
_plgPlan/pictDS/
|
||||||
|
|||||||
884
ComObjekt.pas
Normal file
884
ComObjekt.pas
Normal file
@ -0,0 +1,884 @@
|
|||||||
|
unit ComObjekt;
|
||||||
|
|
||||||
|
INTERFACE
|
||||||
|
|
||||||
|
uses System.Types, System.SysUtils, Win.ComObj, System.Classes,
|
||||||
|
ddPlugin_TLB, plgKonfig;
|
||||||
|
|
||||||
|
//{$DEFINE IHePlugin3}
|
||||||
|
|
||||||
|
const
|
||||||
|
plgHDCRTNParams_class: TGUID = '{FEDE87D4-E557-48DD-9A35-B13DEF5FE1BB}';
|
||||||
|
CRLF = #13#10;
|
||||||
|
|
||||||
|
type
|
||||||
|
TPlgHDCRootvinParams = class (TComObject, IHePlugin)
|
||||||
|
private
|
||||||
|
procedure Run (const Helios: IHelios); safecall;
|
||||||
|
end;
|
||||||
|
|
||||||
|
// !!! pri zmene IHePluginXX upravit take v plgAbout - info o jadru !!!
|
||||||
|
TPlgHDCRootvin = class(TComObject, {$IFDEF IHePlugin3} IHePlugin3 {$ELSE} IHePlugin {$ENDIF})
|
||||||
|
private
|
||||||
|
FHelios : IHelios;
|
||||||
|
function PartnerIdentification: WideString; safecall;
|
||||||
|
function DelphiCompilerVersion: Single; safecall;
|
||||||
|
procedure OnException(Sender: TObject; E: Exception);
|
||||||
|
procedure Run (const Helios: IHelios); safecall;
|
||||||
|
// procedure Work (const Helios: IHelios); safecall;
|
||||||
|
// procedure About (const Helios: IHelios); safecall;
|
||||||
|
procedure Install (const Helios: IHelios); safecall;
|
||||||
|
procedure ZkotrolujDefiniceSQL (const Helios: IHelios);
|
||||||
|
function NactiKonfig (const Helios: IHelios): boolean;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
IMPLEMENTATION
|
||||||
|
|
||||||
|
uses Vcl.Controls, System.Win.ComServ, Winapi.Windows, Vcl.Graphics, Vcl.Forms, Vcl.Dialogs, System.Variants,
|
||||||
|
System.StrUtils, System.Hash, System.AnsiStrings,
|
||||||
|
plgType, plgMain, plgSpravce,
|
||||||
|
// [RK 13.04.2012] nove komponenty DevExpress toto vyzaduji, jinak zatuhne Helios
|
||||||
|
dxGDIPlusAPI{!initialization!},
|
||||||
|
NativeXml, datMod, helUtils, helTabsBIDs, frmPekarna, frmPlan, frmRamcovyPlan;
|
||||||
|
|
||||||
|
|
||||||
|
var oVar1, oVar2: OleVariant;
|
||||||
|
LocalFormatSettings: TFormatSettings;
|
||||||
|
apiMod, jeTest: boolean;
|
||||||
|
apiServer, plgHDCRTN_Name: string;
|
||||||
|
|
||||||
|
tBid, fId: integer;
|
||||||
|
delkaRC, idKZrodic, idDZrodic, cOrgRodic, cOrgMU, cOrgPrijem, dpzOZ: integer;
|
||||||
|
radaDZ: string;
|
||||||
|
|
||||||
|
|
||||||
|
function TPlgHDCRootvin.DelphiCompilerVersion: Single;
|
||||||
|
begin
|
||||||
|
Result:= System.CompilerVersion;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
function TPlgHDCRootvin.PartnerIdentification: WideString;
|
||||||
|
begin
|
||||||
|
Result:= 'HEOR0400-00044';
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
procedure TPlgHDCRootvin.OnException (Sender: TObject; E: Exception);
|
||||||
|
begin
|
||||||
|
try
|
||||||
|
LockWindowUpdate (0);
|
||||||
|
FHelios.Error (plgPrelozException(E.Message));
|
||||||
|
except
|
||||||
|
Vcl.Forms.Application.ShowException(E); //pro jistotu
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
{
|
||||||
|
procedure TPlgHDCRootvin.Work (const Helios: IHelios);
|
||||||
|
var s: WideString;
|
||||||
|
begin
|
||||||
|
s := Concat('Nacházíte se v tabulce ', Helios.MainBrowseTable(), '.');
|
||||||
|
Helios.Info(s);
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TPlgHDCRootvin.About (const Helios: IHelios);
|
||||||
|
var s: WideString;
|
||||||
|
begin
|
||||||
|
s := 'Tento plugin je určen pro testování základních funkcí HELIOS iNuvio Interface.';
|
||||||
|
Helios.Info(s);
|
||||||
|
end;
|
||||||
|
}
|
||||||
|
|
||||||
|
procedure TPlgHDCRootvin.Install (const Helios: IHelios);
|
||||||
|
var s: WideString;
|
||||||
|
begin
|
||||||
|
ZkotrolujDefiniceSQL (Helios);
|
||||||
|
s := 'Instalace proběhla úspěšně.';
|
||||||
|
Helios.Info(s);
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
function TPlgHDCRootvin.NactiKonfig (const Helios: IHelios): Boolean;
|
||||||
|
var xml: TNativeXml;
|
||||||
|
r, n1, n2: TXmlNode;
|
||||||
|
fn: string;
|
||||||
|
begin
|
||||||
|
result:= true;
|
||||||
|
datMod.phServer:= 'http://rootvin.datazone.cloud/helios/api';
|
||||||
|
|
||||||
|
fn:= GetModuleName(HInstance);
|
||||||
|
fn:= ChangeFileExt(fn, '.xml');
|
||||||
|
|
||||||
|
if (FileExists(fn)) then
|
||||||
|
begin
|
||||||
|
xml:= TNativeXml.Create(nil);
|
||||||
|
try
|
||||||
|
xml.LoadFromFile(fn);
|
||||||
|
if not(xml.IsEmpty) then
|
||||||
|
begin
|
||||||
|
r:= xml.Root;
|
||||||
|
if (r<>nil) then
|
||||||
|
begin
|
||||||
|
n1:= r.NodeByName('cfgPluginHDCRTN');
|
||||||
|
if (n1<>nil) then
|
||||||
|
datMod.phServer:= n1.ReadAttributeString('phServer', '');
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
finally
|
||||||
|
xml.Free;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TPlgHDCRootvin.ZkotrolujDefiniceSQL (const Helios: IHelios);
|
||||||
|
var lSQL, lSQL2, lSQLX, errMsg, srcNazev, objectNazev, trgName, sqlDefDB, sqlDefPlg: string;
|
||||||
|
rs: TResourceStream;
|
||||||
|
ms: TMemoryStream;
|
||||||
|
arrDefs: TStringList;
|
||||||
|
i, pCRLF: integer;
|
||||||
|
canCont, canCont2: boolean;
|
||||||
|
hash1, hash2: string;
|
||||||
|
|
||||||
|
function LoadStringFromStream (const AStream: TStream): String;
|
||||||
|
var lenX: Integer;
|
||||||
|
begin
|
||||||
|
AStream.Seek(0,0);
|
||||||
|
lenX:= AStream.Size - AStream.Position;
|
||||||
|
SetLength(Result, lenX);
|
||||||
|
if (lenX>0) then
|
||||||
|
AStream.ReadBuffer(Result[1], lenX);
|
||||||
|
end;
|
||||||
|
function MemoryStreamToAnsiString (const M: TMemoryStream): AnsiString;
|
||||||
|
begin
|
||||||
|
SetString(Result, PAnsiChar(M.Memory), M.Size);
|
||||||
|
end;
|
||||||
|
|
||||||
|
begin
|
||||||
|
lSQL:= helUtils.getHeliosStrVal(Helios, '', 'SELECT DATEPART(week, CONVERT(datetime, N''11.12.2023'', 104))');
|
||||||
|
lSQL2:= helUtils.getHeliosStrVal(Helios, '', 'SELECT DATEPART(iso_week, CONVERT(datetime, N''11.12.2023'', 104))');
|
||||||
|
if (lSQL='51') and (lSQL2='50') then
|
||||||
|
datMod.sqlLang:= 'czech'
|
||||||
|
else
|
||||||
|
datMod.sqlLang:= 'english';
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
arrDefs:= TStringList.Create;
|
||||||
|
|
||||||
|
arrDefs.Add('tbl_hdc_ph_Log');
|
||||||
|
arrDefs.Add('tbl_hdc_ph_PrijataJsonData');
|
||||||
|
arrDefs.Add('trg__hdc_ph_PrijataJsonData_D');
|
||||||
|
arrDefs.Add('ef_GetDatumASmenu');
|
||||||
|
arrDefs.Add('ef_Bit2Int');
|
||||||
|
|
||||||
|
arrDefs.Add('col_TabEvidRozpracOperR_EXT');
|
||||||
|
arrDefs.Add('col_TabStavSkladu_EXT');
|
||||||
|
arrDefs.Add('col_TabVazbyPrikazu_EXT');
|
||||||
|
arrDefs.Add('col_TabKmenZbozi_EXT');
|
||||||
|
arrDefs.Add('col_TabPohybyZbozi_EXT');
|
||||||
|
arrDefs.Add('col_TabDokladyyZbozi_EXT');
|
||||||
|
|
||||||
|
arrDefs.Add('tbl__TabVyrobaVydejMatSarze');
|
||||||
|
arrDefs.Add('tbl__TabVyrobaPalety');
|
||||||
|
arrDefs.Add('tbl__TabVyrobaPaletyUkonceni');
|
||||||
|
arrDefs.Add('tbl__TabVyrobaPaletyPohybOZ');
|
||||||
|
arrDefs.Add('tbl__TabVyrobaStrojCinnost');
|
||||||
|
arrDefs.Add('tbl__TabVyrobaTestoVyroba');
|
||||||
|
arrDefs.Add('tbl__TabVyrobaTestoSpotreba');
|
||||||
|
|
||||||
|
arrDefs.Add('ef_Vyroba_VratNovyPaletovyList');
|
||||||
|
arrDefs.Add('ef_Vyroba_VratCisloSarze');
|
||||||
|
arrDefs.Add('ef_Kmen_VratPocetKsVKartonu');
|
||||||
|
arrDefs.Add('tbl__TabVyrobaObjednavky');
|
||||||
|
// arrDefs.Add('tbl__TabVyrobaOperaceStartStop');
|
||||||
|
|
||||||
|
arrDefs.Add('ep_P01_HDC1');
|
||||||
|
arrDefs.Add('ep_P01');
|
||||||
|
arrDefs.Add('ep_P03_HDC1');
|
||||||
|
arrDefs.Add('ep_P03');
|
||||||
|
|
||||||
|
arrDefs.Add('ep_V03_HDC1');
|
||||||
|
arrDefs.Add('ep_V03');
|
||||||
|
|
||||||
|
|
||||||
|
arrDefs.Add('ep_Vyroba_VyrobaMimoPlan');
|
||||||
|
arrDefs.Add('ep_Vyroba_Doklady_Micharna');
|
||||||
|
arrDefs.Add('ep_Vyroba_GenVydejZeMzdy');
|
||||||
|
arrDefs.Add('ep_Vyroba_GenOdvodZeMzdy');
|
||||||
|
arrDefs.Add('ep_Vyroba_DoplnSkladProVydejDleDokl');
|
||||||
|
arrDefs.Add('ep_Vyroba_InsertEvidRozpracOperPol');
|
||||||
|
arrDefs.Add('ep_Vyroba_InsertEvidRozpracOper');
|
||||||
|
arrDefs.Add('ep_Vyroba_PrijemNestandard');
|
||||||
|
arrDefs.Add('ep_Vyroba_VyrobaMimoPlan');
|
||||||
|
arrDefs.Add('ep_HDC_PZ_ZapisPolozek');
|
||||||
|
arrDefs.Add('ep_Vyroba_GenerujPalety');
|
||||||
|
arrDefs.Add('ep_Vyroba_GenSouhrnnyVydej');
|
||||||
|
arrDefs.Add('tbl__TabVyrobaVzorky');
|
||||||
|
arrDefs.Add('tbl__TabKontrolyCCP1');
|
||||||
|
arrDefs.Add('tbl__TabVyrobaOdpadPek');
|
||||||
|
|
||||||
|
// planovani
|
||||||
|
arrDefs.Add('col_Prikaz_EXT');
|
||||||
|
arrDefs.Add('col_AdvKPDavky_EXT');
|
||||||
|
arrDefs.Add('tbl__TabVyrobaPlanRozpad');
|
||||||
|
arrDefs.Add('ef_Vyroba_GenerujRozpadCasu');
|
||||||
|
arrDefs.Add('ep_Vyroba_ZapisDoPlanu');
|
||||||
|
arrDefs.Add('ep_Vyroba_ZrusZakazkuPlanuDleFinPrikazu');
|
||||||
|
arrDefs.Add('ep_Vyroba_AdvPlan_ZapisDavkyPrikazu');
|
||||||
|
arrDefs.Add('trg__TabPlan_HDC_D');
|
||||||
|
arrDefs.Add('trg__TabAdvKPDavky_HDC_D');
|
||||||
|
|
||||||
|
|
||||||
|
// arrDefs.Add('spec_Clear');
|
||||||
|
arrDefs.Add('trg__TabVyrobaObjednavky_IU');
|
||||||
|
arrDefs.Add('trg__TabVyrobaObjednavky_Pol_D');
|
||||||
|
arrDefs.Add('trg__TabVyrobaPalety_IU');
|
||||||
|
arrDefs.Add('trg__TabVyrobaPalety_D');
|
||||||
|
arrDefs.Add('trg__TabPohybyZbozi_HDC_IU');
|
||||||
|
arrDefs.Add('trg__TabPohybyZbozi_HDC_D');
|
||||||
|
arrDefs.Add('trg__TabVyrCP_HDC_IU');
|
||||||
|
arrDefs.Add('trg__TabVyrCP_HDC_D');
|
||||||
|
arrDefs.Add('trg__TabVyrobaPaletyUkonceni_D');
|
||||||
|
arrDefs.Add('trg__TabVyrobaVydejMatSarze_IU');
|
||||||
|
arrDefs.Add('trg__TabVyrCisPrikaz_HDC_D');
|
||||||
|
|
||||||
|
for i:=0 to arrDefs.Count-1 do
|
||||||
|
begin
|
||||||
|
ms:= TMemoryStream.Create;
|
||||||
|
try
|
||||||
|
srcNazev:= arrDefs.Strings[i];
|
||||||
|
canCont:= true;
|
||||||
|
|
||||||
|
|
||||||
|
if (canCont) then
|
||||||
|
begin
|
||||||
|
rs:= TResourceStream.Create(HInstance, srcNazev.ToUpper, RT_RCDATA);
|
||||||
|
ms.CopyFrom(rs, rs.Size);
|
||||||
|
|
||||||
|
lSQL:= MemoryStreamToAnsiString(ms);
|
||||||
|
objectNazev:= LeftStr(lSQL, lSQL.IndexOf(Chr(13))).Replace('-- ', '');
|
||||||
|
|
||||||
|
|
||||||
|
if (srcNazev.StartsWith('ep_', true)) or (srcNazev.StartsWith('ef_', true)) or (srcNazev.StartsWith('trg_')) then
|
||||||
|
begin
|
||||||
|
canCont:= false;
|
||||||
|
hash1:= '';
|
||||||
|
hash2:= '';
|
||||||
|
|
||||||
|
if (srcNazev.StartsWith('trg_')) then
|
||||||
|
lSQLX:= 'SELECT m.definition FROM ' + Helios.CurrentDB + '.sys.triggers t INNER JOIN ' + Helios.CurrentDB + '.sys.objects o on t.object_id = o.object_id'
|
||||||
|
+ ' INNER JOIN ' + Helios.CurrentDB + '.sys.sql_modules m on m.object_id = o.object_id WHERE t.name=N' + objectNazev.Replace('dbo.','').QuotedString
|
||||||
|
else
|
||||||
|
lSQLX:= 'SELECT OBJECT_DEFINITION(OBJECT_ID(N' + (Helios.CurrentDB + '.' + objectNazev).QuotedString + '))';
|
||||||
|
|
||||||
|
sqlDefDB:= helUtils.getHeliosStrVal(Helios, '', lSQLX);
|
||||||
|
if (sqlDefDB<>'') then
|
||||||
|
begin
|
||||||
|
sqlDefDB:= sqlDefDB.Replace('/*' + plgHDCRTN_Name + '*/', '');
|
||||||
|
hash1:= THashMD5.GetHashString(sqlDefDB);
|
||||||
|
if (srcNazev.StartsWith('trg_')) then
|
||||||
|
sqlDefPlg:= MidStr(lSQL, lSQL.IndexOf(Chr(13))+3, lSQL.Length)
|
||||||
|
else
|
||||||
|
sqlDefPlg:= lSQL;
|
||||||
|
if (sqlDefPlg.StartsWith(CRLF)) then
|
||||||
|
sqlDefPlg:= MidStr(sqlDefPlg, 3, sqlDefPlg.Length);
|
||||||
|
if (sqlDefPlg.EndsWith(CRLF)) then
|
||||||
|
sqlDefPlg:= LeftStr(sqlDefPlg, sqlDefPlg.Length-2);
|
||||||
|
hash2:= THashMD5.GetHashString(sqlDefPlg);
|
||||||
|
if (hash1<>hash2) then
|
||||||
|
canCont:= true;
|
||||||
|
end
|
||||||
|
else
|
||||||
|
canCont:= true;
|
||||||
|
end;
|
||||||
|
|
||||||
|
if not(canCont) then
|
||||||
|
Continue;
|
||||||
|
|
||||||
|
if (srcNazev.StartsWith('ep_', true)) then
|
||||||
|
Helios.ExecSQL ('DROP PROCEDURE IF EXISTS dbo.' + srcNazev);
|
||||||
|
if (srcNazev.StartsWith('ef_', true)) then
|
||||||
|
Helios.ExecSQL ('DROP FUNCTION IF EXISTS dbo.' + srcNazev);
|
||||||
|
|
||||||
|
|
||||||
|
if (srcNazev.StartsWith('trg_')) then
|
||||||
|
begin
|
||||||
|
if (lSQL.StartsWith('-- ')) then
|
||||||
|
lSQL:= MidStr(lSQL, lSQL.IndexOf(Chr(13))+3, lSQL.Length);
|
||||||
|
trgName:= LeftStr(lSQL, lSQL.IndexOf(' ON dbo.'));
|
||||||
|
trgName:= trgName.Replace ('CREATE TRIGGER ', '');
|
||||||
|
Helios.ExecSQL ('DROP TRIGGER IF EXISTS ' + trgName);
|
||||||
|
end;
|
||||||
|
|
||||||
|
if (srcNazev.StartsWith('tbl_', true)) then
|
||||||
|
lSQL:= lSQL.Trim;
|
||||||
|
|
||||||
|
if (lSQL<>'') then
|
||||||
|
try
|
||||||
|
Helios.ExecSQL (lSQL);
|
||||||
|
except on E:Exception do
|
||||||
|
if not(E.Message.Contains('already')) then
|
||||||
|
Helios.Error(#1'Chyba definice ' + srcNazev + #1 + CRLF + E.Message);
|
||||||
|
end;
|
||||||
|
|
||||||
|
end;
|
||||||
|
finally
|
||||||
|
ms.Free;
|
||||||
|
rs.Free;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
arrDefs.Free;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TPlgHDCRootvin.Run (const Helios: IHelios);
|
||||||
|
const HeliosMinVersion = $030020240620;
|
||||||
|
BrowseID_PluginInfo = 871;
|
||||||
|
var extId: Integer;
|
||||||
|
errMsg: String;
|
||||||
|
typAkce: integer;
|
||||||
|
browID, cRec, cntID, l_loop, idDZ, dpz, cOrg, newBid: integer;
|
||||||
|
lSQL, lSQLx, autor, radDokl, IDcka, params, paramsBak, vlastPar, vlastPar2, contInfo, sz, rc, podm, sTemp: string;
|
||||||
|
iTemp, iTemp2: integer;
|
||||||
|
arrId: TArray<integer>;
|
||||||
|
term: boolean;
|
||||||
|
i: Integer;
|
||||||
|
|
||||||
|
Browse: TplgBrowse;
|
||||||
|
GUIDAkce: String;
|
||||||
|
Q: IHeQuery;
|
||||||
|
Porovnani: TplgPorovnaniVerzi;
|
||||||
|
VerzeDB: String;
|
||||||
|
ZmenyOK: Boolean;
|
||||||
|
MinVerze: Int64;
|
||||||
|
PomHandle: THandle;
|
||||||
|
SlepaProcName: string;
|
||||||
|
SlepaProcGUID: string;
|
||||||
|
SlepaProcBrowse: string;
|
||||||
|
|
||||||
|
fPekarna: TformPekarna;
|
||||||
|
fPlan: TformPlan;
|
||||||
|
fRamcovyPlan: TformRamcovyPlan;
|
||||||
|
begin
|
||||||
|
UseLatestCommonDialogs:= true;
|
||||||
|
LocalFormatSettings:= TFormatSettings.Create;
|
||||||
|
|
||||||
|
try
|
||||||
|
FHelios:= Helios;
|
||||||
|
SpravceHeliosu.PridejHelios (FHelios);
|
||||||
|
try
|
||||||
|
Application.OnException:= Self.OnException;
|
||||||
|
|
||||||
|
// [RK 10.04.2006] zavedeni PomHandle, problemy s realokaci ikonky
|
||||||
|
// [RK 02.04.2009] doplneno pretypovani na THandle
|
||||||
|
PomHandle := THandle(FHelios.MainApplicationHandle);
|
||||||
|
if PomHandle <> Application.Handle then
|
||||||
|
Application.Handle := PomHandle;
|
||||||
|
|
||||||
|
PomHandle := THandle(FHelios.MainApplicationIconHandle);
|
||||||
|
if PomHandle <> Application.Icon.Handle then
|
||||||
|
Application.Icon.Handle := PomHandle;
|
||||||
|
|
||||||
|
with Application.DefaultFont do
|
||||||
|
begin
|
||||||
|
CharSet := FHelios.Charset;
|
||||||
|
Name := FHelios.Font;
|
||||||
|
Height := FHelios.FontHeight;
|
||||||
|
|
||||||
|
Screen.MenuFont.CharSet := CharSet;
|
||||||
|
Screen.MenuFont.Name := Name;
|
||||||
|
Screen.MenuFont.Height := Height;
|
||||||
|
end;
|
||||||
|
|
||||||
|
// ### INICIALIZACE ###
|
||||||
|
InicializaceJadraPluginu (FHelios);
|
||||||
|
PluginKonfig.VlastniInicializacePluginu (FHelios);
|
||||||
|
|
||||||
|
VerzeDB:= plgNactiVerziPluginuZDB (FHelios, ZmenyOK);
|
||||||
|
Porovnani:= plgPorovnejVerziPluginuSVerziDB (VerzeDB);
|
||||||
|
|
||||||
|
|
||||||
|
// ### INSTALACE PLUGINU ###
|
||||||
|
if (FHelios.BrowseID = BrowseID_PluginInfo) and plgExtKomIDInstalace(FHelios) then
|
||||||
|
begin
|
||||||
|
InstalacePluginu (FHelios, (FHelios.ExtKomID = Cplg_ExtKomID_TichaInstalace));
|
||||||
|
Exit;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
NactiKonfig (Helios);
|
||||||
|
|
||||||
|
if (Helios.HeVersion<HeliosMinVersion) then
|
||||||
|
begin
|
||||||
|
errMsg := 'Plugin vyžaduje min verzi Heliosu ' + IntToHex(HeliosMinVersion, 12) + '; Aktuální verze je ' + IntToHex(Helios.HeVersion, 12);
|
||||||
|
Helios.Error(errMsg);
|
||||||
|
raise Exception.Create(errMsg);
|
||||||
|
Exit;
|
||||||
|
end;
|
||||||
|
|
||||||
|
extId:= Helios.ExtKomID;
|
||||||
|
|
||||||
|
|
||||||
|
lSQLx:= 'SELECT UP FROM ' + tblExtKom + ' WHERE ID=' + extId.ToString;
|
||||||
|
plgHDCRTN_Name:= helUtils.getHeliosStrVal(Helios, '', lSQLx);
|
||||||
|
ZkotrolujDefiniceSQL (Helios);
|
||||||
|
|
||||||
|
helUtils.ReseedTable (Helios, tblDZ);
|
||||||
|
helUtils.ReseedTable (Helios, tblPZ);
|
||||||
|
helUtils.ReseedTable (Helios, tblPrikazVC);
|
||||||
|
|
||||||
|
|
||||||
|
with Helios.OpenSQL('SELECT CONVERT(nvarchar(128),CONTEXT_INFO(),2)') do
|
||||||
|
if VarIsNull(FieldValues(0)) then
|
||||||
|
contInfo:= 'NULL'
|
||||||
|
else
|
||||||
|
contInfo:= VarToStr(FieldValues(0));
|
||||||
|
|
||||||
|
Helios.ExecSQL('SET CONTEXT_INFO 0x48444334526F6F7476696E'); // nastav context v sys.sysprocesses (hexadecimalne HDC4Rootvin)
|
||||||
|
|
||||||
|
lSQL:= 'IF OBJECT_ID(''tempdb..#TabExtKom'', N''U'') IS NULL CREATE TABLE #TabExtKom (Typ TINYINT DEFAULT NULL, Poznamka NVARCHAR(255))' + CRLF;
|
||||||
|
lSQL:= lSQL + 'IF OBJECT_ID(N''tempdb..#TabTempUziv'') IS NULL CREATE TABLE #TabTempUziv (Tabulka';
|
||||||
|
lSQL:= lSQL + ' NVARCHAR(255) NOT NULL, SCOPE_IDENTITY INT NULL, Datum DATETIME NULL)';
|
||||||
|
Helios.ExecSQL(lSQL);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
delkaRC:= helUtils.getHeliosIntVal(Helios, 30, 'SELECT TOP(1) DelkaRegCislaZbozi FROM ' + tblHGlob);
|
||||||
|
|
||||||
|
term:= false;
|
||||||
|
params:= '';
|
||||||
|
vlastPar:= '';
|
||||||
|
vlastPar2:= '';
|
||||||
|
typAkce:= -1;
|
||||||
|
browID:= 0;
|
||||||
|
jeTest:= false;
|
||||||
|
|
||||||
|
|
||||||
|
lSQL:= lSQLx.Replace('T UP F', 'T Parametry F');
|
||||||
|
with Helios.OpenSQL(lSQL) do
|
||||||
|
if (RecordCount=1) then
|
||||||
|
begin
|
||||||
|
params:= VarToStr(FieldValues(0));
|
||||||
|
|
||||||
|
if (params.ToLower.Contains(';test')) then
|
||||||
|
jeTest:= true;
|
||||||
|
|
||||||
|
paramsBak:= VarToStr(FieldValues(0));
|
||||||
|
if (params.Contains(';')) then
|
||||||
|
begin
|
||||||
|
typAkce:= StrToInt(LeftStr(params,Pos(';',params)-1));
|
||||||
|
params:= MidStr(params,Pos(';',params)+1,255);
|
||||||
|
if (params.Contains(';')) then
|
||||||
|
begin
|
||||||
|
if not(TryStrToInt(LeftStr(params,Pos(';',params)-1), browID)) then
|
||||||
|
browID:= 0;
|
||||||
|
params:= MidStr(params,Pos(';',params)+1,255);
|
||||||
|
end
|
||||||
|
else
|
||||||
|
if not(TryStrToInt(params, browID)) then
|
||||||
|
browID:= 0;
|
||||||
|
if (params.Contains(';')) then // zadany 3 parametry (akce, browID, vlastnikID)
|
||||||
|
begin
|
||||||
|
params:= MidStr(params,Pos(';',params)+1,255);
|
||||||
|
if (params.Contains(';')) then
|
||||||
|
begin
|
||||||
|
vlastPar:= LeftStr(params,Pos(';',params)-1);
|
||||||
|
vlastPar2:= MidStr(params,Pos(';',params)+1,255);
|
||||||
|
end
|
||||||
|
else
|
||||||
|
vlastPar:= params;
|
||||||
|
end;
|
||||||
|
end
|
||||||
|
else
|
||||||
|
if (params<>'') then
|
||||||
|
if not(TryStrToInt(params, typAkce)) then
|
||||||
|
typAkce:= -1;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
if (browID>0) then
|
||||||
|
if (Helios.BrowseID<>browID) then
|
||||||
|
begin
|
||||||
|
typAkce:= 0;
|
||||||
|
Helios.Error('Tento plugin lze volat pouze z přehledu: '#1 + IntToStr(browID) + #1'.');
|
||||||
|
Exit;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
IDcka:= '';
|
||||||
|
cRec:= 0;
|
||||||
|
if (Helios.SelectedRecordIDs<>'') then
|
||||||
|
IDcka:= Helios.SelectedRecordIDs
|
||||||
|
else
|
||||||
|
if not VarIsNull(Helios.CurrentRecordID) then
|
||||||
|
begin
|
||||||
|
cRec:= StrToInt(VarToStr(Helios.CurrentRecordID));
|
||||||
|
IDcka:= IntToStr(cRec);
|
||||||
|
end;
|
||||||
|
|
||||||
|
if (IDcka<>'') then
|
||||||
|
begin
|
||||||
|
cntID:= 1 + Length(IDcka)-Length(StringReplace(IDcka,',','',[rfReplaceAll]));
|
||||||
|
SetLength(arrID,cntID);
|
||||||
|
for l_loop:=0 to cntID-1 do
|
||||||
|
begin
|
||||||
|
if Pos(',',IDcka)>0 then
|
||||||
|
begin
|
||||||
|
arrID[l_loop]:= StrToInt(LeftStr(IDcka,Pos(',',IDcka)-1));
|
||||||
|
IDcka:= MidStr(IDcka,Pos(',',IDcka)+1,262140) // 65535 * 4 (max. delka pole)
|
||||||
|
end
|
||||||
|
else
|
||||||
|
arrID[l_loop]:= StrToInt(IDcka);
|
||||||
|
end;
|
||||||
|
cRec:= arrID[0];
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
idDZrodic:= -1;
|
||||||
|
idDZ:= -1;
|
||||||
|
cOrgRodic:= -1;
|
||||||
|
cOrg:= -1;
|
||||||
|
cOrgMU:= -1;
|
||||||
|
cOrgPrijem:= -1;
|
||||||
|
dpzOZ:= -1;
|
||||||
|
if (Helios.HeliosVlastnik<>nil) then
|
||||||
|
begin
|
||||||
|
if (Helios.HeliosVlastnik.QueryEdit<>nil) then
|
||||||
|
begin
|
||||||
|
try
|
||||||
|
if (Helios.HeliosVlastnik.QueryEdit.FieldByName('ID')<>nil) then
|
||||||
|
if not(TryStrToInt(VarToStr(Helios.HeliosVlastnik.QueryEdit.FieldByNameValues('ID')), idDZrodic)) then
|
||||||
|
idDZrodic:= -1;
|
||||||
|
finally
|
||||||
|
end;
|
||||||
|
try
|
||||||
|
dpzOZ:= VarToStr(Helios.HeliosVlastnik.QueryEdit.FieldByNameValues('DruhPohybuZbo')).ToInteger;
|
||||||
|
finally
|
||||||
|
end;
|
||||||
|
try
|
||||||
|
radaDZ:= VarToStr(Helios.HeliosVlastnik.QueryEdit.FieldByNameValues('RadaDokladu'));
|
||||||
|
finally
|
||||||
|
end;
|
||||||
|
try
|
||||||
|
if not(TryStrToInt(VarToStr(Helios.HeliosVlastnik.QueryEdit.FieldByNameValues('CisloOrg')), cOrgRodic)) then
|
||||||
|
cOrgRodic:= -1;
|
||||||
|
finally
|
||||||
|
end;
|
||||||
|
try
|
||||||
|
if not(TryStrToInt(VarToStr(Helios.HeliosVlastnik.QueryEdit.FieldByNameValues('MistoUrceni')), cOrgMU)) then
|
||||||
|
cOrgMU:= -1;
|
||||||
|
finally
|
||||||
|
end;
|
||||||
|
try
|
||||||
|
if not(TryStrToInt(VarToStr(Helios.HeliosVlastnik.QueryEdit.FieldByNameValues('Prijemce')), cOrgPrijem)) then
|
||||||
|
cOrgPrijem:= -1;
|
||||||
|
finally
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
if (Helios.QueryEdit<>nil) then
|
||||||
|
begin
|
||||||
|
try
|
||||||
|
if (Helios.QueryEdit.FieldByName('ID')<>nil) then
|
||||||
|
if not(TryStrToInt(VarToStr(Helios.QueryEdit.FieldByName('ID').Value), idDZ)) then
|
||||||
|
idDZ:= -1;
|
||||||
|
finally
|
||||||
|
end;
|
||||||
|
|
||||||
|
if (browID<>959) and (browID<>962) then // ne pro DObj
|
||||||
|
begin
|
||||||
|
try
|
||||||
|
dpzOZ:= VarToStr(Helios.QueryEdit.FieldByName('DruhPohybuZbo').Value).ToInteger;
|
||||||
|
finally
|
||||||
|
end;
|
||||||
|
try
|
||||||
|
radaDZ:= VarToStr(Helios.QueryEdit.FieldByName('RadaDokladu').Value);
|
||||||
|
finally
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
try
|
||||||
|
if (Helios.QueryEdit.FieldByName('CisloOrg')<>nil) then
|
||||||
|
if not(TryStrToInt(VarToStr(Helios.QueryEdit.FieldByName('CisloOrg').Value), cOrg)) then
|
||||||
|
cOrg:= -1;
|
||||||
|
finally
|
||||||
|
end;
|
||||||
|
try
|
||||||
|
if not(TryStrToInt(VarToStr(Helios.QueryEdit.FieldByName('MistoUrceni').Value), cOrgMU)) then
|
||||||
|
cOrgMU:= -1;
|
||||||
|
finally
|
||||||
|
end;
|
||||||
|
try
|
||||||
|
if not(TryStrToInt(VarToStr(Helios.QueryEdit.FieldByName('Prijemce').Value), cOrgPrijem)) then
|
||||||
|
cOrgPrijem:= -1;
|
||||||
|
finally
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
if FHelios.ExtKomID = Cplg_ExtKomID_EditorController then
|
||||||
|
SpustControllerEditoru (FHelios)
|
||||||
|
else
|
||||||
|
if FHelios.ExtKomID = Cplg_ExtKomID_Zpravy then
|
||||||
|
PluginKonfig.ExtKomIDJeRovnoNule (FHelios)
|
||||||
|
else
|
||||||
|
if FHelios.ExtKomID = Cplg_ExtKomID_Konfigurace then
|
||||||
|
PluginKonfig.PluginConfiguration (FHelios)
|
||||||
|
else
|
||||||
|
begin
|
||||||
|
apiMod:= false;
|
||||||
|
datMod.apiMod:= apiMod;
|
||||||
|
apiServer:= '';
|
||||||
|
datMod.apiServer:= apiServer;
|
||||||
|
with Helios.OpenSQL('SELECT CONVERT(nvarchar(255), Poznamka) AS Poznamka FROM ' + tblExtKomPar + ' WHERE IdExtKom=' + extId.ToString + ' AND Popis=N''APIServer''') do
|
||||||
|
if (RecordCount=1) then
|
||||||
|
if (VarToStr(FieldByNameValues('Poznamka'))<>'') then
|
||||||
|
begin
|
||||||
|
datMod.apiMod:= true;
|
||||||
|
datMod.apiServer:= VarToStr(FieldByNameValues('Poznamka'));
|
||||||
|
// fPekarna.apiMod:= datMod.apiMod;
|
||||||
|
// fPekarna.apiServer:= datMod.apiServer;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
case typAkce of
|
||||||
|
-1: begin
|
||||||
|
Install (Helios)
|
||||||
|
{
|
||||||
|
else if extId = -2 then
|
||||||
|
About (Helios)
|
||||||
|
else
|
||||||
|
Work (Helios);
|
||||||
|
}
|
||||||
|
end;
|
||||||
|
|
||||||
|
1: begin
|
||||||
|
fPekarna:= TformPekarna.Create(nil);
|
||||||
|
try
|
||||||
|
try
|
||||||
|
fPekarna.Helios:= Helios;
|
||||||
|
fPekarna.apiMod:= apiMod;
|
||||||
|
fPekarna.apiServer:= apiServer;
|
||||||
|
fPekarna.ShowModal;
|
||||||
|
except on E:Exception do
|
||||||
|
if not(term) then
|
||||||
|
begin
|
||||||
|
errMsg:= 'Chyba fPekarna: ' + E.Message;
|
||||||
|
Helios.Error(errMsg);
|
||||||
|
raise Exception.Create(errMsg);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
finally
|
||||||
|
fPekarna.Free;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
2: begin
|
||||||
|
if not((dpzOZ=4) and (radaDZ='231')) then
|
||||||
|
Helios.Error(#1'Akci můžete spustit jen nad dokladem Výdejky/převodky řady 231'#1)
|
||||||
|
else
|
||||||
|
begin
|
||||||
|
tBid:= helUtils.getHeliosIntVal(Helios, 0, 'SELECT DPBID FROM ' + tblObecPrehled + ' WHERE NazevSys=N''hvw_Vyroba_Micharna_PozadavkyObj''');
|
||||||
|
if (tBid>0) then
|
||||||
|
begin
|
||||||
|
lSQL:= 'DROP TABLE IF EXISTS #TabZapisPolozekOZ' + CRLF + 'CREATE TABLE #TabZapisPolozekOZ (ID INT IDENTITY(1,1) NOT NULL, IDPolozky INT NOT NULL, PRIMARY KEY (ID))' + CRLF;
|
||||||
|
podm:= '(hvw_Vyroba_Micharna_PozadavkyObj.Blokovano=0 OR hvw_Vyroba_Micharna_PozadavkyObj.MnozKVydeji>0) AND hvw_Vyroba_Micharna_PozadavkyObj.Splneno=0';
|
||||||
|
if Helios.Prenos2 (tBid, 'ID', 'ID', oVar1, oVar2, podm, 'Vyberte položky', false, true, false, 1) then
|
||||||
|
begin
|
||||||
|
arrId:= helUtils.StrToArrayInt (VarToStr(oVar1), ',');
|
||||||
|
for i:=Low(arrId) to High(arrId) do
|
||||||
|
lSQL:= lSQL + 'INSERT #TabZapisPolozekOZ (IDPolozky) SELECT ' + arrId[i].ToString + CRLF;
|
||||||
|
end;
|
||||||
|
if (helUtils.SQLObjectExists(Helios, 'dbo.ep_HDC_PZ_ZapisPolozek')) and (Length(arrId)>0) then
|
||||||
|
begin
|
||||||
|
lSQL:= lSQL + 'EXEC dbo.ep_HDC_PZ_ZapisPolozek @typ=1, @idDokladOZDst=' + idDZ.ToString; // 1=zapis z dbo._TabVyroba_Objednavky do dokladu OZ
|
||||||
|
try
|
||||||
|
Helios.ExecSQL(lSQL);
|
||||||
|
except on E:Exception do
|
||||||
|
Helios.Error(#1'Chyba zápisu položek:'#1 + CRLF + E.Message);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
3: begin
|
||||||
|
fRamcovyPlan:= TformRamcovyPlan.Create (nil);
|
||||||
|
try
|
||||||
|
fRamcovyPlan.Helios:= Helios;
|
||||||
|
fRamcovyPlan.ShowModal;
|
||||||
|
finally
|
||||||
|
fRamcovyPlan.Free;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
101: begin
|
||||||
|
fPlan:= TformPlan.Create (nil);
|
||||||
|
try
|
||||||
|
try
|
||||||
|
fPlan.Helios:= Helios;
|
||||||
|
fPlan.ShowModal;
|
||||||
|
except on E:Exception do
|
||||||
|
if not(term) then
|
||||||
|
begin
|
||||||
|
errMsg:= 'Chyba fPlan: ' + E.Message;
|
||||||
|
Helios.Error(errMsg);
|
||||||
|
raise Exception.Create(errMsg);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
finally
|
||||||
|
FreeAndNil(fPlan);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
Helios.Refresh(true);
|
||||||
|
if (contInfo='NULL') then
|
||||||
|
Helios.ExecSQL('SET CONTEXT_INFO 0x')
|
||||||
|
else
|
||||||
|
Helios.ExecSQL('SET CONTEXT_INFO 0x' + contInfo);
|
||||||
|
|
||||||
|
// ukoncit Helios, lze pouzit v Automatech
|
||||||
|
if (term) then
|
||||||
|
Application.Terminate;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
finally
|
||||||
|
SpravceHeliosu.OdeberHelios (FHelios);
|
||||||
|
end;
|
||||||
|
except
|
||||||
|
// neni to pres Application.HandleException() kvuli probublani vyjimky
|
||||||
|
// do Heliosu (konkretni pouziti napr. v Automatu)
|
||||||
|
on E: EExternal do
|
||||||
|
begin
|
||||||
|
LockWindowUpdate(0); // jistota, kdyby nekde zustalo viset
|
||||||
|
raise EExternal.Create(E.Message);
|
||||||
|
end;
|
||||||
|
|
||||||
|
on E: Exception do
|
||||||
|
begin
|
||||||
|
LockWindowUpdate(0); // jistota, kdyby nekde zustalo viset
|
||||||
|
E.Message:= plgPrelozException(E.Message);
|
||||||
|
raise;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// param plugin ????
|
||||||
|
procedure TPlgHDCRootvinParams.Run (const Helios: IHelios);
|
||||||
|
var lSQL: string;
|
||||||
|
begin
|
||||||
|
lSQL:= 'DECLARE @p1 NVARCHAR(10)=N''''' + CRLF
|
||||||
|
+ 'IF OBJECT_ID(N''tempdb..#TabExtKomParPlugin'',''U'') IS NOT NULL' + CRLF
|
||||||
|
+ ' SELECT TOP(1) @p1=HIQPar1 FROM #TabExtKomParPlugin' + CRLF
|
||||||
|
+ 'SELECT @p1 AS Par1';
|
||||||
|
with Helios.OpenSQL(lSQL) do
|
||||||
|
Helios.Info('Par1: ' + VarToStr(FieldByName('Par1').Value));
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
{ =========================================================================== }
|
||||||
|
|
||||||
|
function PluginGetSysAndClassName(Vysl: PAnsiChar): DWORD; stdcall;
|
||||||
|
begin
|
||||||
|
with PluginKonfig do
|
||||||
|
begin
|
||||||
|
Result := Length(PluginSystemoveJmeno + '.' + PluginClassName);
|
||||||
|
if Assigned(Vysl) then
|
||||||
|
System.AnsiStrings.StrPCopy(Vysl, AnsiString(PluginSystemoveJmeno + '.' + PluginClassName));
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
{ --------------------------------------------------------------------------- }
|
||||||
|
(*
|
||||||
|
procedure PluginGetDelphiVersion(Vysl: PAnsiChar); stdcall;
|
||||||
|
var
|
||||||
|
LVer: AnsiString;
|
||||||
|
begin
|
||||||
|
if Assigned(Vysl) then
|
||||||
|
begin
|
||||||
|
{$IFDEF VER220} { Embarcadero Delphi 15 XE}
|
||||||
|
LVer := 'XE';
|
||||||
|
{$ELSE}
|
||||||
|
{$IFDEF VER240} { Embarcadero Delphi 17 XE3}
|
||||||
|
LVer := 'XE3';
|
||||||
|
{$ELSE}
|
||||||
|
LVer := '??';
|
||||||
|
{$ENDIF}
|
||||||
|
{$ENDIF}
|
||||||
|
|
||||||
|
StrPCopy(Vysl, LVer);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
*)
|
||||||
|
{ --------------------------------------------------------------------------- }
|
||||||
|
|
||||||
|
procedure PluginReadyForSilentInstall; stdcall;
|
||||||
|
begin
|
||||||
|
// nic, pouze flag pro pouziti tiche instalace
|
||||||
|
end;
|
||||||
|
|
||||||
|
{ --------------------------------------------------------------------------- }
|
||||||
|
|
||||||
|
// AJ, 8.12.2015 - Administrátorská podpora v HeO
|
||||||
|
procedure PluginReadyForSuperSilentInstall; stdcall;
|
||||||
|
begin
|
||||||
|
// nic, pouze flag pro použití super tiché instalace (tj. instalace, která požírá SQL raiserrory, hlášky a chyby a vše zaloguje do logu)
|
||||||
|
end;
|
||||||
|
|
||||||
|
{ --------------------------------------------------------------------------- }
|
||||||
|
|
||||||
|
exports
|
||||||
|
DllGetClassObject,
|
||||||
|
DllCanUnloadNow,
|
||||||
|
DllRegisterServer,
|
||||||
|
DllUnregisterServer,
|
||||||
|
PluginGetSysAndClassName,
|
||||||
|
// PluginGetDelphiVersion,
|
||||||
|
PluginReadyForSilentInstall,
|
||||||
|
PluginReadyForSuperSilentInstall // AJ, 8.12.2015 - Administrátorská podpora v HeO
|
||||||
|
;
|
||||||
|
|
||||||
|
initialization
|
||||||
|
TComObjectFactory.Create(ComServer, TPlgHDCRootvin, PluginKonfig.PluginClass_ID, PluginKonfig.PluginClassName, '', ciMultiInstance, tmSingle);
|
||||||
|
// TComObjectFactory.Create(ComServer, TPlgHDCRootvin, plgHDCRTN_class, 'run', '', ciMultiInstance, tmSingle);
|
||||||
|
// TComObjectFactory.Create(ComServer, TPlgHDCRootvinParams, plgHDCRTNParams_class, 'params', '', ciMultiInstance, tmSingle);
|
||||||
|
END.
|
||||||
74
PluginHDCRTN.dpr
Normal file
74
PluginHDCRTN.dpr
Normal file
@ -0,0 +1,74 @@
|
|||||||
|
library PluginHDCRTN;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
uses
|
||||||
|
madExcept,
|
||||||
|
madLinkDisAsm,
|
||||||
|
madListHardware,
|
||||||
|
madListProcesses,
|
||||||
|
madListModules,
|
||||||
|
ComServ,
|
||||||
|
System.Types,
|
||||||
|
AnsiStrings,
|
||||||
|
ComObjekt in 'ComObjekt.pas',
|
||||||
|
frmPekarna in 'frmPekarna.pas' {formPekarna},
|
||||||
|
datMod in 'datMod.pas' {dm: TDataModule},
|
||||||
|
frmPrijemNestandard in 'frmPrijemNestandard.pas' {formPrijemNestandard},
|
||||||
|
uUtils in 'uUtils.pas' {frmAbout},
|
||||||
|
frmKontrolaCCP1 in 'frmKontrolaCCP1.pas' {formKontrolaCCP1},
|
||||||
|
frmKontrolaCCP1edt in 'frmKontrolaCCP1edt.pas' {formKontrolaCCP1edt},
|
||||||
|
frmTiskKAStitku in 'frmTiskKAStitku.pas' {formTiskKAStitku},
|
||||||
|
frmAktSarze in 'frmAktSarze.pas' {formAktSarze},
|
||||||
|
frmTiskyNahledy in 'frmTiskyNahledy.pas' {formTiskyNahledy},
|
||||||
|
frmPLZakazky in 'frmPLZakazky.pas' {formPLZakazky},
|
||||||
|
frmZahajeniPalety in 'frmZahajeniPalety.pas' {formZahajeniPalety},
|
||||||
|
frmUkonceniPalety in 'frmUkonceniPalety.pas' {formUkonceniPalety},
|
||||||
|
frmVyrobniDenik in 'frmVyrobniDenik.pas' {formVyrobniDenik},
|
||||||
|
frmPredvyroba in 'frmPredvyroba.pas' {formPredvyroba},
|
||||||
|
frmPredvyrobaDetail in 'frmPredvyrobaDetail.pas' {formPredvyrobaDetail},
|
||||||
|
frmVyrobaMimoPlan in 'frmVyrobaMimoPlan.pas' {formVyrobaMimoPlan},
|
||||||
|
frmVyberPL in 'frmVyberPL.pas' {formVyberPL},
|
||||||
|
frmVyberCinnostiStroje in 'frmVyberCinnostiStroje.pas' {formVyberCinnostiStroje},
|
||||||
|
frmZasobaObjednavky in 'frmZasobaObjednavky.pas' {formZasobaObjednavky},
|
||||||
|
frmObjednavkaMat in 'frmObjednavkaMat.pas' {formObjednavkaMat},
|
||||||
|
frmOdpady in 'frmOdpady.pas' {formOdpady},
|
||||||
|
frmSeznamPalet in 'frmSeznamPalet.pas' {formSeznamPalet},
|
||||||
|
frmPrehledMicharna in 'frmPrehledMicharna.pas' {formPrehledMicharna},
|
||||||
|
frmSpravaVzorku in 'frmSpravaVzorku.pas' {formSpravaVzorku},
|
||||||
|
frmVyberSarze in 'frmVyberSarze.pas' {formVyberSarze},
|
||||||
|
frmSarzeVydej in 'frmSarzeVydej.pas' {formSarzeVydej},
|
||||||
|
frmPlan in '_plgPlan\frmPlan.pas' {formPlan},
|
||||||
|
frmKmen in '_plgPlan\frmKmen.pas' {formKmen},
|
||||||
|
datMod2 in '_plgPlan\datMod2.pas' {dm2: TDataModule},
|
||||||
|
frmZavady in '_plgPlan\frmZavady.pas' {formZavady},
|
||||||
|
frmVyrobniTyden in '_plgPlan\frmVyrobniTyden.pas' {formVyberTydne},
|
||||||
|
frmRamcovyPlan in '_plgPlan\frmRamcovyPlan.pas' {formRamcovyPlan},
|
||||||
|
plgMain in 'libSys\plgMain.pas',
|
||||||
|
frmPlanPaletListy in '_plgPlan\frmPlanPaletListy.pas' {formPlanPaletListy};
|
||||||
|
|
||||||
|
// Dokumentace se odkazuje na PChar, ale zda se neaktualni. Je mozne, ze byla napsana pred zmenou definice na UTF-16?
|
||||||
|
|
||||||
|
function PluginGetSysAndClassName (Vysl: PAnsiChar): DWORD; stdcall;
|
||||||
|
const C_ProgID: AnsiString = 'PluginHDCRTN.run';
|
||||||
|
begin
|
||||||
|
Result:= Length(C_ProgID);
|
||||||
|
if Assigned(Vysl) then
|
||||||
|
StrPCopy(Vysl, C_ProgID);
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
exports
|
||||||
|
DllGetClassObject,
|
||||||
|
DllCanUnloadNow,
|
||||||
|
DllRegisterServer,
|
||||||
|
DllUnregisterServer,
|
||||||
|
PluginGetSysAndClassName;
|
||||||
|
|
||||||
|
{$R *.RES}
|
||||||
|
{$R PluginHDCRTNResource.RES}
|
||||||
|
|
||||||
|
|
||||||
|
BEGIN
|
||||||
|
END.
|
||||||
1164
PluginHDCRTN.dproj
Normal file
1164
PluginHDCRTN.dproj
Normal file
File diff suppressed because it is too large
Load Diff
163
PluginHDCRTN.mes
Normal file
163
PluginHDCRTN.mes
Normal file
@ -0,0 +1,163 @@
|
|||||||
|
[GeneralSettings]
|
||||||
|
MesVersion=4
|
||||||
|
HandleExceptions=1
|
||||||
|
LinkInCode=1
|
||||||
|
AppendMapFileToBinary=1
|
||||||
|
NoOwnMadExceptSettings=0
|
||||||
|
CheckFileCrc=1
|
||||||
|
CheckForFrozenMainThread=1
|
||||||
|
FreezeTimeout=60000
|
||||||
|
ReportLeaks=0
|
||||||
|
WindowsLogo=0
|
||||||
|
CrashOnBuffer=0
|
||||||
|
CrashOnUnderrun=0
|
||||||
|
AutomaticallySaveBugReport=0
|
||||||
|
AutoSaveBugReportIfNotSent=1
|
||||||
|
AutomaticallyMailBugReport=0
|
||||||
|
AutoMailProgressBox=0
|
||||||
|
CopyBugReportToClipboard=0
|
||||||
|
SuspendAllRunningThreads=0
|
||||||
|
ShowPleaseWaitBox=1
|
||||||
|
PleaseWaitIcon=plwait1
|
||||||
|
AutomaticallyContinueApplication=1
|
||||||
|
AutomaticallyRestartApplication=0
|
||||||
|
AutomaticallyCloseApplication=0
|
||||||
|
SendInBackground=0
|
||||||
|
SendHelper=196864
|
||||||
|
Send32Icon=send321
|
||||||
|
UploadViaHttp=0
|
||||||
|
HttpServer=
|
||||||
|
HttpSsl=0
|
||||||
|
HttpPort=0
|
||||||
|
HttpAccount=
|
||||||
|
HttpPassword=
|
||||||
|
UploadToFogBugz=0
|
||||||
|
UploadToBugZilla=0
|
||||||
|
UploadToMantis=0
|
||||||
|
BugTrackerAccount=
|
||||||
|
BugTrackerPassword=
|
||||||
|
BugTrackerProject=
|
||||||
|
BugTrackerArea=
|
||||||
|
BugTrackerAssignTo=
|
||||||
|
MailAsSmtpServer=0
|
||||||
|
MailAsSmtpClient=1
|
||||||
|
SmtpServer=smtp.forpsi.com
|
||||||
|
SmtpSsl=0
|
||||||
|
SmtpTls=1
|
||||||
|
SmtpPort=0
|
||||||
|
SmtpAccount=helios_info@hdconsulting.cz
|
||||||
|
SmtpPassword=SVKrFWa9/396BZ3oRdkq9/KgphAaE0+i
|
||||||
|
MailViaMapi=0
|
||||||
|
MailViaMailto=0
|
||||||
|
MailAddress=tomas.buzin@hdconsulting.cz
|
||||||
|
BugReportFile=bugreport.txt
|
||||||
|
AttachBugReport=1
|
||||||
|
AttachBugReportFile=1
|
||||||
|
DeleteBugReportFile=1
|
||||||
|
BugReportSendAs=bugreport.txt
|
||||||
|
BugReportZip=
|
||||||
|
ScreenShotDepth=8
|
||||||
|
ScreenShotAppOnly=0
|
||||||
|
ScreenShotSendAs=screenshot.png
|
||||||
|
ScreenShotZip=
|
||||||
|
AdditionalAttachments=
|
||||||
|
AppendBugReports=1
|
||||||
|
BugReportFileSize=200000
|
||||||
|
DontSaveDuplicateExceptions=1
|
||||||
|
DontSaveDuplicateFreezings=1
|
||||||
|
DuplicateExceptionDefinition=1
|
||||||
|
DuplicateFreezeDefinition=2
|
||||||
|
ShowExceptionBox=1
|
||||||
|
OkBtnText=&OK
|
||||||
|
DetailsBtnText=&Details
|
||||||
|
PleaseWaitTitle=Information
|
||||||
|
PleaseWaitText=Please wait a moment...
|
||||||
|
BugTrackerTitle=%25appname%25, %25exceptMsg%25
|
||||||
|
BugTrackerDescr=error details: %0d%0a%25errorDetails%25
|
||||||
|
MailSubject=bug report
|
||||||
|
MailBody=please find the bug report attached
|
||||||
|
SendBoxTitle=Sending bug report...
|
||||||
|
PrepareAttachMsg=Preparing attachments...
|
||||||
|
MxLookupMsg=Searching for mail server...
|
||||||
|
ConnectMsg=Connecting to server...
|
||||||
|
SendMailMsg=Sending mail...
|
||||||
|
FieldsMsg=Setting fields...
|
||||||
|
SendAttachMsg=Sending attachments...
|
||||||
|
SendFinalizeMsg=Finalizing...
|
||||||
|
MailFailureMsg=Sorry, sending the bug report didn't work.
|
||||||
|
VersionVariable=
|
||||||
|
[ExceptionBox]
|
||||||
|
ShowButtonMailBugReport=0
|
||||||
|
ShowButtonSaveBugReport=0
|
||||||
|
ShowButtonPrintBugReport=0
|
||||||
|
ShowButtonShowBugReport=1
|
||||||
|
ShowButtonContinueApplication=1
|
||||||
|
ShowButtonRestartApplication=1
|
||||||
|
ShowButtonCloseApplication=1
|
||||||
|
IconButtonSendBugReport=send1
|
||||||
|
IconButtonSaveBugReport=save1
|
||||||
|
IconButtonPrintBugReport=print1
|
||||||
|
IconButtonShowBugReport=show1
|
||||||
|
IconButtonContinueApplication=continue1
|
||||||
|
IconButtonCantContinueApplication=cantContinue1
|
||||||
|
IconButtonRestartApplication=restart1
|
||||||
|
IconButtonCloseApplication=close1
|
||||||
|
FocusedButton=4
|
||||||
|
SendAssistant=SendAssistant
|
||||||
|
SaveAssistant=SaveAssistant
|
||||||
|
PrintAssistant=PrintAssistant
|
||||||
|
AutomaticallyShowBugReport=0
|
||||||
|
NoOwnerDrawButtons=0
|
||||||
|
BigExceptionIcon=big1
|
||||||
|
TitleBar=%25appname%25
|
||||||
|
ExceptionMessage=An error occurred in the application.
|
||||||
|
FrozenMessage=The application seems to be frozen.
|
||||||
|
BitFaultMsg=The file "%25modname%25" seems to be corrupt!
|
||||||
|
MailBugReportText=send bug report
|
||||||
|
SaveBugReportText=save bug report
|
||||||
|
PrintBugReportText=print bug report
|
||||||
|
ShowBugReportText=show bug report
|
||||||
|
ContinueApplicationText=continue application
|
||||||
|
RestartApplicationText=restart application
|
||||||
|
CloseApplicationText=close application
|
||||||
|
[BugReport]
|
||||||
|
ListThreads=1
|
||||||
|
ListModules=1
|
||||||
|
ListHardware=1
|
||||||
|
ShowCpuRegisters=1
|
||||||
|
ShowStackDump=1
|
||||||
|
Disassembly=1
|
||||||
|
HideUglyItems=0
|
||||||
|
ShowRelativeAddrs=1
|
||||||
|
ShowRelativeLines=1
|
||||||
|
FormatDisassembly=0
|
||||||
|
LimitDisassembly=5
|
||||||
|
EnabledPlugins=modules|processes|hardware
|
||||||
|
[Filters]
|
||||||
|
Filter1ExceptionClasses=EDBEditError
|
||||||
|
Filter1DontCreateBugReport=0
|
||||||
|
Filter1DontCreateScreenshot=0
|
||||||
|
Filter1DontSuspendThreads=1
|
||||||
|
Filter1DontCallHandlers=0
|
||||||
|
Filter1ShowBox=4
|
||||||
|
Filter1Assis=
|
||||||
|
Filter2ExceptionClasses=
|
||||||
|
Filter2DontCreateBugReport=0
|
||||||
|
Filter2DontCreateScreenshot=0
|
||||||
|
Filter2DontSuspendThreads=0
|
||||||
|
Filter2DontCallHandlers=0
|
||||||
|
Filter2ShowBox=0
|
||||||
|
Filter2Assis=
|
||||||
|
GeneralDontCreateBugReport=0
|
||||||
|
GeneralDontCreateScreenshot=0
|
||||||
|
GeneralDontSuspendThreads=0
|
||||||
|
GeneralDontCallHandlers=0
|
||||||
|
GeneralShowBox=0
|
||||||
|
GeneralAssis=
|
||||||
|
[Assistants]
|
||||||
|
Assistant1=SendAssistant|Send Assistant|ContactForm|DetailsForm|ScrShotForm
|
||||||
|
Assistant2=SaveAssistant|Save Assistant|ContactForm|DetailsForm
|
||||||
|
Assistant3=PrintAssistant|Print Assistant|ContactForm|DetailsForm
|
||||||
|
Forms1=TPF0%0eTMEContactForm%0bContactForm%07Message%0c%13%00%00%00Contact Information%08MinWidth%04%00%00%00%00%08OnAction%0c%1b%00%00%00madExcept.HandleContactForm%05Timer%04%00%00%00%00%00%09INVButton%0bContinueBtn%07Caption%0c%08%00%00%00Continue%07Enabled%09%0bNoOwnerDraw%08%07Visible%09%00%00%09INVButton%07SkipBtn%07Caption%0c%04%00%00%00Skip%07Enabled%08%0bNoOwnerDraw%08%07Visible%09%00%00%09INVButton%09CancelBtn%07Caption%0c%06%00%00%00Cancel%07Enabled%09%0bNoOwnerDraw%08%07Visible%09%00%00%08INVLabel%06Label1%07Caption%0c%0a%00%00%00your name:%07Enabled%09%07Spacing%04%00%00%00%00%00%00%07INVEdit%08NameEdit%07Colored%09%07Enabled%09%05Lines%04%01%00%00%00%08Optional%09%0aOutputName%0c%0c%00%00%00contact name%0aOutputType%07%09nvoHeader%07Spacing%04%00%00%00%00%04Text%0c%00%00%00%00%05Valid%09%00%00%08INVLabel%06Label2%07Caption%0c%0b%00%00%00your email:%07Enabled%09%07Spacing%04%00%00%00%00%00%00%07INVEdit%09EmailEdit%07Colored%09%07Enabled%09%05Lines%04%01%00%00%00%08Optional%08%0aOutputName%0c%0d%00%00%00contact email%0aOutputType%07%09nvoHeader%07Spacing%04%00%00%00%00%04Text%0c%00%00%00%00%05Valid%09%00%00%0bINVCheckBox%08MemCheck%07Caption%0c%0b%00%00%00remember me%07Checked%08%07Enabled%09%0aOutputName%0c%00%00%00%00%07Spacing%04%00%00%00%00%00%00%00
|
||||||
|
Forms2=TPF0%0eTMEDetailsForm%0bDetailsForm%07Message%0c%0d%00%00%00Error Details%08MinWidth%04%00%00%00%00%08OnAction%0c%00%00%00%00%05Timer%04%00%00%00%00%00%09INVButton%0bContinueBtn%07Caption%0c%08%00%00%00Continue%07Enabled%09%0bNoOwnerDraw%08%07Visible%09%00%00%09INVButton%07SkipBtn%07Caption%0c%04%00%00%00Skip%07Enabled%09%0bNoOwnerDraw%08%07Visible%09%00%00%09INVButton%09CancelBtn%07Caption%0c%06%00%00%00Cancel%07Enabled%09%0bNoOwnerDraw%08%07Visible%09%00%00%08INVLabel%06Label1%07Caption%0c,%00%00%00what were you doing when the error occurred?%07Enabled%09%07Spacing%04%00%00%00%00%00%00%07INVEdit%0bDetailsMemo%07Colored%09%07Enabled%09%05Lines%04%09%00%00%00%08Optional%08%0aOutputName%0c%0d%00%00%00error details%0aOutputType%07%0dnvoOwnSection%07Spacing%04%00%00%00%00%04Text%0c%00%00%00%00%05Valid%09%00%00%00
|
||||||
|
Forms3=TPF0%0eTMEScrShotForm%0bScrShotForm%0dActiveControl%07%0bContinueBtn%07Message%0c%18%00%00%00Screenshot Configuration%08MinWidth%04%00%00%00%00%08OnAction%0c%1e%00%00%00madExcept.HandleScreenshotForm%05Timer%04%fa%00%00%00%00%09INVButton%0bContinueBtn%07Caption%0c%08%00%00%00Continue%07Enabled%09%0bNoOwnerDraw%08%07Visible%09%00%00%09INVButton%07SkipBtn%07Caption%0c%04%00%00%00Skip%07Enabled%08%0bNoOwnerDraw%08%07Visible%09%00%00%09INVButton%09CancelBtn%07Caption%0c%06%00%00%00Cancel%07Enabled%09%0bNoOwnerDraw%08%07Visible%09%00%00%0bINVCheckBox%0bAttachCheck%07Caption%0c%25%00%00%00attach a screenshot to the bug report%07Checked%09%07Enabled%09%0aOutputName%0c%00%00%00%00%07Spacing%04%00%00%00%00%00%00%08INVImage%0aScrShotImg%06Border%09%09Clickable%09%07Enabled%09%04File%0c%00%00%00%00%06Height%04%00%00%00%00%07Spacing%04%00%00%00%00%05Width%04%00%00%00%00%00%00%08INVLabel%06Label1%07Caption%0c%15%00%00%00(click to edit image)%07Enabled%09%07Spacing%04%00%00%00%00%00%00%00
|
||||||
BIN
PluginHDCRTN.otares
Normal file
BIN
PluginHDCRTN.otares
Normal file
Binary file not shown.
4
PluginHDCRTN.xml
Normal file
4
PluginHDCRTN.xml
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<cfg>
|
||||||
|
<cfgPluginHDCRTN phServer="http://rootvin.datazone.cloud/helios/api"/>
|
||||||
|
</cfg>
|
||||||
12
_plgPlan/col_AdvKPDavky_EXT.sql
Normal file
12
_plgPlan/col_AdvKPDavky_EXT.sql
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
DECLARE @currDat DATETIME=GETDATE()
|
||||||
|
IF (COL_LENGTH(N'dbo.TabAdvKPDavky_EXT', N'_MnozstviKs') IS NULL)
|
||||||
|
EXEC dbo.hp_ImportUzivAtr @Externi=1, @NazevTabulkySys=N'TabAdvKPDavky', @NazevAtrSys=N'_MnozstviKs', @Skupina=N'Plugin Pl<50>nov<6F>n<EFBFBD>', @NazevAtrVer=N'Mno<EFBFBD>stv<EFBFBD> pl<70>nu (ks)',
|
||||||
|
@NazevAtrVerZkr=N'', @TypAtr=N'NUMERIC', @MaskaAtr=NULL, @VerejnyAtr=N'V', @SirkaSloupceAtr=16, @SumovatAtr=N'A', @TiskAtr=N'A', @ProcPruhAtr=0, @Kopirovat=0,
|
||||||
|
@KonverzeAtr=NULL, @ExtEd_Poradi=1, @ExtEd_Zalozka=NULL, @ExtEd_BrowseID=NULL, @ExtEd_Atr=NULL, @ExtEd_PrimaEditace=1, @DatPorizeni=@currDat, @DatZmeny=NULL,
|
||||||
|
@TypAtrSQL=N'NUMERIC(19,6)', @ExtEd_BrowseID_DPSN=NULL, @Poznamka=N'Mno<EFBFBD>stv<EFBFBD> ks zobrazen<65> v pluginu Pl<50>nov<6F>n<EFBFBD>', @Definice=NULL, @Podminka=NULL, @HromadneZmenyAtr=1
|
||||||
|
|
||||||
|
IF (COL_LENGTH(N'dbo.TabAdvKPDavky_EXT', N'_VazbaPlgPlan') IS NULL)
|
||||||
|
EXEC dbo.hp_ImportUzivAtr @Externi=1, @NazevTabulkySys=N'TabAdvKPDavky', @NazevAtrSys=N'_VazbaPlgPlan', @Skupina=N'Plugin Pl<50>nov<6F>n<EFBFBD>', @NazevAtrVer=N'ID pl<70>nu pluginu',
|
||||||
|
@NazevAtrVerZkr=N'', @TypAtr=N'INT', @MaskaAtr=NULL, @VerejnyAtr=N'N', @SirkaSloupceAtr=16, @SumovatAtr=N'N', @TiskAtr=N'A', @ProcPruhAtr=0, @Kopirovat=0,
|
||||||
|
@KonverzeAtr=NULL, @ExtEd_Poradi=1, @ExtEd_Zalozka=NULL, @ExtEd_BrowseID=NULL, @ExtEd_Atr=NULL, @ExtEd_PrimaEditace=1, @DatPorizeni=@currDat, @DatZmeny=NULL,
|
||||||
|
@TypAtrSQL=N'INT', @ExtEd_BrowseID_DPSN=NULL, @Poznamka=N'ID sady d<>vek zalo<6C>en<65>ch v pluginu Pl<50>nov<6F>n<EFBFBD>', @Definice=NULL, @Podminka=NULL, @HromadneZmenyAtr=0
|
||||||
14
_plgPlan/col_Prikaz_EXT.sql
Normal file
14
_plgPlan/col_Prikaz_EXT.sql
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
DECLARE @currDat DATETIME=GETDATE()
|
||||||
|
IF (COL_LENGTH(N'dbo.TabPrikaz_EXT', N'_PlanZahajeni') IS NULL)
|
||||||
|
EXEC dbo.hp_ImportUzivAtr @Externi=1, @NazevTabulkySys=N'TabPrikaz', @NazevAtrSys=N'_PlanZahajeni', @Skupina=N'Plugin Pl<50>nov<6F>n<EFBFBD>', @NazevAtrVer=N'Pl<EFBFBD>novan<EFBFBD> zah<61>jen<65>',
|
||||||
|
@NazevAtrVerZkr=N'', @TypAtr=N'DATETIME', @MaskaAtr=NULL, @VerejnyAtr=N'A', @SirkaSloupceAtr=16, @SumovatAtr=N'N', @TiskAtr=N'A', @ProcPruhAtr=0, @Kopirovat=0,
|
||||||
|
@KonverzeAtr=NULL, @ExtEd_Poradi=1, @ExtEd_Zalozka=NULL, @ExtEd_BrowseID=NULL, @ExtEd_Atr=NULL, @ExtEd_PrimaEditace=1, @DatPorizeni=@currDat, @DatZmeny=NULL,
|
||||||
|
@TypAtrSQL=N'DATETIME', @ExtEd_BrowseID_DPSN=NULL, @Poznamka=N'Pl<EFBFBD>novan<EFBFBD> zah<61>jen<65> z pluginu Pl<50>nov<6F>n<EFBFBD>', @Definice=NULL, @Podminka=NULL, @HromadneZmenyAtr=1
|
||||||
|
|
||||||
|
|
||||||
|
IF (COL_LENGTH(N'dbo.TabPrikaz_EXT', N'_PlanUkonceni') IS NULL)
|
||||||
|
EXEC dbo.hp_ImportUzivAtr @Externi=1, @NazevTabulkySys=N'TabPrikaz', @NazevAtrSys=N'_PlanUkonceni', @Skupina=N'Plugin Pl<50>nov<6F>n<EFBFBD>', @NazevAtrVer=N'Pl<EFBFBD>novan<EFBFBD> ukon<6F>en<65>',
|
||||||
|
@NazevAtrVerZkr=N'', @TypAtr=N'DATETIME', @MaskaAtr=NULL, @VerejnyAtr=N'A', @SirkaSloupceAtr=16, @SumovatAtr=N'N', @TiskAtr=N'A', @ProcPruhAtr=0, @Kopirovat=0,
|
||||||
|
@KonverzeAtr=NULL, @ExtEd_Poradi=1, @ExtEd_Zalozka=NULL, @ExtEd_BrowseID=NULL, @ExtEd_Atr=NULL, @ExtEd_PrimaEditace=1, @DatPorizeni=@currDat, @DatZmeny=NULL,
|
||||||
|
@TypAtrSQL=N'DATETIME', @ExtEd_BrowseID_DPSN=NULL, @Poznamka=N'Pl<EFBFBD>novan<EFBFBD> ukon<6F>en<65> z pluginu Pl<50>nov<6F>n<EFBFBD>', @Definice=NULL, @Podminka=NULL, @HromadneZmenyAtr=1
|
||||||
|
|
||||||
4
_plgPlan/compileZdroje.cmd
Normal file
4
_plgPlan/compileZdroje.cmd
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
@echo off
|
||||||
|
"C:\Program files (x86)\Embarcadero\Studio\23.0\bin\brcc32.exe" PluginHDCRTNPlanResource.rc
|
||||||
|
|
||||||
|
|
||||||
4766
_plgPlan/datMod2.dfm
Normal file
4766
_plgPlan/datMod2.dfm
Normal file
File diff suppressed because it is too large
Load Diff
821
_plgPlan/datMod2.pas
Normal file
821
_plgPlan/datMod2.pas
Normal file
@ -0,0 +1,821 @@
|
|||||||
|
unit datMod2;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
System.SysUtils, System.Classes,
|
||||||
|
ddPlugin_TLB, 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,
|
||||||
|
frmPlan, frmRamcovyPlan, Vcl.BaseImageCollection, Vcl.ImageCollection, System.ImageList, Vcl.ImgList,
|
||||||
|
Vcl.VirtualImageList, Vcl.Controls;
|
||||||
|
|
||||||
|
{$I iConsts.inc}
|
||||||
|
|
||||||
|
type
|
||||||
|
TGridColWidthKoefs = record
|
||||||
|
fieldName: string;
|
||||||
|
widthKoef: Extended;
|
||||||
|
end;
|
||||||
|
|
||||||
|
TDavkaPrikazOdv = record
|
||||||
|
cislo: integer;
|
||||||
|
idPrikaz: integer;
|
||||||
|
idDavka: integer;
|
||||||
|
mnozOdvPrikaz: extended;
|
||||||
|
mnozZapsane: Extended;
|
||||||
|
mnozOdvPredchozi: extended;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
Tdm2 = class(TDataModule)
|
||||||
|
vtRozpis: TFDMemTable;
|
||||||
|
dsRozpis: TDataSource;
|
||||||
|
dsKalendar: TDataSource;
|
||||||
|
vtKalendar: TFDMemTable;
|
||||||
|
vtRozpiscolDatum: TDateField;
|
||||||
|
vtRozpiscolID: TIntegerField;
|
||||||
|
vtRozpiscolHodOd: TSmallintField;
|
||||||
|
vtRozpiscolHodDo: TSmallintField;
|
||||||
|
vtRozpiscolSkupZbo: TStringField;
|
||||||
|
vtRozpiscolRegCis: TStringField;
|
||||||
|
vtRozpiscolNazev: TStringField;
|
||||||
|
vtRozpiscolPrikaz: TStringField;
|
||||||
|
vtRozpiscolMnoz: TSmallintField;
|
||||||
|
vtRozpiscolMnozHotovo: TSmallintField;
|
||||||
|
vtKalendarcolIDStroj: TIntegerField;
|
||||||
|
vtKalendarcolStroj: TStringField;
|
||||||
|
vtKalendarcolNe: TSmallintField;
|
||||||
|
vtKalendarcolPo: TSmallintField;
|
||||||
|
vtKalendarcolUt: TSmallintField;
|
||||||
|
vtKalendarcolSt: TSmallintField;
|
||||||
|
vtKalendarcolCt: TSmallintField;
|
||||||
|
vtKalendarcolPa: TSmallintField;
|
||||||
|
vtKalendarcolSo: TSmallintField;
|
||||||
|
vtKalendarcolKodStroj: TStringField;
|
||||||
|
dsKmen: TDataSource;
|
||||||
|
vtKmen: TFDMemTable;
|
||||||
|
vtKmencolID: TIntegerField;
|
||||||
|
vtKmencolSZ: TStringField;
|
||||||
|
vtKmencolRegCis: TStringField;
|
||||||
|
vtKmencolNazev1: TStringField;
|
||||||
|
vtKmencolMJEvid: TStringField;
|
||||||
|
vtKmencolDilec: TBooleanField;
|
||||||
|
vtKmencolMaterial: TBooleanField;
|
||||||
|
vtKmencolSluzba: TBooleanField;
|
||||||
|
vtKmencolSKP: TStringField;
|
||||||
|
imgCol: TImageCollection;
|
||||||
|
imgList: TVirtualImageList;
|
||||||
|
ImageList1: TImageList;
|
||||||
|
vtKmenIDZaklad: TIntegerField;
|
||||||
|
vtKmencolZaklad: TStringField;
|
||||||
|
vtKmencolIDStroj: TIntegerField;
|
||||||
|
vtKmencolStroj: TStringField;
|
||||||
|
vtKmencolKSvKA: TIntegerField;
|
||||||
|
vtKmencolKAnaPAL: TIntegerField;
|
||||||
|
vtKmencolKSnaPAL: TIntegerField;
|
||||||
|
vtKmencolIDZakModif: TIntegerField;
|
||||||
|
dsZavady: TDataSource;
|
||||||
|
vtZavady: TFDMemTable;
|
||||||
|
vtZavadycolID: TIntegerField;
|
||||||
|
vtZavadycolKod: TStringField;
|
||||||
|
vtZavadycolTyp: TIntegerField;
|
||||||
|
vtZavadycolNazev: TStringField;
|
||||||
|
vtRozpiscolIDDavkaAdvPlan: TIntegerField;
|
||||||
|
vtRozpiscolIdKmen: TIntegerField;
|
||||||
|
vtRozpiscolIdPrikaz: TIntegerField;
|
||||||
|
vtVyrobniTyden: TFDMemTable;
|
||||||
|
dsVyrobniTyden: TDataSource;
|
||||||
|
vtVyrobniTydencolTyden: TIntegerField;
|
||||||
|
vtVyrobniTydencolDatumOd: TDateField;
|
||||||
|
vtVyrobniTydencolDatumDo: TDateField;
|
||||||
|
vtVyrobniTydencolRok: TIntegerField;
|
||||||
|
dsRamcovyPlan: TDataSource;
|
||||||
|
vtRamcovyPlan: TFDMemTable;
|
||||||
|
vtRamcovyPlanID: TIntegerField;
|
||||||
|
vtRamcovyPlanIDKmen: TIntegerField;
|
||||||
|
vtRamcovyPlanSZ: TStringField;
|
||||||
|
vtRamcovyPlanRegCis: TStringField;
|
||||||
|
vtRamcovyPlanNazev1: TStringField;
|
||||||
|
vtRamcovyPlanMJ: TStringField;
|
||||||
|
vtRamcovyPlanKs: TIntegerField;
|
||||||
|
vtRamcovyPlanKA: TIntegerField;
|
||||||
|
vtRamcovyPlanCisloOrg: TIntegerField;
|
||||||
|
vtRamcovyPlanM01: TIntegerField;
|
||||||
|
vtRamcovyPlanM02: TIntegerField;
|
||||||
|
vtRamcovyPlanM03: TIntegerField;
|
||||||
|
vtRamcovyPlanM04: TIntegerField;
|
||||||
|
vtRamcovyPlanM05: TIntegerField;
|
||||||
|
vtRamcovyPlanM06: TIntegerField;
|
||||||
|
vtRamcovyPlanM07: TIntegerField;
|
||||||
|
vtRamcovyPlanM08: TIntegerField;
|
||||||
|
vtRamcovyPlanM09: TIntegerField;
|
||||||
|
vtRamcovyPlanM10: TIntegerField;
|
||||||
|
vtRamcovyPlanM11: TIntegerField;
|
||||||
|
vtRamcovyPlanM12: TIntegerField;
|
||||||
|
vtRamcovyPlanSumace: TIntegerField;
|
||||||
|
vtRamcovyPlanVyroba: TIntegerField;
|
||||||
|
vtRamcovyPlanZbyva: TIntegerField;
|
||||||
|
vtRamcovyPlanSklRoo: TIntegerField;
|
||||||
|
vtRamcovyPlanSklTvin: TIntegerField;
|
||||||
|
vtRamcovyPlanSklAlter: TIntegerField;
|
||||||
|
vtRamcovyPlanSklMimoPlan: TBooleanField;
|
||||||
|
dsRPlanAlter: TDataSource;
|
||||||
|
vtRPlanAlter: TFDMemTable;
|
||||||
|
vtRPlanAlterID: TIntegerField;
|
||||||
|
vtRPlanAlterKalibr: TStringField;
|
||||||
|
vtRPlanAlterDelkaJm: TFloatField;
|
||||||
|
vtRPlanAlterStroj: TStringField;
|
||||||
|
vtRPlanAlterIDStroj: TIntegerField;
|
||||||
|
dsPlanPL: TDataSource;
|
||||||
|
vtPlanPL: TFDMemTable;
|
||||||
|
vtPlanPLIDVCPrikaz: TIntegerField;
|
||||||
|
vtPlanPLCisloPL: TStringField;
|
||||||
|
vtPlanPLDatVyrobaZadano: TDateTimeField;
|
||||||
|
vtPlanPLDatVyrobaStart: TDateTimeField;
|
||||||
|
vtPlanPLDatExpedice: TDateTimeField;
|
||||||
|
vtPlanPLKAnaPal: TFloatField;
|
||||||
|
vtPlanPLKusu: TIntegerField;
|
||||||
|
vtPlanPLIDPrikaz: TIntegerField;
|
||||||
|
vtPlanPLDatExpirace: TDateTimeField;
|
||||||
|
vtRozpiscolIDPlan: TIntegerField;
|
||||||
|
vtPlanPLCisloExtZak: TStringField;
|
||||||
|
vtRozpiscolJeUdrzba: TSmallintField;
|
||||||
|
vtZavadycolIDPrikaz: TIntegerField;
|
||||||
|
procedure DataModuleCreate (Sender: TObject);
|
||||||
|
procedure vtKmenCalcFields(DataSet: TDataSet);
|
||||||
|
private
|
||||||
|
public
|
||||||
|
Helios: IHelios;
|
||||||
|
function VratPrepocetMJ (idKmen: integer; hlavniMJ, odvozenaMJ: string; sloupec: string='PocetOdvozene'): Extended;
|
||||||
|
procedure VymazRozpis (f: TformPlan); safecall;
|
||||||
|
procedure NactiRozpis (f: TformPlan; prazdny: boolean=false); safecall;
|
||||||
|
procedure NactiDavkyPlanu (f: TformPlan; idStroj: Integer=0); safecall;
|
||||||
|
procedure GenerujRozpis (odData: TDateTime; pocetDnu: integer=14); safecall;
|
||||||
|
procedure NactiKalendar (f: TformPlan; idStroj: integer=0); safecall;
|
||||||
|
procedure NactiKmenZbozi (podm: string=''); safecall;
|
||||||
|
procedure NactiUdrzbu (kodModif: string=''; podm: string=''); safecall;
|
||||||
|
procedure NactiVyrobniTydny (rok: integer);
|
||||||
|
procedure PlanPalListyNactiSarzePrikazu (idPrikaz, ksVKA: integer; var externiZak: string);
|
||||||
|
end;
|
||||||
|
|
||||||
|
var
|
||||||
|
dm2: Tdm2;
|
||||||
|
dmCreated, apiMod: boolean;
|
||||||
|
apiServer, phServer, url, sqlLang: string;
|
||||||
|
idAdvKPl, bidPalety: integer;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
{%CLASSGROUP 'Vcl.Controls.TControl'}
|
||||||
|
uses System.Variants, System.StrUtils, Winapi.Windows, System.DateUtils,
|
||||||
|
helTabsBIDs, helUtils;
|
||||||
|
{$R *.dfm}
|
||||||
|
|
||||||
|
|
||||||
|
procedure Tdm2.DataModuleCreate (Sender: TObject);
|
||||||
|
begin
|
||||||
|
dmCreated:= true;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
function Tdm2.VratPrepocetMJ (idKmen: integer; hlavniMJ, odvozenaMJ: string; sloupec: string='PocetOdvozene'): Extended;
|
||||||
|
var lSQL: string;
|
||||||
|
begin
|
||||||
|
result:= 0;
|
||||||
|
sloupec:= sqlSanitize (sloupec);
|
||||||
|
lSQL:= 'SELECT ' + sloupec + ' FROM ' + tblMJZbo + ' WHERE IDKmenZbozi=' + idKmen.ToString + ' AND LOWER(KodMJ1)=N' + hlavniMJ.ToLower.QuotedString
|
||||||
|
+ ' AND LOWER(KodMJ2)=N' + odvozenaMJ.ToLower.QuotedString;
|
||||||
|
try
|
||||||
|
result:= helUtils.getHeliosFloatVal (Helios, 0, lSQL);
|
||||||
|
finally
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure Tdm2.NactiUdrzbu (kodModif: string=''; podm: string='');
|
||||||
|
var lSQL, kod: string;
|
||||||
|
idPrPost: Integer;
|
||||||
|
begin
|
||||||
|
if not(vtZavady.Active) then
|
||||||
|
vtZavady.Open;
|
||||||
|
|
||||||
|
// lehka sanitizace SQL
|
||||||
|
podm:= podm.Replace(';', '').Replace('--','');
|
||||||
|
|
||||||
|
lSQL:= 'SELECT TOP(1) pp.ID, pp.Nazev, pp.IDPrikaz, pp.operace FROM ' + tblPrPost + ' pp INNER JOIN ' + tblVPr + ' vp ON (vp.ID=pp.IDPrikaz AND pp.IDOdchylkyDo IS NULL AND pp.priorita=0)'
|
||||||
|
+ ' INNER JOIN ' + tblZakazModif + ' m ON (m.ID=vp.IDZakazModif) INNER JOIN ' + tblPrikazRada + ' vpr ON (vpr.Rada=vp.Rada) WHERE pp.Typ=0 AND vp.StavPrikazu=30 AND m.Kod=N'
|
||||||
|
+ kodModif.QuotedString + ' AND vpr.nazev LIKE N''%<25>dr<64>b%''';
|
||||||
|
|
||||||
|
{ lSQL:= 'SELECT ID, Kod, Nazev, Typ FROM ' + tblCZavad;
|
||||||
|
if (podm<>'') then
|
||||||
|
lSQL:= lSQL + ' WHERE ' + podm;
|
||||||
|
}
|
||||||
|
lSQL:= lSQL + ' ORDER BY pp.Nazev';
|
||||||
|
try
|
||||||
|
with Helios.OpenSQL (lSQL) do
|
||||||
|
begin
|
||||||
|
First;
|
||||||
|
while not(EOF) do
|
||||||
|
begin
|
||||||
|
vtZavady.Append;
|
||||||
|
idPrPost:= VarToStr(FieldByNameValues('ID')).ToInteger;
|
||||||
|
vtZavady.FieldByName('colID').AsInteger:= idPrPost;
|
||||||
|
vtZavady.FieldByName('colNazev').AsString:= VarToStr(FieldByNameValues('Nazev'));
|
||||||
|
vtZavady.FieldByName('colIDPrikaz').AsInteger:= VarToStr(FieldByNameValues('IDPrikaz')).ToInteger;
|
||||||
|
vtZavady.FieldByName('colKod').AsString:= VarToStr(FieldByNameValues('operace')).Trim;
|
||||||
|
// vtZavady.FieldByName('colTyp').AsInteger:= VarToStr(FieldByNameValues('Typ')).ToInteger;
|
||||||
|
vtZavady.Post;
|
||||||
|
Next;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
finally
|
||||||
|
end;
|
||||||
|
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure Tdm2.NactiKmenZbozi (podm: string='');
|
||||||
|
var lSQL, mjEvid: string;
|
||||||
|
idKZ, idZakazModif, idZakazModifDilce: Integer;
|
||||||
|
begin
|
||||||
|
if not(vtKmen.Active) then
|
||||||
|
vtKmen.Open;
|
||||||
|
|
||||||
|
// lehka sanitizace SQL
|
||||||
|
podm:= podm.Replace(';', '').Replace('--','');
|
||||||
|
|
||||||
|
lSQL:= 'SELECT k.ID, k.SkupZbo, k.RegCis, k.Nazev1, k.SKP, k.MJEvidence, k.Material, k.Dilec, k.Sluzba, zm.Nazev AS NazevModif, zmd.ID AS IdZMD, zm.ID AS IdZM'
|
||||||
|
+ ', ISNULL( (SELECT TOP(1) kN.Nazev1 FROM ' + tblKVaz + ' v INNER JOIN ' + tblKZ + ' kN ON (kN.ID=v.nizsi) WHERE v.vyssi=k.ID'
|
||||||
|
+ ' AND v.ZmenaDo IS NULL AND v.IDZakazModif=zm.ID AND kN.SkupZbo=N''702''), N'''') AS Zaklad'
|
||||||
|
+ ' FROM ' + tblZakazModifDilce + ' zmd INNER JOIN ' + tblZakazModif + ' zm ON (zm.ID=zmd.IDZakazModif) INNER JOIN ' + tblKZ
|
||||||
|
+ ' k ON (k.ID=zmd.IDKmenZbozi)';
|
||||||
|
if (podm<>'') then
|
||||||
|
lSQL:= lSQL + ' WHERE ' + podm;
|
||||||
|
lSQL:= lSQL + ' ORDER BY k.SkupZbo, k.RegCis, zm.Nazev';
|
||||||
|
try
|
||||||
|
with Helios.OpenSQL (lSQL) do
|
||||||
|
begin
|
||||||
|
First;
|
||||||
|
while not(EOF) do
|
||||||
|
begin
|
||||||
|
vtKmen.Append;
|
||||||
|
idKZ:= VarToStr(FieldByNameValues('ID')).ToInteger;
|
||||||
|
vtKmen.FieldByName('colID').AsInteger:= idKZ;
|
||||||
|
vtKmen.FieldByName('colSZ').AsString:= VarToStr(FieldByNameValues('SkupZbo'));
|
||||||
|
vtKmen.FieldByName('colRegCis').AsString:= VarToStr(FieldByNameValues('RegCis'));
|
||||||
|
vtKmen.FieldByName('colNazev1').AsString:= VarToStr(FieldByNameValues('Nazev1'));
|
||||||
|
vtKmen.FieldByName('colSKP').AsString:= VarToStr(FieldByNameValues('SKP'));
|
||||||
|
mjEvid:= VarToStr(FieldByNameValues('MJEvidence'));
|
||||||
|
vtKmen.FieldByName('colMJEvid').AsString:= mjEvid;
|
||||||
|
vtKmen.FieldByName('colMaterial').AsBoolean:= FieldByNameValues('Material');
|
||||||
|
vtKmen.FieldByName('colDilec').AsString:= FieldByNameValues('Dilec'); // TrueBoolStrs
|
||||||
|
vtKmen.FieldByName('colSluzba').AsBoolean:= FieldByNameValues('Sluzba');
|
||||||
|
vtKmen.FieldByName('colZaklad').AsString:= VarToStr(FieldByNameValues('Zaklad'));
|
||||||
|
|
||||||
|
if (mjEvid='KA') then
|
||||||
|
begin
|
||||||
|
lSQL:= 'SELECT PocetOdvozene FROM ' + tblMJZbo + ' WHERE IDKmenZbozi=' + idKZ.ToString + ' AND KodMJ1=N''KA'' AND KodMJ2=N''ks''';
|
||||||
|
vtKmen.FieldByName('colKSvKA').AsInteger:= helUtils.getHeliosIntVal (Helios, 0, lSQL);
|
||||||
|
|
||||||
|
lSQL:= 'SELECT PocetHlavni FROM ' + tblMJZbo + ' WHERE IDKmenZbozi=' + idKZ.ToString + ' AND KodMJ1=N''KA'' AND KodMJ2=N''Pal''';
|
||||||
|
vtKmen.FieldByName('colKAnaPAL').AsInteger:= helUtils.getHeliosIntVal (Helios, 0, lSQL);
|
||||||
|
end;
|
||||||
|
|
||||||
|
vtKmen.FieldByName('colIDZakModifDilce').AsInteger:= VarToStr(FieldByNameValues('IdZMD')).ToInteger;
|
||||||
|
vtKmen.FieldByName('colIDZakModif').AsInteger:= VarToStr(FieldByNameValues('IdZM')).ToInteger;
|
||||||
|
vtKmen.FieldByName('colZakModif').AsString:= VarToStr(FieldByNameValues('NazevModif'));
|
||||||
|
|
||||||
|
vtKmen.Post;
|
||||||
|
Next;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
finally
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure Tdm2.NactiKalendar (f: TformPlan; idStroj: Integer=0);
|
||||||
|
var lSQL: string;
|
||||||
|
dStart, dAkt, dNedele, dTesty, dNow, d1: TDateTime;
|
||||||
|
datumNe, datumTesty: string;
|
||||||
|
dAktD, dAktM, dAktR, dTestD, dTestM, dTestR: integer;
|
||||||
|
i, cnt, cntNe, cntPo, cntUt, cntSt, cntCt, cntPa, cntSo: integer;
|
||||||
|
begin
|
||||||
|
if not(vtKalendar.Active) then
|
||||||
|
vtKalendar.Open;
|
||||||
|
vtKalendar.EmptyDataSet;
|
||||||
|
|
||||||
|
idAdvKPl:= helUtils.getHeliosIntVal (Helios, 0, 'SELECT TOP(1) ID FROM ' + tblAdvKPlan + ' WHERE Kod=N''99''');
|
||||||
|
|
||||||
|
dNedele:= 0;
|
||||||
|
dNow:= Now;
|
||||||
|
d1:= dNow;
|
||||||
|
if (f.sgCas.Cells[2,1]<>'') then // datumOd
|
||||||
|
begin
|
||||||
|
d1:= StrToDateTime(f.sgCas.Cells[2,1]);
|
||||||
|
dNedele:= d1;
|
||||||
|
end;
|
||||||
|
|
||||||
|
dStart:= StartOfTheWeek (d1);
|
||||||
|
if (dNow=d1) and (dNedele=0) then
|
||||||
|
dNedele:= IncDay (dStart, -1);
|
||||||
|
dAkt:= d1;
|
||||||
|
dAktD:= DayOf (dAkt);
|
||||||
|
dAktM:= MonthOf (dAkt);
|
||||||
|
dAktR:= YearOf (dAkt);
|
||||||
|
|
||||||
|
lSQL:= 'SELECT cs.ID, cs.Kod, cs.Nazev FROM ' + tblCStroju + ' cs LEFT JOIN ' + tblCStrojuE + ' cse ON (cse.ID=cs.ID) WHERE cs.Blokovano=0';
|
||||||
|
lSQL:= lSQL + IfThen(idStroj>0, ' AND cs.ID=' + idStroj.ToString, '') + ' AND ISNULL(cse._Planovani,0)=1 ORDER BY cs.Nazev';
|
||||||
|
try
|
||||||
|
with Helios.OpenSQL (lSQL) do
|
||||||
|
begin
|
||||||
|
First;
|
||||||
|
while not(EOF) do
|
||||||
|
begin
|
||||||
|
dTesty:= dNedele;
|
||||||
|
vtKalendar.Append;
|
||||||
|
idStroj:= VarToStr(FieldByNameValues('ID')).ToInteger;
|
||||||
|
vtKalendar.FieldByName('colIDStroj').AsInteger:= idStroj;
|
||||||
|
vtKalendar.FieldByName('colKodStroj').AsString:= VarToStr(FieldByNameValues('Kod'));
|
||||||
|
vtKalendar.FieldByName('colStroj').AsString:= VarToStr(FieldByNameValues('Nazev'));
|
||||||
|
|
||||||
|
for i:=0 to 6 do
|
||||||
|
begin
|
||||||
|
// datumTesty:= FormatDateTime ('dd.MM.yyyy', dTesty);
|
||||||
|
dTestD:= DayOf (dTesty);
|
||||||
|
dTestM:= MonthOf (dTesty);
|
||||||
|
dTestR:= YearOf (dTesty);
|
||||||
|
|
||||||
|
lSQL:= 'SELECT COUNT(d.ID) FROM ' + tblAdvKPlanDavky + ' d INNER JOIN ' + tblVPr + ' p ON (p.ID=d.IDPrikaz) WHERE d.IdAdvKapacPlan=' + idAdvKPl.ToString
|
||||||
|
+ IfThen(idStroj=0, '', ' AND d.IDStroje=' + idStroj.ToString) + ' AND p.StavPrikazu IN (30,40) AND d.CasOd_D=' + dTestD.ToString
|
||||||
|
+ ' AND d.CasOd_M=' + dTestM.ToString + ' AND d.CasOd_Y=' + dTestR.ToString;
|
||||||
|
cnt:= helUtils.getHeliosIntVal (Helios, 0, lSQL);
|
||||||
|
case i of
|
||||||
|
0: begin vtKalendar.FieldByName('colNe').AsInteger:= cnt; cntNe:= cnt; end;
|
||||||
|
1: begin vtKalendar.FieldByName('colPo').AsInteger:= cnt; cntPo:= cnt; end;
|
||||||
|
2: begin vtKalendar.FieldByName('colUt').AsInteger:= cnt; cntUt:= cnt; end;
|
||||||
|
3: begin vtKalendar.FieldByName('colSt').AsInteger:= cnt; cntSt:= cnt; end;
|
||||||
|
4: begin vtKalendar.FieldByName('colCt').AsInteger:= cnt; cntCt:= cnt; end;
|
||||||
|
5: begin vtKalendar.FieldByName('colPa').AsInteger:= cnt; cntPa:= cnt; end;
|
||||||
|
6: begin vtKalendar.FieldByName('colSo').AsInteger:= cnt; cntSo:= cnt; end;
|
||||||
|
end;
|
||||||
|
dTesty:= IncDay (dTesty, 1);
|
||||||
|
end;
|
||||||
|
|
||||||
|
vtKalendar.Post;
|
||||||
|
Next;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
finally
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure Tdm2.VymazRozpis (f: TformPlan);
|
||||||
|
var i: integer;
|
||||||
|
d: string;
|
||||||
|
h: integer;
|
||||||
|
begin
|
||||||
|
if not(vtRozpis.Active) then
|
||||||
|
vtRozpis.Open;
|
||||||
|
|
||||||
|
d:= FormatDateTime ('dd.MM.yyyy', Now);
|
||||||
|
h:= HourOf(Now);
|
||||||
|
|
||||||
|
vtRozpis.DisableControls;
|
||||||
|
vtRozpis.First;
|
||||||
|
while not(vtRozpis.Eof) do
|
||||||
|
begin
|
||||||
|
vtRozpis.Edit;
|
||||||
|
vtRozpis.FieldByName('colID').AsInteger:= 0;
|
||||||
|
vtRozpis.FieldByName('colIDDavkaAdvPlan').AsInteger:= 0;
|
||||||
|
vtRozpis.FieldByName('colPrikaz').AsString:= '';
|
||||||
|
vtRozpis.FieldByName('colSkupZbo').AsString:= '';
|
||||||
|
vtRozpis.FieldByName('colRegCis').AsString:= '';
|
||||||
|
vtRozpis.FieldByName('colNazev').AsString:= '';
|
||||||
|
vtRozpis.FieldByName('colMnoz').AsInteger:= 0;
|
||||||
|
vtRozpis.Post;
|
||||||
|
vtRozpis.Next;
|
||||||
|
end;
|
||||||
|
vtRozpis.EnableControls;
|
||||||
|
vtRozpis.Locate ('colDatum;colHodOd', VarArrayOf ([d, h]), []);
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure Tdm2.NactiDavkyPlanu (f: TformPlan; idStroj: Integer = 0);
|
||||||
|
var lSQL: string;
|
||||||
|
datum, hodiny, radaPrikaz, prikaz, mj, sz, regCis, nazev1, altPrP, nazevOper: string;
|
||||||
|
prvniDatum, prvniHod: string;
|
||||||
|
colID, idVPr, idKmen, idVPrOld, casOd, doklPrP, doklPrPOld, jeUdrzba: integer;
|
||||||
|
cislo, iTemp: integer;
|
||||||
|
mnoz, kusyCisteVPr, mnozOdv, mnozProZapis, mnozZapsane, ksVKA: extended;
|
||||||
|
fnd: boolean;
|
||||||
|
d, d2: TDateTime;
|
||||||
|
aDavkaVPrOdv: TArray<TDavkaPrikazOdv>;
|
||||||
|
|
||||||
|
function SumaZapsanehoMnozstviPred (a: TArray<TDavkaPrikazOdv>; idPrikaz: integer; predCislem: integer=0): extended;
|
||||||
|
var i, c: integer;
|
||||||
|
begin
|
||||||
|
result:= 0;
|
||||||
|
for i:=0 to Length(a)-1 do
|
||||||
|
begin
|
||||||
|
if (a[i].idPrikaz=idPrikaz) then
|
||||||
|
if (a[i].cislo<predCislem) then
|
||||||
|
result:= result + a[i].mnozZapsane;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
begin
|
||||||
|
idVPrOld:= 0;
|
||||||
|
doklPrPOld:= 0;
|
||||||
|
mnozZapsane:= 0;
|
||||||
|
iTemp:= 0;
|
||||||
|
|
||||||
|
d:= 0;
|
||||||
|
if (f.sgCas.Cells[2,1]<>'') then
|
||||||
|
d:= StrToDate(f.sgCas.Cells[2,1]);
|
||||||
|
GenerujRozpis (d, 7);
|
||||||
|
vtRozpis.EmptyDataSet;
|
||||||
|
|
||||||
|
prvniDatum:= '';
|
||||||
|
prvniHod:= '';
|
||||||
|
|
||||||
|
lSQL:= 'SELECT MIN(da.CasOd) FROM ' + tblAdvKPlanDavky + ' da INNER JOIN ' + tblAdvKPlan + ' kp ON (kp.ID=da.IDAdvKapacPlan) INNER JOIN '
|
||||||
|
+ tblVPr + ' vp ON (vp.ID=da.IDPrikaz) WHERE kp.Kod=N''99'' AND da.IDStroje=' + idStroj.ToString + ' AND vp.StavPrikazu IN (30,40)';
|
||||||
|
if (f.sgCas.Cells[2,1]<>'') then
|
||||||
|
lSQL:= lSQL + ' AND dbo.hf_TruncDate(da.CasOd)>=dbo.hf_TruncDate(CONVERT(datetime, N' + f.sgCas.Cells[2,1].QuotedString + ',104))';
|
||||||
|
if (f.sgCas.Cells[3,1]<>'') then
|
||||||
|
lSQL:= lSQL + ' AND dbo.hf_TruncDate(da.CasOd)<=dbo.hf_TruncDate(CONVERT(datetime, N' + f.sgCas.Cells[3,1].QuotedString + ',104))';
|
||||||
|
datum:= helUtils.getHeliosDateTimeVal (Helios, 0, lSQL).ToString;
|
||||||
|
if (datum<>'30.12.1899') then
|
||||||
|
begin
|
||||||
|
if (datum.IndexOf(' ')>-1) then
|
||||||
|
begin
|
||||||
|
prvniDatum:= LeftStr(datum, datum.IndexOf(' '));
|
||||||
|
prvniHod:= MidStr(datum, datum.IndexOf(' ')+1, 255);
|
||||||
|
if (prvniHod.IndexOf(':')>-1) then
|
||||||
|
prvniHod:= LeftStr(prvniHod, prvniHod.IndexOf(':')).Trim;
|
||||||
|
end
|
||||||
|
else
|
||||||
|
begin
|
||||||
|
prvniDatum:= datum;
|
||||||
|
prvniHod:= '0';
|
||||||
|
end;
|
||||||
|
if (datum.IndexOf(' ')>-1) then
|
||||||
|
datum:= LeftStr(datum, datum.IndexOf(' '));
|
||||||
|
GenerujRozpis (StrToDateTime(datum), 7);
|
||||||
|
vtRozpis.IndexFieldNames:= 'colDatum;colHodOd';
|
||||||
|
vtRozpis.Refresh;
|
||||||
|
NactiRozpis (f);
|
||||||
|
vtRozpis.Refresh;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
lSQL:= 'SELECT da.ID, da.CasOd, da.CasDo, ISNULL(dae._MnozstviKs,0) AS MnozstviKs, vp.RadaPrikaz, vp.Prikaz, vp.ID AS IDPrikaz, k.ID AS IDKmen'
|
||||||
|
+ ', k.SkupZbo, k.RegCis, k.Nazev1, ISNULL(vp.IDPlan,0) AS IDPlan, da.DokladPrPostup, da.AltPrPostup'
|
||||||
|
+ ', CONVERT(int, CASE WHEN vpr.nazev LIKE N''%<25>dr<64>b%'' THEN 1 ELSE 0 END) AS JeUdrzba'
|
||||||
|
+ ' FROM ' + tblAdvKPlanDavky + ' da LEFT JOIN ' + tblAdvKPlanDavky_E
|
||||||
|
+ ' dae ON (dae.ID=da.ID) INNER JOIN ' + tblAdvKPlan + ' kp ON (kp.ID=da.IDAdvKapacPlan) INNER JOIN ' + tblVPr + ' vp ON (vp.ID=da.IDPrikaz) INNER JOIN '
|
||||||
|
+ tblPrikazRada + ' vpr ON (vpr.Rada=vp.Rada) INNER JOIN '
|
||||||
|
+ tblKZ + ' k ON (k.ID=vp.IDTabKmen) WHERE kp.Kod=N''99'' AND da.IDStroje=' + idStroj.ToString + ' AND vp.StavPrikazu IN (30,40)';
|
||||||
|
if (f.sgCas.Cells[2,1]<>'') then
|
||||||
|
lSQL:= lSQL + ' AND dbo.hf_TruncDate(da.CasOd)>=dbo.hf_TruncDate(CONVERT(datetime, N' + f.sgCas.Cells[2,1].QuotedString + ',104))';
|
||||||
|
if (f.sgCas.Cells[3,1]<>'') then
|
||||||
|
lSQL:= lSQL + ' AND dbo.hf_TruncDate(da.CasOd)<=dbo.hf_TruncDate(CONVERT(datetime, N' + f.sgCas.Cells[3,1].QuotedString + ',104))';
|
||||||
|
lSQL:= lSQL + ' ORDER BY da.CasOd';
|
||||||
|
with Helios.OpenSQL (lSQL) do
|
||||||
|
begin
|
||||||
|
First;
|
||||||
|
while not(EOF) do
|
||||||
|
begin
|
||||||
|
colID:= FieldByNameValues('ID');
|
||||||
|
datum:= VarToStr(FieldByNameValues('CasOd'));
|
||||||
|
|
||||||
|
idVPr:= VarToStr(FieldByNameValues('IDPrikaz')).ToInteger;
|
||||||
|
doklPrP:= VarToStr(FieldByNameValues('DokladPrPostup')).ToInteger;
|
||||||
|
altPrP:= VarToStr(FieldByNameValues('AltPrPostup'));
|
||||||
|
|
||||||
|
lSQL:= 'SELECT TOP(1) nazev FROM ' + tblPrPost + ' WHERE IDPrikaz=' + idVpr.ToString + ' AND Doklad=' + doklPrP.ToString + ' AND Alt=N' + altPrP.QuotedString
|
||||||
|
+ ' AND IDOdchylkyDo IS NULL AND Priorita=0';
|
||||||
|
nazevOper:= helUtils.getHeliosStrVal(Helios, '', lSQL);
|
||||||
|
|
||||||
|
|
||||||
|
Inc(cislo);
|
||||||
|
if (idVPr<>idVPrOld) then
|
||||||
|
begin
|
||||||
|
cislo:= 1;
|
||||||
|
idKmen:= helUtils.getHeliosIntVal (Helios, 0, 'SELECT IDTabKmen FROM ' + tblVPr + ' WHERE ID=' + idVPr.ToString);
|
||||||
|
mj:= helUtils.getHeliosStrVal (Helios, '', 'SELECT MJEvidence FROM ' + tblKZ + ' WHERE ID=' + idKmen.ToString);
|
||||||
|
ksVKA:= helUtils.getHeliosFloatVal (Helios, 0, 'SELECT dbo.ef_Kmen_VratPocetKsVKartonu (' + idKmen.ToString + ')');
|
||||||
|
|
||||||
|
kusyCisteVPr:= helUtils.getHeliosFloatVal (Helios, 0, 'SELECT kusy_ciste FROM ' + tblVPr + ' WHERE ID=' + idVPr.ToString);
|
||||||
|
lSQL:= 'SELECT SUM(kusy_odv+kusy_zmet_opr+kusy_zmet_neopr) FROM ' + tblPMZ + ' WHERE IDPrikaz=' + idVPr.ToString + ' AND DokladPrPostup=' + doklPrP.ToString;
|
||||||
|
mnozOdv:= helUtils.getHeliosFloatVal (Helios, 0, lSQL);
|
||||||
|
if (mj.ToUpper='KA') then
|
||||||
|
begin
|
||||||
|
kusyCisteVPr:= kusyCisteVPr * ksVKA;
|
||||||
|
mnozOdv:= mnozOdv * ksVKA;
|
||||||
|
end;
|
||||||
|
idVPrOld:= idVPr;
|
||||||
|
end;
|
||||||
|
|
||||||
|
// idVPrOld:= idVPr;
|
||||||
|
|
||||||
|
|
||||||
|
{
|
||||||
|
mnoz:= FieldByNameValues('MnzstviKs');
|
||||||
|
radaPrikaz:= FieldByNameValues('RadaPrikaz');
|
||||||
|
prikaz:= FieldByNameValues('Prikaz');
|
||||||
|
regCis:= FieldByNameValues('RegCis');
|
||||||
|
nazev1:= FieldByNameValues('Nazev1');
|
||||||
|
}
|
||||||
|
if (datum<>'') then
|
||||||
|
begin
|
||||||
|
if (datum.IndexOf(' ')=-1) then
|
||||||
|
datum:= datum + ' 00:00:00';
|
||||||
|
if (datum.IndexOf(' ')>-1) then
|
||||||
|
begin
|
||||||
|
hodiny:= MidStr(datum, datum.IndexOf(' ')+1, 255).Trim;
|
||||||
|
casOd:= LeftStr(hodiny, hodiny.IndexOf(':')).ToInteger;
|
||||||
|
datum:= LeftStr(datum, datum.IndexOf(' '));
|
||||||
|
|
||||||
|
mnozProZapis:= VarToStr(FieldByNameValues('MnozstviKs')).ToExtended;
|
||||||
|
|
||||||
|
SetLength (aDavkaVPrOdv, iTemp+1);
|
||||||
|
aDavkaVPrOdv[iTemp].idPrikaz:= idVPr;
|
||||||
|
aDavkaVPrOdv[iTemp].cislo:= cislo;
|
||||||
|
aDavkaVPrOdv[iTemp].idDavka:= colID;
|
||||||
|
|
||||||
|
|
||||||
|
fnd:= vtRozpis.Locate ('colIDDavkaAdvPlan', VarArrayOf ([colID]), []); // colID / colDatum / colHodOd
|
||||||
|
if not(fnd) then
|
||||||
|
begin
|
||||||
|
fnd:= vtRozpis.Locate ('colDatum;colHodOd', VarArrayOf ([datum, casOd]), []);
|
||||||
|
if (fnd) then
|
||||||
|
begin
|
||||||
|
vtRozpis.Edit;
|
||||||
|
vtRozpis.FieldByName('colID').AsInteger:= colID;
|
||||||
|
vtRozpis.FieldByName('colIDDavkaAdvPlan').AsInteger:= colID;
|
||||||
|
vtRozpis.FieldByName('colIdKmen').AsString:= VarToStr (FieldByNameValues('IDKmen'));
|
||||||
|
vtRozpis.FieldByName('colPrikaz').AsString:= VarToStr (FieldByNameValues('RadaPrikaz'));
|
||||||
|
vtRozpis.FieldByName('colIdPrikaz').AsString:= VarToStr (FieldByNameValues('IDPrikaz'));
|
||||||
|
vtRozpis.FieldByName('colSkupZbo').AsString:= VarToStr (FieldByNameValues('SkupZbo'));
|
||||||
|
vtRozpis.FieldByName('colRegCis').AsString:= VarToStr (FieldByNameValues('RegCis'));
|
||||||
|
vtRozpis.FieldByName('colNazev').AsString:= VarToStr (FieldByNameValues('Nazev1'));
|
||||||
|
vtRozpis.FieldByName('colMnoz').AsExtended:= mnozProZapis;
|
||||||
|
vtRozpis.FieldByName('colIDPlan').AsInteger:= VarToStr (FieldByNameValues('IDPlan')).ToInteger;
|
||||||
|
|
||||||
|
jeUdrzba:= VarToStr(FieldByNameValues('JeUdrzba')).ToInteger;
|
||||||
|
vtRozpis.FieldByName('colJeUdrzba').AsInteger:= jeUdrzba;
|
||||||
|
if (jeUdrzba=1) then
|
||||||
|
vtRozpis.FieldByName('colNazev').AsString:= nazevOper;
|
||||||
|
|
||||||
|
|
||||||
|
if (mnozOdv>0) then
|
||||||
|
begin
|
||||||
|
mnozZapsane:= SumaZapsanehoMnozstviPred (aDavkaVPrOdv, idVPr, cislo);
|
||||||
|
mnozOdv:= mnozOdv - mnozZapsane;
|
||||||
|
if (mnozOdv>mnozProZapis) then
|
||||||
|
begin
|
||||||
|
vtRozpis.FieldByName('colMnozHotovo').AsExtended:= mnozProZapis;
|
||||||
|
aDavkaVPrOdv[iTemp].cislo:= cislo;
|
||||||
|
aDavkaVPrOdv[iTemp].idPrikaz:= idVPr;
|
||||||
|
aDavkaVPrOdv[iTemp].mnozZapsane:= mnozProZapis;
|
||||||
|
end
|
||||||
|
else
|
||||||
|
begin
|
||||||
|
vtRozpis.FieldByName('colMnozHotovo').AsExtended:= mnozOdv;
|
||||||
|
aDavkaVPrOdv[iTemp].cislo:= cislo;
|
||||||
|
aDavkaVPrOdv[iTemp].idPrikaz:= idVPr;
|
||||||
|
aDavkaVPrOdv[iTemp].mnozZapsane:= mnozOdv;
|
||||||
|
mnozOdv:= 0;
|
||||||
|
end;
|
||||||
|
Inc (iTemp);
|
||||||
|
end;
|
||||||
|
|
||||||
|
vtRozpis.Post;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
Next;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
if (vtRozpis.RecordCount=0) then
|
||||||
|
NactiRozpis (f, true);
|
||||||
|
|
||||||
|
vtRozpis.Locate ('colDatum;colHodOd', VarArrayOf ([FormatDateTime ('dd.MM.yyyy', d), HourOf(d)]), []);
|
||||||
|
|
||||||
|
if (prvniDatum<>'') and (prvniHod<>'') then
|
||||||
|
vtRozpis.Locate('colDatum;colHodOd', VarArrayOf ([prvniDatum, prvniHod]), []);
|
||||||
|
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure Tdm2.NactiVyrobniTydny (rok: integer);
|
||||||
|
var i: integer;
|
||||||
|
d: TDateTime;
|
||||||
|
den1ledna: byte;
|
||||||
|
begin
|
||||||
|
den1ledna:= DayOfWeek(EncodeDate(rok, 1, 1));
|
||||||
|
|
||||||
|
if not(vtVyrobniTyden.Active) then
|
||||||
|
vtVyrobniTyden.Open;
|
||||||
|
for i:=1 to WeeksInAYear(rok) do
|
||||||
|
begin
|
||||||
|
vtVyrobniTyden.Append;
|
||||||
|
vtVyrobniTyden.FieldByName('colRok').AsInteger:= rok;
|
||||||
|
vtVyrobniTyden.FieldByName('colTyden').AsInteger:= i;
|
||||||
|
d:= IncDay(StartOfAWeek (rok, i, 1), -1);
|
||||||
|
vtVyrobniTyden.FieldByName('colDatumOd').AsDateTime:= d;
|
||||||
|
vtVyrobniTyden.FieldByName('colDatumDo').AsDateTime:= IncDay(d, 6);
|
||||||
|
vtVyrobniTyden.Post;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure Tdm2.NactiRozpis (f: TformPlan; prazdny: boolean=false);
|
||||||
|
var lSQL, where, datum: string;
|
||||||
|
hDo, casOd: integer;
|
||||||
|
fnd: boolean;
|
||||||
|
begin
|
||||||
|
if not(vtRozpis.Active) then
|
||||||
|
vtRozpis.Open;
|
||||||
|
|
||||||
|
// lSQL:= 'SELECT Datum FROM ' + tblPlanRozpad + ' WHERE Datum>=DATEADD(day, -2, dbo.hf_TruncDate(GETDATE())) ORDER BY Datum';
|
||||||
|
where:= '';
|
||||||
|
|
||||||
|
lSQL:= 'SELECT Datum, CasOd FROM ' + tblPlanRozpad;
|
||||||
|
if not(prazdny) then
|
||||||
|
begin
|
||||||
|
where:= 'Datum>=dbo.hf_TruncDate( ISNULL( (SELECT MIN(d.CasOd) FROM ' + tblAdvKPlanDavky + ' d INNER JOIN ' + tblVPr;
|
||||||
|
where:= where + ' p ON (p.ID=d.IDPrikaz) WHERE p.StavPrikazu IN (30,40) AND d.IdAdvKapacPlan=' + idAdvKPl.ToString + '), DATEADD(day, -2, dbo.hf_TruncDate(GETDATE()))) )';
|
||||||
|
end;
|
||||||
|
|
||||||
|
if (f.sgCas.Cells[2,1]<>'') then
|
||||||
|
where:= where + IfThen(where<>'', ' AND ', '') + 'dbo.hf_TruncDate(Datum)>=dbo.hf_TruncDate(CONVERT(datetime, N' + f.sgCas.Cells[2,1].QuotedString + ',104))';
|
||||||
|
if (f.sgCas.Cells[3,1]<>'') then
|
||||||
|
where:= where + IfThen(where<>'', ' AND ', '') + 'dbo.hf_TruncDate(Datum)<=dbo.hf_TruncDate(CONVERT(datetime, N' + f.sgCas.Cells[3,1].QuotedString + ',104))';
|
||||||
|
|
||||||
|
if (where<>'') then
|
||||||
|
lSQL:= lSQL + ' WHERE ' + where;
|
||||||
|
lSQL:= lSQL + ' ORDER BY Datum, CasOd';
|
||||||
|
|
||||||
|
try
|
||||||
|
with Helios.OpenSQL (lSQL) do
|
||||||
|
begin
|
||||||
|
First;
|
||||||
|
while not(EOF) do
|
||||||
|
begin
|
||||||
|
datum:= VarToStr(FieldByNameValues('Datum'));
|
||||||
|
if (datum.IndexOf(' ')>-1) then
|
||||||
|
datum:= LeftStr(datum, datum.IndexOf(' '));
|
||||||
|
casOd:= VarToStr(FieldByNameValues('CasOd')).ToInteger;
|
||||||
|
fnd:= vtRozpis.Locate ('colDatum;colHodOd', VarArrayOf ([datum, casOd]), []);
|
||||||
|
if not(fnd) then
|
||||||
|
begin
|
||||||
|
vtRozpis.Append;
|
||||||
|
vtRozpis.FieldByName('colDatum').AsString:= datum; // FormatDateTime('dd.mm.yyyy', FieldByNameValues('Datum'));
|
||||||
|
vtRozpis.FieldByName('colHodOd').AsInteger:= casOd; // FormatDateTime('h', FieldByNameValues('Datum'));
|
||||||
|
// hDo:= vtRozpis.FieldByName('colHodOd').AsInteger + 1;
|
||||||
|
hDo:= casOd + 1;
|
||||||
|
// if (hDo>=24) then hDo:= 0;
|
||||||
|
vtRozpis.FieldByName('colHodDo').AsInteger:= hDo;
|
||||||
|
vtRozpis.Post;
|
||||||
|
end;
|
||||||
|
Next;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
finally
|
||||||
|
end;
|
||||||
|
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure Tdm2.vtKmenCalcFields (DataSet: TDataSet);
|
||||||
|
var ksVKar, karNaPal: integer;
|
||||||
|
begin
|
||||||
|
ksVKar:= 0;
|
||||||
|
if not (DataSet.FieldByName('colKSvKA').IsNull) then
|
||||||
|
ksVKar:= DataSet.FieldByName('colKSvKA').AsInteger;
|
||||||
|
|
||||||
|
karNaPal:= 0;
|
||||||
|
if not (DataSet.FieldByName('colKAnaPAL').IsNull) then
|
||||||
|
karNaPal:= DataSet.FieldByName('colKAnaPAL').AsInteger;
|
||||||
|
|
||||||
|
DataSet.FieldByName('colKSnaPAL').AsInteger:= ksVKar * karNaPal;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure Tdm2.GenerujRozpis (odData: TDateTime; pocetDnu: integer=14);
|
||||||
|
var lSQL, d: string;
|
||||||
|
c: integer;
|
||||||
|
begin
|
||||||
|
if (pocetDnu<0) or (pocetDnu>14) then
|
||||||
|
pocetDnu:= 14;
|
||||||
|
|
||||||
|
if (helUtils.SQLObjectExists (Helios, 'dbo.ef_Vyroba_GenerujRozpadCasu'))
|
||||||
|
and (helUtils.SQLObjectExists (Helios, tblPlanRozpad)) then
|
||||||
|
begin
|
||||||
|
// rozpad na 14 dnu dopredu, po 60 minutach
|
||||||
|
lSQL:= 'DECLARE @d DATETIME=NULL' + CRLF + 'DROP TABLE IF EXISTS #Tab' + CRLF + 'CREATE TABLE #Tab (Datum DATETIME)' + CRLF
|
||||||
|
+ IfThen(odData>0, 'SET @d = CONVERT(datetime, N' + FormatDateTime ('dd.mm.yyyy', odData).QuotedString + ', 104)', '') + CRLF
|
||||||
|
+ 'INSERT #Tab (Datum) SELECT * FROM dbo.ef_Vyroba_GenerujRozpadCasu (@d, ' + pocetDnu.ToString + ', 60)' + CRLF
|
||||||
|
+ 'SELECT CAST(Datum AS DATETIME) AS Datum FROM #Tab ORDER BY Datum';
|
||||||
|
try
|
||||||
|
with Helios.OpenSQL (lSQL) do
|
||||||
|
if (RecordCount>0) then
|
||||||
|
begin
|
||||||
|
First;
|
||||||
|
while not(EOF) do
|
||||||
|
begin
|
||||||
|
d:= VarToStr(FieldByNameValues('Datum'));
|
||||||
|
if not(d.Contains('00:00')) then
|
||||||
|
d:= d + ' 00:00:00';
|
||||||
|
c:= MidStr(d, d.IndexOf(' ')+1, 20).Length;
|
||||||
|
if (c=8) then
|
||||||
|
d:= d.Replace(' ', ' 0');
|
||||||
|
lSQL:= 'IF NOT EXISTS (SELECT 1 FROM ' + tblPlanRozpad + ' WHERE Datum=CONVERT(datetime, N' + d.QuotedString + ', 104) )' + CRLF
|
||||||
|
+ 'INSERT ' + tblPlanRozpad + ' (Datum) SELECT CONVERT(datetime, N' + d.QuotedString + ', 104)';
|
||||||
|
Helios.ExecSQL (lSQL);
|
||||||
|
Next;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
finally
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure Tdm2.PlanPalListyNactiSarzePrikazu (idPrikaz, ksVKA: Integer; var externiZak: string);
|
||||||
|
var lSQL: string;
|
||||||
|
idVC: integer;
|
||||||
|
|
||||||
|
begin
|
||||||
|
if not(vtPlanPL.Active) then
|
||||||
|
vtPlanPL.Open;
|
||||||
|
vtPlanPL.EmptyDataSet;
|
||||||
|
|
||||||
|
lSQL:= 'SELECT ID, VyrCislo, Popis, DatExpirace, Mnozstvi FROM ' + tblPrikazVC + ' WHERE IDPrikaz=' + idPrikaz.ToString + ' ORDER BY VyrCislo';
|
||||||
|
try
|
||||||
|
with Helios.OpenSQL (lSQL) do
|
||||||
|
if (RecordCount>0) then
|
||||||
|
begin
|
||||||
|
First;
|
||||||
|
while not(EOF) do
|
||||||
|
begin
|
||||||
|
vtPlanPL.Append;
|
||||||
|
vtPlanPL.FieldByName('idPrikaz').AsInteger:= idPrikaz;
|
||||||
|
idVC:= VarToStr(FieldByNameValues('ID')).ToInteger;
|
||||||
|
vtPlanPL.FieldByName('IDVCPrikaz').AsInteger:= idVC;
|
||||||
|
vtPlanPL.FieldByName('CisloPL').AsString:= VarToStr(FieldByNameValues('VyrCislo'));
|
||||||
|
vtPlanPL.FieldByName('KAnaPal').AsInteger:= VarToStr(FieldByNameValues('Mnozstvi')).ToInteger;
|
||||||
|
vtPlanPL.FieldByName('kusu').AsInteger:= vtPlanPL.FieldByName('KAnaPal').AsInteger * ksVKA;
|
||||||
|
vtPlanPL.FieldByName('DatExpirace').AsString:= VarToStr(FieldByNameValues('DatExpirace'));
|
||||||
|
externiZak:= VarToStr(FieldByNameValues('Popis'));
|
||||||
|
|
||||||
|
with Helios.OpenSQL('SELECT DatZahajeni FROM ' + tblPalety + ' WHERE IDVyrCisPrikaz=' + idVC.ToString) do
|
||||||
|
if (RecordCount=1) then
|
||||||
|
begin
|
||||||
|
vtPlanPL.FieldByName('DatVyrobaZadano').AsString:= VarToStr(FieldByNameValues('DatZahajeni'));
|
||||||
|
end;
|
||||||
|
|
||||||
|
vtPlanPL.Post;
|
||||||
|
Next;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
finally
|
||||||
|
|
||||||
|
end;
|
||||||
|
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
end.
|
||||||
10
_plgPlan/ep_Vyroba_AdvPlan_ArchivujDavky.sql
Normal file
10
_plgPlan/ep_Vyroba_AdvPlan_ArchivujDavky.sql
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
-- dbo.ep_Vyroba_AdvPlan_ArchivujDavky
|
||||||
|
CREATE PROCEDURE dbo.ep_Vyroba_AdvPlan_ArchivujDavky
|
||||||
|
@IDAdvKapacPlan INT=NULL
|
||||||
|
AS
|
||||||
|
|
||||||
|
SET NOCOUNT ON
|
||||||
|
|
||||||
|
-- HD Consulting Strakonice, T. Buzin
|
||||||
|
-- !! proceduru neupravujte, bude stejne pregenerovana pri startu pluginu pro planovani
|
||||||
|
|
||||||
556
_plgPlan/ep_Vyroba_AdvPlan_ZapisDavkyPrikazu.sql
Normal file
556
_plgPlan/ep_Vyroba_AdvPlan_ZapisDavkyPrikazu.sql
Normal file
@ -0,0 +1,556 @@
|
|||||||
|
-- dbo.ep_Vyroba_AdvPlan_ZapisDavkyPrikazu
|
||||||
|
CREATE PROCEDURE dbo.ep_Vyroba_AdvPlan_ZapisDavkyPrikazu
|
||||||
|
@datumStart DATETIME=NULL,
|
||||||
|
@casOd TINYINT=NULL
|
||||||
|
AS
|
||||||
|
|
||||||
|
SET NOCOUNT ON
|
||||||
|
|
||||||
|
-- HD Consulting Strakonice, T. Buzin
|
||||||
|
-- !! proceduru neupravujte, bude stejne pregenerovana pri startu pluginu pro planovani
|
||||||
|
|
||||||
|
IF OBJECT_ID('tempdb..#TabPrikazyProKapacPlan', 'U') IS NULL
|
||||||
|
RETURN
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@errMsg NVARCHAR(500),
|
||||||
|
@tranPred INT,
|
||||||
|
@majorSqlVer TINYINT,
|
||||||
|
@jeSql2022 BIT=0,
|
||||||
|
@cnt INT,
|
||||||
|
@canCont BIT=0,
|
||||||
|
@sql NVARCHAR(max),
|
||||||
|
@debugXml XML
|
||||||
|
DECLARE
|
||||||
|
@idSadaDavek INT,
|
||||||
|
@idVPr INT,
|
||||||
|
@pocetVlastOper INT,
|
||||||
|
@dokl INT,
|
||||||
|
@alt NCHAR(1),
|
||||||
|
@dilec INT,
|
||||||
|
@mjEvid NVARCHAR(10),
|
||||||
|
@kodZakazModif NVARCHAR(20),
|
||||||
|
@idZakazModif INT,
|
||||||
|
@idStroj INT=NULL,
|
||||||
|
@idKalendarStroje INT,
|
||||||
|
@cntOpProZapis INT,
|
||||||
|
@doklProZapis INT,
|
||||||
|
@altProZapis NCHAR(1),
|
||||||
|
@ksZaHod NUMERIC(19,6),
|
||||||
|
@kaZaHod NUMERIC(19,6),
|
||||||
|
@kusyZad NUMERIC(19,6),
|
||||||
|
@mnozKs NUMERIC(19,6),
|
||||||
|
@mnozKa NUMERIC(19,6),
|
||||||
|
@mnozKsVKA NUMERIC(19,6),
|
||||||
|
@mnozKAnaPal NUMERIC(19,6),
|
||||||
|
@mnoz NUMERIC(19,6),
|
||||||
|
@pocetDavek INT,
|
||||||
|
@cisloDavky INT,
|
||||||
|
@locId INT,
|
||||||
|
@planStartPrikaz DATETIME,
|
||||||
|
@planKonecPrikaz DATETIME,
|
||||||
|
@secCnt INT,
|
||||||
|
@planStart DATETIME,
|
||||||
|
@prepoctiPlanStart BIT,
|
||||||
|
@planStartEnd DATETIME,
|
||||||
|
@planKonec DATETIME,
|
||||||
|
@ksZbytek NUMERIC(19,6),
|
||||||
|
@cas DATETIME,
|
||||||
|
@jeTesto BIT=0
|
||||||
|
DECLARE
|
||||||
|
@idAdvKPl INT,
|
||||||
|
@idDavky INT,
|
||||||
|
@idVypoctu INT,
|
||||||
|
@idPrac INT,
|
||||||
|
@podm NVARCHAR(80),
|
||||||
|
@idDavkyOld INT,
|
||||||
|
@startOdOld DATETIME,
|
||||||
|
@poradCislo INT
|
||||||
|
DECLARE
|
||||||
|
@jeUdrzba BIT,
|
||||||
|
@pocetHodUdrzba NUMERIC(19,6),
|
||||||
|
@idPrPUdrzba INT -- TabPrPostup.ID z prikazu udrzby
|
||||||
|
|
||||||
|
DECLARE @davky TABLE (ID INT NOT NULL, CasOd DATETIME, CasDo DATETIME, Zamek BIT DEFAULT 0, PoradoveCislo INT)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
BEGIN TRY
|
||||||
|
SET @tranPred = @@TRANCOUNT
|
||||||
|
IF (@tranPred=0)
|
||||||
|
BEGIN TRAN
|
||||||
|
|
||||||
|
|
||||||
|
-- cisteni SQL seedu
|
||||||
|
SET @cnt = ISNULL( (SELECT MAX(ID) FROM dbo.TabAdvKPVypocty), 1)
|
||||||
|
DBCC CHECKIDENT(TabAdvKPVypocty, RESEED, @cnt)
|
||||||
|
SET @cnt = ISNULL( (SELECT MAX(ID) FROM dbo.TabAdvKPDavky), 1)
|
||||||
|
DBCC CHECKIDENT(TabAdvKPDavky, RESEED, @cnt)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
SET @majorSqlVer = CONVERT(tinyint, SERVERPROPERTY('ProductMajorVersion'))
|
||||||
|
SET @jeSql2022 = CONVERT(bit, IIF(@majorSqlVer>=16, 1, 0))
|
||||||
|
|
||||||
|
|
||||||
|
SELECT @idAdvKPl=ID FROM dbo.TabAdvKapacPlan WHERE Kod=N'99'
|
||||||
|
SET @idVypoctu=(SELECT TOP(1) ID FROM dbo.TabAdvKPVypocty WHERE IDAdvKapacPlan=@idAdvKPl ORDER BY CisloVypoctu DESC)
|
||||||
|
IF (@idVypoctu IS NULL)
|
||||||
|
BEGIN
|
||||||
|
INSERT dbo.TabAdvKPVypocty (IDAdvKapacPlan, CisloVypoctu, Akce, IDLastMzdy) VALUES (@idAdvKPl, 1, 3, 0)
|
||||||
|
SET @idVypoctu = SCOPE_IDENTITY()
|
||||||
|
END
|
||||||
|
|
||||||
|
SET @casOd = ISNULL(@casOd, 0)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
SET @idSadaDavek = 1 + ISNULL( (SELECT MAX(_VazbaPlgPlan) FROM dbo.TabAdvKPDavky_EXT WHERE _VazbaPlgPlan IS NOT NULL), 0)
|
||||||
|
|
||||||
|
|
||||||
|
DECLARE c CURSOR LOCAL FOR
|
||||||
|
SELECT ID, JeUdrzba, PocetHodin, IDPrPostup FROM #TabPrikazyProKapacPlan
|
||||||
|
OPEN c
|
||||||
|
WHILE (1=1)
|
||||||
|
BEGIN
|
||||||
|
FETCH NEXT FROM c INTO @idVPr, @jeUdrzba, @pocetHodUdrzba, @idPrPUdrzba
|
||||||
|
IF (@@FETCH_STATUS<>0) BREAK
|
||||||
|
|
||||||
|
IF (@jeUdrzba=1)
|
||||||
|
BEGIN
|
||||||
|
SET @idPrPUdrzba = ISNULL(@idPrPUdrzba, 0)
|
||||||
|
SET @pocetHodUdrzba = ISNULL(@pocetHodUdrzba, 0)
|
||||||
|
IF (@idPrPUdrzba>0) AND (@pocetHodUdrzba>0)
|
||||||
|
BEGIN
|
||||||
|
IF (@datumStart IS NOT NULL)
|
||||||
|
SET @planStart = DATEADD(hour, @casOd, dbo.hf_TruncDate(@datumStart))
|
||||||
|
ELSE
|
||||||
|
SET @planStart = DATEADD(hour, @casOd, dbo.hf_TruncDate(GETDATE()))
|
||||||
|
|
||||||
|
SELECT @idVPr=IDPrikaz, @doklProZapis=Doklad, @altProZapis=Alt, @idPrac=pracoviste, @idStroj=IDStroje
|
||||||
|
FROM dbo.TabPrPostup WHERE ID=@idPrPUdrzba AND IDOdchylkyDo IS NULL
|
||||||
|
SELECT @dilec=IdTabKmen, @idZakazModif=IdZakazModif, @kusyZad=Kusy_zad
|
||||||
|
FROM dbo.TabPrikaz WHERE ID=@idVPr
|
||||||
|
SET @idKalendarStroje = (SELECT IDPlanKalend FROM dbo.TabCisStroju WHERE ID=@idStroj)
|
||||||
|
|
||||||
|
SET @pocetDavek = @pocetHodUdrzba
|
||||||
|
SET @cisloDavky = 1
|
||||||
|
|
||||||
|
-- pokud neni nektera davka daneho prikazu uzamcena, smaz je vsechny
|
||||||
|
-- jinak nastav aby se planovani toho prikazu pri privnim pruchodu WHILE ukoncilo
|
||||||
|
/*
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM dbo.TabAdvKPDavky WHERE IDPrikaz=@idVPr AND IDAdvKapacPlan=@idAdvKPl AND IDStroje=@idStroj AND Zamek=1)
|
||||||
|
DELETE FROM dbo.TabAdvKPDavky WHERE IDPrikaz=@idVPr AND IDAdvKapacPlan=@idAdvKPl AND IDStroje=@idStroj
|
||||||
|
ELSE
|
||||||
|
SET @cisloDavky=@pocetDavek
|
||||||
|
*/
|
||||||
|
WHILE (1=1)
|
||||||
|
BEGIN
|
||||||
|
IF (@cisloDavky>@pocetDavek) BREAK
|
||||||
|
|
||||||
|
DELETE FROM @davky
|
||||||
|
IF EXISTS (SELECT 1 FROM dbo.TabAdvKPDavky WHERE IDAdvKapacPlan=@idAdvKPl AND IDStroje=@idStroj AND CasOd>=@planStart AND Zamek=0)
|
||||||
|
BEGIN
|
||||||
|
;WITH d AS (
|
||||||
|
SELECT ROW_NUMBER() OVER (ORDER BY CasOd) AS AutoInc,
|
||||||
|
ID, CasOd, CasDo, Zamek
|
||||||
|
FROM dbo.TabAdvKPDavky WHERE IDAdvKapacPlan=@idAdvKPl AND IDStroje=@idStroj AND CasOd>=@planStart AND Zamek=0
|
||||||
|
)
|
||||||
|
INSERT @davky (ID, CasOd, CasDo, Zamek, PoradoveCislo)
|
||||||
|
SELECT ID, CasOd, CasDo, Zamek, AutoInc FROM d;
|
||||||
|
END
|
||||||
|
SET @debugXml = (SELECT * FROM @davky FOR XML AUTO)
|
||||||
|
|
||||||
|
-- begin: test data/casu zahajeni na kalendar stroje
|
||||||
|
IF (@idKalendarStroje IS NULL) -- pokud kalendar nemam, per to tam
|
||||||
|
BEGIN
|
||||||
|
SET @cnt = 0
|
||||||
|
WHILE EXISTS(SELECT 1 FROM dbo.TabAdvKPDavky WHERE IDAdvKapacPlan=@idAdvKPl AND IDStroje=@idStroj AND Zamek=1 AND @planStart BETWEEN CasOd AND CasDo)
|
||||||
|
AND (@cnt<=3000) -- kvuli zamrznuti
|
||||||
|
BEGIN
|
||||||
|
SET @planStart = DATEADD(hour, 1, @planStart)
|
||||||
|
SET @cnt = @cnt + 1
|
||||||
|
END
|
||||||
|
SET @planStartEnd = DATEADD(second, -1, DATEADD(hour, 1, @planStart))
|
||||||
|
END
|
||||||
|
ELSE
|
||||||
|
BEGIN -- pokud kalendar mam, zkontroluj jestli neni na dany datum/cas vyjimka
|
||||||
|
SET @cnt = 0
|
||||||
|
WHILE (EXISTS(SELECT 1 FROM dbo.TabAdvKPDavky WHERE IDAdvKapacPlan=@idAdvKPl AND IDStroje=@idStroj AND Zamek=1 AND @planStart BETWEEN CasOd AND CasDo)
|
||||||
|
OR EXISTS(SELECT 1 FROM dbo.TabPlanKalendPol WHERE IDStroje=@idStroj AND @planStart BETWEEN CasOd AND CasDo)
|
||||||
|
)
|
||||||
|
AND (@cnt<=3000) -- kvuli zamrznuti
|
||||||
|
BEGIN
|
||||||
|
SET @planStart = DATEADD(hour, 1, @planStart)
|
||||||
|
SET @cnt = @cnt + 1
|
||||||
|
END
|
||||||
|
SET @planStartEnd = DATEADD(second, -1, DATEADD(hour, 1, @planStart))
|
||||||
|
END
|
||||||
|
-- end: test data/casu zahajeni na kalendar stroje
|
||||||
|
|
||||||
|
|
||||||
|
IF OBJECT_ID('dbo.ep_Vyroba_AdvPlan_ArchivujDavky', 'P') IS NOT NULL
|
||||||
|
EXEC dbo.ep_Vyroba_AdvPlan_ArchivujDavky @IDAdvKapacPlan=@idAdvKPl
|
||||||
|
|
||||||
|
SET @podm = N'IdAdvKapacPlan=' + CONVERT(nvarchar, @idAdvKPl)
|
||||||
|
EXEC @locId=dbo.hp_NajdiPrvniVolny @Tabulka=N'TabAdvKPDavky', @Atribut=N'LocalID', @Where=@podm, @Odkud=1, @Kam=999999999, @Returnem=1
|
||||||
|
|
||||||
|
SET @mnoz = 0
|
||||||
|
INSERT dbo.TabAdvKPDavky (IDAdvKapacPlan, LocalID, IDVypoctu, ZpusobVznikuDavkyKP, DatumPripadu, IDPrikaz, Dilec, DokladPrPostup, AltPrPostup,
|
||||||
|
IDPrac, IDStroje, CasOd, CasDo, Mnozstvi, PrepravniCas, MeziOperCas, DeadTime, BlokaceZdroje, ProcSplneni, Mnozstvi_Zive)
|
||||||
|
SELECT @idAdvKPl, @locId, @idVypoctu, 0, @planStart, @idVPr, @dilec, @doklProZapis, @altProZapis, @idPrac, @idStroj, @planStart, @planStartEnd,
|
||||||
|
@mnoz, 0, 0, 0, 1, 0, @mnoz
|
||||||
|
SET @idDavky = SCOPE_IDENTITY()
|
||||||
|
IF (@idDavky IS NOT NULL)
|
||||||
|
BEGIN
|
||||||
|
IF NOT EXISTS (SELECT 1 FROM dbo.TabAdvKPDavky_EXT WHERE ID=@idDavky)
|
||||||
|
INSERT dbo.TabAdvKPDavky_EXT (ID) VALUES (@idDavky)
|
||||||
|
UPDATE dbo.TabAdvKPDavky_EXT SET _VazbaPlgPlan=@idSadaDavek WHERE ID=@idDavky
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
-- begin: posun nasledujicich davek
|
||||||
|
DECLARE dav CURSOR LOCAL FOR
|
||||||
|
SELECT ID, CasOd, PoradoveCislo
|
||||||
|
FROM @davky
|
||||||
|
OPEN dav
|
||||||
|
WHILE (1=1)
|
||||||
|
BEGIN
|
||||||
|
FETCH NEXT FROM dav INTO @idDavkyOld, @startOdOld, @poradCislo
|
||||||
|
IF (@@FETCH_STATUS<>0) BREAK
|
||||||
|
|
||||||
|
IF (@poradCislo=1)
|
||||||
|
SET @startOdOld = DATEADD(hour, 1, @planStart)
|
||||||
|
ELSE
|
||||||
|
SET @startOdOld = DATEADD(hour, 1, (SELECT CasOd FROM @davky WHERE PoradoveCislo=@poradCislo-1))
|
||||||
|
|
||||||
|
IF (@idKalendarStroje IS NULL)
|
||||||
|
BEGIN
|
||||||
|
SET @cnt = 0
|
||||||
|
WHILE EXISTS(SELECT 1 FROM dbo.TabAdvKPDavky WHERE IDAdvKapacPlan=@idAdvKPl AND IDStroje=@idStroj AND Zamek=1 AND @startOdOld BETWEEN CasOd AND CasDo)
|
||||||
|
AND (@cnt<=3000) -- kvuli zamrznuti
|
||||||
|
BEGIN
|
||||||
|
SET @startOdOld = DATEADD(hour, 1, @startOdOld)
|
||||||
|
SET @cnt = @cnt + 1
|
||||||
|
END
|
||||||
|
END
|
||||||
|
ELSE
|
||||||
|
BEGIN
|
||||||
|
SET @cnt = 0
|
||||||
|
WHILE (EXISTS(SELECT 1 FROM dbo.TabAdvKPDavky WHERE IDAdvKapacPlan=@idAdvKPl AND IDStroje=@idStroj AND Zamek=1 AND @startOdOld BETWEEN CasOd AND CasDo)
|
||||||
|
OR EXISTS(SELECT 1 FROM dbo.TabPlanKalendPol WHERE IDStroje=@idStroj AND @planStart BETWEEN CasOd AND CasDo)
|
||||||
|
)
|
||||||
|
AND (@cnt<=3000) -- kvuli zamrznuti
|
||||||
|
BEGIN
|
||||||
|
SET @startOdOld = DATEADD(hour, 1, @startOdOld)
|
||||||
|
SET @cnt = @cnt + 1
|
||||||
|
END
|
||||||
|
END
|
||||||
|
UPDATE @davky SET CasOd=@startOdOld, CasDo=DATEADD(second, -1, DATEADD(hour, 1, @startOdOld)) WHERE PoradoveCislo=@poradCislo
|
||||||
|
UPDATE dbo.TabAdvKPDavky SET CasOd=@startOdOld, CasDo=DATEADD(second, -1, DATEADD(hour, 1, @startOdOld)) WHERE ID=@idDavkyOld
|
||||||
|
END
|
||||||
|
CLOSE dav
|
||||||
|
DEALLOCATE dav
|
||||||
|
-- end: posun nasledujicich davek
|
||||||
|
|
||||||
|
SET @cisloDavky = @cisloDavky + 1
|
||||||
|
END
|
||||||
|
|
||||||
|
END -- @idPrPUdrzba>0
|
||||||
|
END
|
||||||
|
ELSE
|
||||||
|
BEGIN -- @jeUdrzba=0
|
||||||
|
SET @pocetVlastOper = ISNULL( (SELECT COUNT(ID) FROM dbo.TabPrPostup WHERE IDPrikaz=@idVPr AND IDOdchylkyDo IS NULL AND priorita=0 AND typ<2), 0)
|
||||||
|
SELECT @dilec=IdTabKmen, @idZakazModif=IdZakazModif, @kusyZad=Kusy_zad, @planStart=Plan_zadani, @planKonec=Plan_Ukonceni
|
||||||
|
FROM dbo.TabPrikaz WHERE ID=@idVPr
|
||||||
|
SET @planStartPrikaz = @planStart
|
||||||
|
SET @planKonecPrikaz = @planKonec
|
||||||
|
|
||||||
|
IF (@planStartPrikaz<GETDATE())
|
||||||
|
BEGIN
|
||||||
|
SET @secCnt = DATEDIFF(second, @planStart, @planKonec)
|
||||||
|
IF (@jeSql2022=1)
|
||||||
|
BEGIN
|
||||||
|
SET @sql = 'SET @planStartPrikaz = DATEADD(hour, 0, DATETRUNC(hour, GETDATE()))'
|
||||||
|
EXEC sp_executesql @sql, N'@planStartPrikaz DATETIME OUT', @planStartPrikaz=@planStartPrikaz OUT
|
||||||
|
END
|
||||||
|
ELSE
|
||||||
|
SET @planStartPrikaz = DATEADD(hour, DATEDIFF(hour, 0, DATEADD(minute, 30, GETDATE())), 0)
|
||||||
|
SET @planKonecPrikaz = DATEADD(second, @secCnt, @planStartPrikaz)
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
SET @jeTesto=0
|
||||||
|
IF EXISTS (SELECT 1 FROM dbo.TabKmenZbozi WHERE ID=@dilec AND SkupZbo=N'701')
|
||||||
|
SET @jeTesto=1
|
||||||
|
IF (@jeTesto=1)
|
||||||
|
CONTINUE
|
||||||
|
|
||||||
|
SELECT @dokl=Doklad, @alt=Alt, @idPrac=pracoviste, @idStroj=IDStroje FROM dbo.TabPrPostup WHERE IDPrikaz=@idVPr AND Odvadeci=1 AND IDOdchylkyDo IS NULL
|
||||||
|
SET @idKalendarStroje = (SELECT IDPlanKalend FROM dbo.TabCisStroju WHERE ID=@idStroj)
|
||||||
|
SELECT @mjEvid=MJEvidence FROM dbo.TabKmenZbozi WHERE ID=@dilec
|
||||||
|
|
||||||
|
|
||||||
|
SET @mnoz = 0
|
||||||
|
SET @mnozKs = 0
|
||||||
|
SET @mnozKa = 0
|
||||||
|
SET @mnozKsVKA = 0
|
||||||
|
SET @mnozKAnaPal = 0
|
||||||
|
|
||||||
|
SET @mjEvid=LOWER(@mjEvid)
|
||||||
|
IF (@mjEvid=N'ka')
|
||||||
|
BEGIN
|
||||||
|
SET @mnozKsVKA = ISNULL( (SELECT PocetOdvozene FROM dbo.TabMJZbozi WHERE IDKmenZbozi=@dilec AND LOWER(KodMJ1)=N'KA' AND LOWER(KodMJ2)=N'ks'), 1)
|
||||||
|
SET @mnozKAnaPal = ISNULL( (SELECT PocetHlavni FROM dbo.TabMJZbozi WHERE IDKmenZbozi=@dilec AND LOWER(KodMJ1)=N'ka' AND LOWER(KodMJ2)=N'pal'), 0)
|
||||||
|
SET @mnozKa = @kusyZad
|
||||||
|
SET @mnozKs = @kusyZad * @mnozKsVKA
|
||||||
|
END
|
||||||
|
IF (@mjEvid=N'ks')
|
||||||
|
BEGIN
|
||||||
|
SET @mnozKs = @kusyZad
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
SET @ksZaHod=0
|
||||||
|
IF (@idZakazModif IS NOT NULL)
|
||||||
|
BEGIN
|
||||||
|
SET @kodZakazModif = (SELECT Kod FROM dbo.TabZakazModif WHERE ID=@idZakazModif)
|
||||||
|
IF (@kodZakazModif IS NOT NULL)
|
||||||
|
BEGIN
|
||||||
|
SET @idStroj = (SELECT ID FROM dbo.TabCisStroju WHERE Kod=LEFT(@kodZakazModif,10) AND Blokovano=0)
|
||||||
|
IF (@idStroj IS NOT NULL)
|
||||||
|
SET @ksZaHod = ISNULL( (SELECT _KapacitaKsZaHod FROM dbo.TabCisStroju_EXT WHERE ID=@idStroj), 0)
|
||||||
|
END
|
||||||
|
END -- @idZakazModif IS NOT NULL
|
||||||
|
|
||||||
|
|
||||||
|
SET @doklProZapis=NULL
|
||||||
|
SET @altProZapis=NULL
|
||||||
|
SET @cntOpProZapis = (SELECT COUNT(ID) FROM dbo.TabPrPostup WHERE IDPrikaz=@idVPr AND IDOdchylkyDo IS NULL AND priorita=0)
|
||||||
|
|
||||||
|
IF (@cntOpProZapis=1)
|
||||||
|
BEGIN
|
||||||
|
SELECT TOP(1) @doklProZapis=pp.Doklad, @altProZapis=pp.Alt, @ksZaHod=ISNULL(ppe._RychlostOperKsHod,0)
|
||||||
|
FROM dbo.TabPrPostup pp LEFT JOIN dbo.TabPrPostup_EXT ppe ON (ppe.ID=pp.ID)
|
||||||
|
WHERE pp.IDPrikaz=@idVPr AND pp.IDOdchylkyDo IS NULL AND pp.priorita=0
|
||||||
|
END
|
||||||
|
ELSE
|
||||||
|
BEGIN
|
||||||
|
-- peceni - pozor, diakritika dela obcas problem, proto pres LIKE
|
||||||
|
IF EXISTS(SELECT 1 FROM dbo.TabPrPostup WHERE Nazev LIKE N'Pe_en<EFBFBD>' AND IDPrikaz=@idVPr AND IDOdchylkyDo IS NULL AND priorita=0)
|
||||||
|
SELECT TOP(1) @doklProZapis=pp.Doklad, @altProZapis=pp.Alt, @ksZaHod=ISNULL(ppe._RychlostOperKsHod,0)
|
||||||
|
FROM dbo.TabPrPostup pp LEFT JOIN dbo.TabPrPostup_EXT ppe ON (ppe.ID=pp.ID)
|
||||||
|
WHERE pp.Nazev LIKE N'Pe_en<EFBFBD>' AND pp.IDPrikaz=@idVPr AND pp.IDOdchylkyDo IS NULL AND pp.priorita=0
|
||||||
|
-- maceni, diakritika dela obcas problem, proto pres LIKE
|
||||||
|
IF EXISTS(SELECT 1 FROM dbo.TabPrPostup WHERE Nazev LIKE N'M<EFBFBD>_en<EFBFBD>' AND IDPrikaz=@idVPr AND IDOdchylkyDo IS NULL AND priorita=0)
|
||||||
|
SELECT TOP(1) @doklProZapis=pp.Doklad, @altProZapis=pp.Alt, @ksZaHod=ISNULL(ppe._RychlostOperKsHod,0)
|
||||||
|
FROM dbo.TabPrPostup pp LEFT JOIN dbo.TabPrPostup_EXT ppe ON (ppe.ID=pp.ID)
|
||||||
|
WHERE pp.Nazev LIKE N'M<EFBFBD>_en<EFBFBD>' AND pp.IDPrikaz=@idVPr AND pp.IDOdchylkyDo IS NULL AND pp.priorita=0
|
||||||
|
-- maceni, diakritika dela obcas problem, proto pres LIKE
|
||||||
|
IF EXISTS(SELECT 1 FROM dbo.TabPrPostup WHERE Nazev LIKE N'Pol<EFBFBD>v<EFBFBD>n<EFBFBD>' AND IDPrikaz=@idVPr AND IDOdchylkyDo IS NULL AND priorita=0)
|
||||||
|
SELECT TOP(1) @doklProZapis=pp.Doklad, @altProZapis=pp.Alt, @ksZaHod=ISNULL(ppe._RychlostOperKsHod,0)
|
||||||
|
FROM dbo.TabPrPostup pp LEFT JOIN dbo.TabPrPostup_EXT ppe ON (ppe.ID=pp.ID)
|
||||||
|
WHERE pp.Nazev LIKE N'Pol<EFBFBD>v<EFBFBD>n<EFBFBD>' AND pp.IDPrikaz=@idVPr AND pp.IDOdchylkyDo IS NULL AND pp.priorita=0
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
IF (@ksZaHod<>0) AND (@doklProZapis IS NOT NULL)
|
||||||
|
BEGIN
|
||||||
|
SET @kaZaHod=0
|
||||||
|
IF (@mjEvid=N'ka')
|
||||||
|
SET @kaZaHod = ROUND(@ksZaHod/@mnozKsVKA, 2)
|
||||||
|
|
||||||
|
|
||||||
|
-- SET @planStart=NULL
|
||||||
|
IF (COL_LENGTH('dbo.TabPrikaz_EXT', '_PlanZahajeni') IS NOT NULL)
|
||||||
|
SET @planStart=(SELECT _PlanZahajeni FROM dbo.TabPrikaz_EXT WHERE ID=@idVPr)
|
||||||
|
IF (@planStart IS NULL)
|
||||||
|
BEGIN
|
||||||
|
/*
|
||||||
|
IF (@jeSql2022=1)
|
||||||
|
SET @planStart=DATEADD(hour, 1, DATETRUNC(hour,GETDATE()))
|
||||||
|
ELSE
|
||||||
|
*/
|
||||||
|
SET @planStart=DATEADD(hour, 1, CONVERT(datetime, FORMAT(@planStartPrikaz, 'dd.MM.yyyy HH', 'de-de') + N':00:00', 104))
|
||||||
|
SET @prepoctiPlanStart=1
|
||||||
|
END
|
||||||
|
|
||||||
|
SET @prepoctiPlanStart=0
|
||||||
|
|
||||||
|
IF (@datumStart IS NOT NULL)
|
||||||
|
SET @planStart = DATEADD(hour, @casOd, dbo.hf_TruncDate(@datumStart))
|
||||||
|
|
||||||
|
-- SET @planKonec=NULL
|
||||||
|
IF (COL_LENGTH('dbo.TabPrikaz_EXT', '_PlanUkonceni') IS NOT NULL)
|
||||||
|
SET @planKonec=(SELECT _PlanUkonceni FROM dbo.TabPrikaz_EXT WHERE ID=@idVPr)
|
||||||
|
IF (@planKonec IS NULL)
|
||||||
|
SET @planKonec=DATEADD(minute, 60.0 * ROUND(@mnozKs/@ksZaHod,2), @planStart)
|
||||||
|
|
||||||
|
IF (@prepoctiPlanStart=1)
|
||||||
|
/*
|
||||||
|
BEGIN
|
||||||
|
IF (@jeSql2022=1)
|
||||||
|
SET @planKonec=DATEADD(second, -1, DATEADD(hour, 1, DATETRUNC(hour,@planKonec)))
|
||||||
|
ELSE
|
||||||
|
*/
|
||||||
|
-- SET @planStart=DATEADD(hour, 1, CEILING(DATEDIFF(hour, 0, @planKonec)/60.0)*60)
|
||||||
|
SET @planStart=DATEADD(hour, 1, CONVERT(datetime, FORMAT(@planKonec, 'dd.MM.yyyy HH', 'de-de') + N':00:00', 104))
|
||||||
|
-- END
|
||||||
|
|
||||||
|
|
||||||
|
SET @pocetDavek = CEILING(@mnozKs/@ksZaHod)
|
||||||
|
IF (@pocetDavek>0)
|
||||||
|
BEGIN
|
||||||
|
SET @cisloDavky = 1
|
||||||
|
|
||||||
|
-- pokud neni nektera davka daneho prikazu uzamcena, smaz je vsechny
|
||||||
|
-- jinak nastav aby se planovani toho prikazu pri privnim pruchodu WHILE ukoncilo
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM dbo.TabAdvKPDavky WHERE IDPrikaz=@idVPr AND IDAdvKapacPlan=@idAdvKPl AND IDStroje=@idStroj AND Zamek=1)
|
||||||
|
DELETE FROM dbo.TabAdvKPDavky WHERE IDPrikaz=@idVPr AND IDAdvKapacPlan=@idAdvKPl AND IDStroje=@idStroj
|
||||||
|
ELSE
|
||||||
|
SET @cisloDavky=@pocetDavek
|
||||||
|
|
||||||
|
WHILE (1=1)
|
||||||
|
BEGIN
|
||||||
|
IF (@cisloDavky>@pocetDavek) BREAK
|
||||||
|
|
||||||
|
DELETE FROM @davky
|
||||||
|
IF EXISTS (SELECT 1 FROM dbo.TabAdvKPDavky WHERE IDAdvKapacPlan=@idAdvKPl AND IDStroje=@idStroj AND CasOd>=@planStart AND Zamek=0)
|
||||||
|
BEGIN
|
||||||
|
;WITH d AS (
|
||||||
|
SELECT ROW_NUMBER() OVER (ORDER BY CasOd) AS AutoInc,
|
||||||
|
ID, CasOd, CasDo, Zamek
|
||||||
|
FROM dbo.TabAdvKPDavky WHERE IDAdvKapacPlan=@idAdvKPl AND IDStroje=@idStroj AND CasOd>=@planStart AND Zamek=0
|
||||||
|
)
|
||||||
|
INSERT @davky (ID, CasOd, CasDo, Zamek, PoradoveCislo)
|
||||||
|
SELECT ID, CasOd, CasDo, Zamek, AutoInc FROM d;
|
||||||
|
END
|
||||||
|
SET @debugXml = (SELECT * FROM @davky FOR XML AUTO)
|
||||||
|
|
||||||
|
-- begin: test data/casu zahajeni na kalendar stroje
|
||||||
|
IF (@idKalendarStroje IS NULL) -- pokud kalendar nemam, per to tam
|
||||||
|
BEGIN
|
||||||
|
SET @cnt = 0
|
||||||
|
WHILE EXISTS(SELECT 1 FROM dbo.TabAdvKPDavky WHERE IDAdvKapacPlan=@idAdvKPl AND IDStroje=@idStroj AND Zamek=1 AND @planStart BETWEEN CasOd AND CasDo)
|
||||||
|
AND (@cnt<=3000) -- kvuli zamrznuti
|
||||||
|
BEGIN
|
||||||
|
SET @planStart = DATEADD(hour, 1, @planStart)
|
||||||
|
SET @cnt = @cnt + 1
|
||||||
|
END
|
||||||
|
SET @planStartEnd = DATEADD(second, -1, DATEADD(hour, 1, @planStart))
|
||||||
|
END
|
||||||
|
ELSE
|
||||||
|
BEGIN -- pokud kalendar mam, zkontroluj jestli neni na dany datum/cas vyjimka
|
||||||
|
SET @cnt = 0
|
||||||
|
WHILE (EXISTS(SELECT 1 FROM dbo.TabAdvKPDavky WHERE IDAdvKapacPlan=@idAdvKPl AND IDStroje=@idStroj AND Zamek=1 AND @planStart BETWEEN CasOd AND CasDo)
|
||||||
|
OR EXISTS(SELECT 1 FROM dbo.TabPlanKalendPol WHERE IDStroje=@idStroj AND @planStart BETWEEN CasOd AND CasDo)
|
||||||
|
)
|
||||||
|
AND (@cnt<=3000) -- kvuli zamrznuti
|
||||||
|
BEGIN
|
||||||
|
SET @planStart = DATEADD(hour, 1, @planStart)
|
||||||
|
SET @cnt = @cnt + 1
|
||||||
|
END
|
||||||
|
SET @planStartEnd = DATEADD(second, -1, DATEADD(hour, 1, @planStart))
|
||||||
|
END
|
||||||
|
-- end: test data/casu zahajeni na kalendar stroje
|
||||||
|
|
||||||
|
|
||||||
|
IF (@cisloDavky=@pocetDavek)
|
||||||
|
BEGIN
|
||||||
|
SET @ksZaHod = @mnozKs - ( @ksZaHod * (@cisloDavky-1))
|
||||||
|
SET @kaZaHod = ROUND(@ksZaHod/@mnozKsVKA, 2)
|
||||||
|
END
|
||||||
|
|
||||||
|
SET @mnoz = CASE @mjEvid WHEN N'ka' THEN @kaZaHod WHEN N'ks' THEN @ksZaHod END
|
||||||
|
|
||||||
|
IF OBJECT_ID('dbo.ep_Vyroba_AdvPlan_ArchivujDavky', 'P') IS NOT NULL
|
||||||
|
EXEC dbo.ep_Vyroba_AdvPlan_ArchivujDavky @IDAdvKapacPlan=@idAdvKPl
|
||||||
|
|
||||||
|
SET @podm = N'IdAdvKapacPlan=' + CONVERT(nvarchar, @idAdvKPl)
|
||||||
|
EXEC @locId=dbo.hp_NajdiPrvniVolny @Tabulka=N'TabAdvKPDavky', @Atribut=N'LocalID', @Where=@podm, @Odkud=1, @Kam=999999999, @Returnem=1
|
||||||
|
|
||||||
|
INSERT dbo.TabAdvKPDavky (IDAdvKapacPlan, LocalID, IDVypoctu, ZpusobVznikuDavkyKP, DatumPripadu, IDPrikaz, Dilec, DokladPrPostup, AltPrPostup,
|
||||||
|
IDPrac, IDStroje, CasOd, CasDo, Mnozstvi, PrepravniCas, MeziOperCas, DeadTime, BlokaceZdroje, ProcSplneni, Mnozstvi_Zive)
|
||||||
|
SELECT @idAdvKPl, @locId, @idVypoctu, 0, @planStart, @idVPr, @dilec, @doklProZapis, @altProZapis, @idPrac, @idStroj, @planStart, @planStartEnd,
|
||||||
|
@mnoz, 0, 0, 0, 1, 0, @mnoz
|
||||||
|
SET @idDavky = SCOPE_IDENTITY()
|
||||||
|
IF (@idDavky IS NOT NULL)
|
||||||
|
BEGIN
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM dbo.TabAdvKPDavky_EXT WHERE ID=@idDavky)
|
||||||
|
INSERT dbo.TabAdvKPDavky_EXT (ID) VALUES (@idDavky)
|
||||||
|
UPDATE dbo.TabAdvKPDavky_EXT SET _VazbaPlgPlan=@idSadaDavek WHERE ID=@idDavky
|
||||||
|
END
|
||||||
|
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM dbo.TabAdvKPDavky_EXT WHERE ID=@idDavky)
|
||||||
|
INSERT dbo.TabAdvKPDavky_EXT (ID) VALUES (@idDavky)
|
||||||
|
UPDATE dbo.TabAdvKPDavky_EXT SET _MnozstviKs=CASE @mjEvid WHEN N'ka' THEN @ksZaHod WHEN N'ks' THEN @ksZaHod ELSE NULL END WHERE ID=@idDavky
|
||||||
|
|
||||||
|
-- begin: posun nasledujicich davek
|
||||||
|
DECLARE dav CURSOR LOCAL FOR
|
||||||
|
SELECT ID, CasOd, PoradoveCislo
|
||||||
|
FROM @davky
|
||||||
|
OPEN dav
|
||||||
|
WHILE (1=1)
|
||||||
|
BEGIN
|
||||||
|
FETCH NEXT FROM dav INTO @idDavkyOld, @startOdOld, @poradCislo
|
||||||
|
IF (@@FETCH_STATUS<>0) BREAK
|
||||||
|
|
||||||
|
IF (@poradCislo=1)
|
||||||
|
SET @startOdOld = DATEADD(hour, 1, @planStart)
|
||||||
|
ELSE
|
||||||
|
SET @startOdOld = DATEADD(hour, 1, (SELECT CasOd FROM @davky WHERE PoradoveCislo=@poradCislo-1))
|
||||||
|
|
||||||
|
IF (@idKalendarStroje IS NULL)
|
||||||
|
BEGIN
|
||||||
|
SET @cnt = 0
|
||||||
|
WHILE EXISTS(SELECT 1 FROM dbo.TabAdvKPDavky WHERE IDAdvKapacPlan=@idAdvKPl AND IDStroje=@idStroj AND Zamek=1 AND @startOdOld BETWEEN CasOd AND CasDo)
|
||||||
|
AND (@cnt<=3000) -- kvuli zamrznuti
|
||||||
|
BEGIN
|
||||||
|
SET @startOdOld = DATEADD(hour, 1, @startOdOld)
|
||||||
|
SET @cnt = @cnt + 1
|
||||||
|
END
|
||||||
|
END
|
||||||
|
ELSE
|
||||||
|
BEGIN
|
||||||
|
SET @cnt = 0
|
||||||
|
WHILE (EXISTS(SELECT 1 FROM dbo.TabAdvKPDavky WHERE IDAdvKapacPlan=@idAdvKPl AND IDStroje=@idStroj AND Zamek=1 AND @startOdOld BETWEEN CasOd AND CasDo)
|
||||||
|
OR EXISTS(SELECT 1 FROM dbo.TabPlanKalendPol WHERE IDStroje=@idStroj AND @planStart BETWEEN CasOd AND CasDo)
|
||||||
|
)
|
||||||
|
AND (@cnt<=3000) -- kvuli zamrznuti
|
||||||
|
BEGIN
|
||||||
|
SET @startOdOld = DATEADD(hour, 1, @startOdOld)
|
||||||
|
SET @cnt = @cnt + 1
|
||||||
|
END
|
||||||
|
END
|
||||||
|
UPDATE @davky SET CasOd=@startOdOld, CasDo=DATEADD(second, -1, DATEADD(hour, 1, @startOdOld)) WHERE PoradoveCislo=@poradCislo
|
||||||
|
UPDATE dbo.TabAdvKPDavky SET CasOd=@startOdOld, CasDo=DATEADD(second, -1, DATEADD(hour, 1, @startOdOld)) WHERE ID=@idDavkyOld
|
||||||
|
END
|
||||||
|
CLOSE dav
|
||||||
|
DEALLOCATE dav
|
||||||
|
-- end: posun nasledujicich davek
|
||||||
|
|
||||||
|
|
||||||
|
SET @planStart = DATEADD(hour, 1, @planStart)
|
||||||
|
SET @cisloDavky = @cisloDavky + 1
|
||||||
|
END
|
||||||
|
END
|
||||||
|
END -- @ksZaHod<>0
|
||||||
|
END -- @jeUdrzba=0
|
||||||
|
|
||||||
|
END
|
||||||
|
CLOSE c
|
||||||
|
DEALLOCATE c
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
IF (@tranPred=0) AND (@@TRANCOUNT>0)
|
||||||
|
COMMIT TRAN
|
||||||
|
|
||||||
|
END TRY
|
||||||
|
BEGIN CATCH
|
||||||
|
IF (@tranPred=0) AND (@@TRANCOUNT>0)
|
||||||
|
ROLLBACK TRAN
|
||||||
|
SET @errMsg = ERROR_MESSAGE()
|
||||||
|
END CATCH
|
||||||
|
|
||||||
133
_plgPlan/ep_Vyroba_ZapisDoPlanu.sql
Normal file
133
_plgPlan/ep_Vyroba_ZapisDoPlanu.sql
Normal file
@ -0,0 +1,133 @@
|
|||||||
|
-- dbo.ep_Vyroba_ZapisDoPlanu
|
||||||
|
CREATE PROCEDURE dbo.ep_Vyroba_ZapisDoPlanu
|
||||||
|
@dilec INT=NULL,
|
||||||
|
@idZakazModif INT=NULL,
|
||||||
|
@datum NVARCHAR(15)=N'',
|
||||||
|
@hodinaOd TINYINT=0,
|
||||||
|
@pocetKs NUMERIC(19,6)=0.0,
|
||||||
|
@pocetKA NUMERIC(19,6)=0.0,
|
||||||
|
@pocetPal NUMERIC(19,6)=0.0,
|
||||||
|
@datumPlanKonec DATETIME=NULL OUT,
|
||||||
|
@errMsg NVARCHAR(500)=N'' OUT
|
||||||
|
AS
|
||||||
|
|
||||||
|
-- HD Consulting Strakonice, T. Buzin
|
||||||
|
-- !! proceduru neupravujte, bude stejne pregenerovana pri startu pluginu pro planovani
|
||||||
|
|
||||||
|
SET NOCOUNT ON
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@idPlan INT,
|
||||||
|
@datumPlanStart DATETIME,
|
||||||
|
@planHodin NUMERIC(19,6),
|
||||||
|
@radaPlanu NVARCHAR(10),
|
||||||
|
@mjEvid NVARCHAR(10),
|
||||||
|
@mnoz NUMERIC(19,6),
|
||||||
|
@mnozKs NUMERIC(19,6)
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@kodZakazModif NVARCHAR(20),
|
||||||
|
@idStroj INT,
|
||||||
|
@ksZaHod NUMERIC(19,6),
|
||||||
|
@ksVKA NUMERIC(19,6)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
IF (@dilec IS NULL)
|
||||||
|
RETURN
|
||||||
|
|
||||||
|
SET @pocetKs = ISNULL(@pocetKs, 0)
|
||||||
|
SET @pocetKA = ISNULL(@pocetKA, 0)
|
||||||
|
SET @pocetPal = ISNULL(@pocetPal, 0)
|
||||||
|
|
||||||
|
IF (@pocetKs=0) AND (@pocetKA=0) AND (@pocetPal=0)
|
||||||
|
RETURN
|
||||||
|
|
||||||
|
BEGIN TRY
|
||||||
|
SET @datum = TRIM(ISNULL(@datum, N''))
|
||||||
|
SET @hodinaOd = ISNULL(@hodinaOd, 0)
|
||||||
|
IF (@datum=N'')
|
||||||
|
SET @datumPlanStart = GETDATE()
|
||||||
|
ELSE
|
||||||
|
SET @datumPlanStart = ISNULL( TRY_CONVERT(DATETIME, @datum), GETDATE())
|
||||||
|
SET @datumPlanStart = DATEADD(hour, @hodinaOd, dbo.hf_TruncDate(@datumPlanStart) )
|
||||||
|
END TRY
|
||||||
|
BEGIN CATCH
|
||||||
|
SET @datumPlanStart = DATEADD(hour, @hodinaOd, dbo.hf_TruncDate(GETDATE()) )
|
||||||
|
END CATCH
|
||||||
|
|
||||||
|
|
||||||
|
SET @idStroj = NULL
|
||||||
|
SET @ksZaHod = 0
|
||||||
|
SET @kodZakazModif = (SELECT Kod FROM dbo.TabZakazModif WHERE ID=@idZakazModif)
|
||||||
|
IF (@kodZakazModif IS NOT NULL)
|
||||||
|
BEGIN
|
||||||
|
SET @idStroj = (SELECT ID FROM dbo.TabCisStroju WHERE Kod=LEFT(@kodZakazModif,10) AND Blokovano=0)
|
||||||
|
IF (@idStroj IS NOT NULL)
|
||||||
|
SET @ksZaHod = ISNULL( (SELECT _KapacitaKsZaHod FROM dbo.TabCisStroju_EXT WHERE ID=@idStroj), 0)
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
SET @mnoz = 0
|
||||||
|
SET @mnozKs = 0
|
||||||
|
SET @ksVKA = 0
|
||||||
|
|
||||||
|
IF (@pocetKs>0)
|
||||||
|
SET @mnozKs = @pocetKs
|
||||||
|
|
||||||
|
SELECT @mjEvid=MJEvidence FROM dbo.TabKmenZbozi WHERE ID=@dilec
|
||||||
|
IF (@mjEvid=N'KA')
|
||||||
|
BEGIN
|
||||||
|
SET @ksVKA = ISNULL( (SELECT PocetOdvozene FROM dbo.TabMJZbozi WHERE IDKmenZbozi=@dilec AND LOWER(KodMJ1)=N'KA' AND LOWER(KodMJ2)=N'ks'), 1)
|
||||||
|
IF (@pocetKA>0)
|
||||||
|
BEGIN
|
||||||
|
SET @mnoz = @pocetKA
|
||||||
|
SET @mnozKs = @mnoz * @ksVKA
|
||||||
|
END
|
||||||
|
END
|
||||||
|
|
||||||
|
IF (@mnoz=0)
|
||||||
|
BEGIN
|
||||||
|
IF (@pocetKs>0) AND (@mjEvid=N'KA')
|
||||||
|
SET @mnoz = CEILING(@pocetKs / @ksVKA)
|
||||||
|
IF (@pocetPal>0) AND (@mjEvid=N'KA')
|
||||||
|
BEGIN
|
||||||
|
SET @mnoz = CEILING(@pocetPal * ISNULL( (SELECT PocetHlavni FROM dbo.TabMJZbozi WHERE IDKmenZbozi=@dilec AND LOWER(KodMJ1)=N'ka' AND LOWER(KodMJ2)=N'pal'), 0))
|
||||||
|
SET @mnozKs = @mnoz * @ksVKA
|
||||||
|
END
|
||||||
|
END -- mnoz=0, najdi prepocet ks a pal
|
||||||
|
|
||||||
|
|
||||||
|
IF (@datumPlanKonec IS NULL)
|
||||||
|
BEGIN
|
||||||
|
SET @planHodin = 0
|
||||||
|
IF (@ksZaHod<>0)
|
||||||
|
SET @planHodin = ROUND(@mnozKs/@ksZaHod, 2)
|
||||||
|
IF (@planHodin=0)
|
||||||
|
EXEC dbo.hp_GetPlanovanyTerminDokonceniVyroby @IDFinal=@dilec, @IDZakazModif=@idZakazModif, @Mnozstvi=@mnoz,
|
||||||
|
@DatumZahajeni=@datumPlanStart, @DatumUkonceni=@datumPlanKonec OUT
|
||||||
|
ELSE
|
||||||
|
SET @datumPlanKonec=DATEADD(minute, @planHodin*60.0, @datumPlanStart)
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
SET @radaPlanu=(SELECT ISNULL(pkz.RadaVyrPlanu,sz.ParD_RadaVyrPlanu) FROM dbo.TabKmenZbozi k
|
||||||
|
INNER JOIN dbo.TabParKmZ pkz ON (pkz.IDKmenZbozi=k.ID)
|
||||||
|
INNER JOIN dbo.TabSkupinyZbozi sz ON (sz.SkupZbo=k.SkupZbo)
|
||||||
|
WHERE k.ID=@dilec)
|
||||||
|
|
||||||
|
SET @idPlan=0
|
||||||
|
IF (@radaPlanu IS NOT NULL) AND (@mnoz>0)
|
||||||
|
BEGIN
|
||||||
|
BEGIN TRY
|
||||||
|
EXEC @idPlan=dbo.hp_NewVyrobniPlan @Rada=@radaPlanu, @IDDilce=@dilec, @IDZakazModif=@idZakazModif, @mnozstvi=@mnoz, @PlanUkonceni=@datumPlanKonec
|
||||||
|
END TRY
|
||||||
|
BEGIN CATCH
|
||||||
|
SET @errMsg=ERROR_MESSAGE()
|
||||||
|
SET @idPlan=0
|
||||||
|
END CATCH
|
||||||
|
END
|
||||||
|
|
||||||
|
RETURN @idPlan
|
||||||
|
|
||||||
198
_plgPlan/ep_Vyroba_ZrusZakazkuPlanuDleFinPrikazu.sql
Normal file
198
_plgPlan/ep_Vyroba_ZrusZakazkuPlanuDleFinPrikazu.sql
Normal file
@ -0,0 +1,198 @@
|
|||||||
|
-- dbo.ep_Vyroba_ZrusZakazkuPlanuDleFinPrikazu
|
||||||
|
CREATE PROCEDURE dbo.ep_Vyroba_ZrusZakazkuPlanuDleFinPrikazu
|
||||||
|
@idAdvKP INT=NULL,
|
||||||
|
@idVPrFin INT=NULL,
|
||||||
|
@idStroj INT=NULL,
|
||||||
|
@jeUdrzba BIT=0,
|
||||||
|
@idSadaDavek INT=NULL,
|
||||||
|
@errorMsg NVARCHAR(500)=N'' OUT
|
||||||
|
AS
|
||||||
|
|
||||||
|
-- HD Consulting Strakonice, T. Buzin
|
||||||
|
-- !! proceduru neupravujte, bude stejne pregenerovana pri startu pluginu pro planovani
|
||||||
|
|
||||||
|
SET NOCOUNT ON
|
||||||
|
|
||||||
|
IF (@idAdvKP IS NULL)
|
||||||
|
BEGIN
|
||||||
|
SET @errorMsg = N'Neni speficikovan kapacitni plan'
|
||||||
|
RETURN
|
||||||
|
END
|
||||||
|
IF (@idStroj IS NULL)
|
||||||
|
BEGIN
|
||||||
|
SET @errorMsg = N'Neni specifikovan stroj'
|
||||||
|
RETURN
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@tranPred INT,
|
||||||
|
@cnt INT,
|
||||||
|
@iTemp INT,
|
||||||
|
@xml XML,
|
||||||
|
@retVal INT,
|
||||||
|
@idVPr INT,
|
||||||
|
@idPlan INT,
|
||||||
|
@minCasDo DATETIME=NULL,
|
||||||
|
@maxCasDo DATETIME=NULL,
|
||||||
|
@idDavka INT,
|
||||||
|
@casOd DATETIME,
|
||||||
|
@casOdNew DATETIME,
|
||||||
|
@casDo DATETIME,
|
||||||
|
@idKalendarStroje INT
|
||||||
|
|
||||||
|
|
||||||
|
DECLARE @davkyZa TABLE (ID INT, IDPrikaz INT, Mnozstvi NUMERIC(19,6), CasOd DATETIME, CasDo DATETIME)
|
||||||
|
DECLARE @sadaDavek TABLE (ID INT NOT NULL)
|
||||||
|
|
||||||
|
SET @idKalendarStroje = (SELECT IDPlanKalend FROM dbo.TabCisStroju WHERE ID=@idStroj)
|
||||||
|
SET @maxCasDo = CONVERT(datetime, N'1.1.2020', 104)
|
||||||
|
SET @maxCasDo = @minCasDo -- CONVERT(datetime, N'1.1.2020', 104)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
DELETE FROM @sadaDavek
|
||||||
|
IF (@idSadaDavek IS NOT NULL)
|
||||||
|
INSERT @sadaDavek (ID) SELECT ID FROM dbo.TabAdvKPDavky_EXT WHERE _VazbaPlgPlan=@idSadaDavek
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
BEGIN TRY
|
||||||
|
|
||||||
|
SET @tranPred=@@TRANCOUNT
|
||||||
|
IF( @tranPred=0)
|
||||||
|
BEGIN TRAN
|
||||||
|
|
||||||
|
DECLARE vp CURSOR LOCAL FOR
|
||||||
|
SELECT ID, IDPlan
|
||||||
|
FROM dbo.TabPrikaz
|
||||||
|
WHERE IDPrikazRidici=@idVPrFin
|
||||||
|
AND StavPrikazu<40
|
||||||
|
ORDER BY UrovenVnoreni DESC
|
||||||
|
OPEN vp
|
||||||
|
WHILE (1=1)
|
||||||
|
BEGIN
|
||||||
|
FETCH NEXT FROM vp INTO @idVPr, @idPlan
|
||||||
|
IF (@@FETCH_STATUS<>0) BREAK
|
||||||
|
|
||||||
|
|
||||||
|
IF EXISTS(SELECT 1 FROM dbo.TabAdvKPDavky WHERE Zamek=1 AND IDAdvKapacPlan=@idAdvKP AND IDPrikaz=@idVPr AND IDStroje=@idStroj)
|
||||||
|
CONTINUE
|
||||||
|
|
||||||
|
IF EXISTS(SELECT ID FROM dbo.TabAdvKPDavky WHERE IDAdvKapacPlan=@idAdvKP AND IDPrikaz=@idVPr AND IDStroje=@idStroj AND CasDo>@maxCasDo)
|
||||||
|
SET @maxCasDo = (SELECT MAX(CasDo) FROM dbo.TabAdvKPDavky WHERE Zamek=0 AND IDAdvKapacPlan=@idAdvKP AND IDPrikaz=@idVPr AND IDStroje=@idStroj AND CasDo>@maxCasDo)
|
||||||
|
|
||||||
|
-- zkontroluje zda je neco z prikazu uz odvedeno a pripadne smaze vsechny vazby (kusovnik, operace, VC, naradi, OPN, davky advKP, kalk/plan naklady...)
|
||||||
|
EXEC @retVal = dbo.hp_TabPrikaz_TriggerBeforeDelete @ID=@idVPr, @PouzeTestPredZrusenimStavuZadano=0
|
||||||
|
IF (@@ERROR=0) AND (@retVal=0)
|
||||||
|
DELETE FROM dbo.TabPrikaz WHERE ID=@idVPr
|
||||||
|
-- EXEC @retVal=dbo.hp_TabPlan_TriggerBeforeDelete @ID=@idPlan
|
||||||
|
-- IF (@@ERROR=0) AND (@retVal=0)
|
||||||
|
-- IF NOT EXISTS (SELECT 1 FROM dbo.TabPrikaz WHERE IDPlan=@idPlan)
|
||||||
|
-- DELETE FROM dbo.TabPlan WHERE ID=@idPlan
|
||||||
|
END
|
||||||
|
CLOSE vp
|
||||||
|
DEALLOCATE vp
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
SET @minCasDo = DATEADD(hour, 1, DATEADD(hour, DATEDIFF(hour, 0, @minCasDo), 0))
|
||||||
|
-- SET @maxCasDo = @minCasDo -- CONVERT(datetime, N'1.1.2020', 104)
|
||||||
|
IF EXISTS (SELECT 1 FROM dbo.TabAdvKPDavky WHERE IDAdvKapacPlan=@idAdvKP AND IDStroje=@idStroj AND CasDo<@maxCasDo)
|
||||||
|
BEGIN
|
||||||
|
SELECT @minCasDo=MAX(CasDo) FROM dbo.TabAdvKPDavky WHERE IDAdvKapacPlan=@idAdvKP AND IDStroje=@idStroj AND CasDo<@maxCasDo
|
||||||
|
SET @casOdNew = DATEADD(second, 1, @minCasDo)
|
||||||
|
END
|
||||||
|
|
||||||
|
IF EXISTS (SELECT 1 FROM dbo.TabAdvKPDavky WHERE IDAdvKapacPlan=@idAdvKP AND IDPrikaz=@idVPrFin AND IDStroje=@idStroj AND CasDo>@maxCasDo)
|
||||||
|
SET @maxCasDo = (SELECT MAX(CasDo) FROM dbo.TabAdvKPDavky WHERE IDAdvKapacPlan=@idAdvKP AND IDPrikaz=@idVPrFin AND IDStroje=@idStroj AND CasDo>@maxCasDo)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
SELECT @idPlan=IDPlan FROM dbo.TabPrikaz WHERE ID=@idVPrFin
|
||||||
|
-- zkontroluje zda je neco z prikazu uz odvedeno a pripadne smaze vsechny vazby (kusovnik, operace, VC, naradi, OPN, davky advKP, kalk/plan naklady...)
|
||||||
|
EXEC @retVal = dbo.hp_TabPrikaz_TriggerBeforeDelete @ID=@idVPrFin, @PouzeTestPredZrusenimStavuZadano=0
|
||||||
|
DELETE FROM dbo.TabPrikaz WHERE ID=@idVPrFin
|
||||||
|
EXEC @retVal=dbo.hp_TabPlan_TriggerBeforeDelete @ID=@idPlan
|
||||||
|
IF (@@ERROR=0) AND (@retVal=0)
|
||||||
|
DELETE FROM dbo.TabPlan WHERE ID=@idPlan
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- nasledujici neblokovane davky
|
||||||
|
INSERT @davkyZa (ID, CasOd, CasDo)
|
||||||
|
SELECT ID, CasOd, CasDo FROM dbo.TabAdvKPDavky WHERE Zamek=0 AND IDAdvKapacPlan=@idAdvKP AND IDStroje=@idStroj AND CasOd>@maxCasDo
|
||||||
|
SET @xml=(SELECT * FROM @davkyZa FOR XML AUTO)
|
||||||
|
|
||||||
|
-- presun je dopredu, na konec predchozi prace na tom samem stroji, pokud ma stroj kalendar, koukej i na nej
|
||||||
|
DECLARE dav CURSOR LOCAL FOR
|
||||||
|
SELECT ID, CasOd, CasDo
|
||||||
|
FROM @davkyZa
|
||||||
|
ORDER BY CasOd
|
||||||
|
OPEN dav
|
||||||
|
WHILE (1=1)
|
||||||
|
BEGIN
|
||||||
|
FETCH NEXT FROM dav INTO @idDavka, @casOd, @casDo
|
||||||
|
IF (@@FETCH_STATUS<>0) BREAK
|
||||||
|
|
||||||
|
SET @casOd = @casOdNew
|
||||||
|
-- begin: test data/casu zahajeni na kalendar stroje
|
||||||
|
IF (@idKalendarStroje IS NULL) -- pokud kalendar nemam, per to tam
|
||||||
|
BEGIN
|
||||||
|
SET @cnt = 0
|
||||||
|
WHILE EXISTS(SELECT 1 FROM dbo.TabAdvKPDavky WHERE IDAdvKapacPlan=@idAdvKP AND IDStroje=@idStroj AND Zamek=1 AND @casOd BETWEEN CasOd AND CasDo)
|
||||||
|
AND (@cnt<=3000) -- kvuli zamrznuti
|
||||||
|
BEGIN
|
||||||
|
SET @casOd = DATEADD(hour, 1, @casOd)
|
||||||
|
SET @cnt = @cnt + 1
|
||||||
|
END
|
||||||
|
SET @casDo = DATEADD(second, -1, DATEADD(hour, 1, @casOd))
|
||||||
|
END
|
||||||
|
ELSE
|
||||||
|
BEGIN -- pokud kalendar mam, zkontroluj jestli neni na dany datum/cas vyjimka
|
||||||
|
SET @cnt = 0
|
||||||
|
WHILE (EXISTS(SELECT 1 FROM dbo.TabAdvKPDavky WHERE IDAdvKapacPlan=@idAdvKP AND IDStroje=@idStroj AND Zamek=1 AND @casOd BETWEEN CasOd AND CasDo)
|
||||||
|
OR EXISTS(SELECT 1 FROM dbo.TabPlanKalendPol WHERE IDStroje=@idStroj AND @casOd BETWEEN CasOd AND CasDo)
|
||||||
|
)
|
||||||
|
AND (@cnt<=3000) -- kvuli zamrznuti
|
||||||
|
BEGIN
|
||||||
|
SET @casOd = DATEADD(hour, 1, @casOd)
|
||||||
|
SET @cnt = @cnt + 1
|
||||||
|
END
|
||||||
|
SET @casDo = DATEADD(second, -1, DATEADD(hour, 1, @casOd))
|
||||||
|
END
|
||||||
|
-- end: test data/casu zahajeni na kalendar stroje
|
||||||
|
UPDATE dbo.TabAdvKPDavky SET CasOd=@casOd, CasDo=@casDo WHERE ID=@idDavka
|
||||||
|
|
||||||
|
|
||||||
|
END
|
||||||
|
CLOSE dav
|
||||||
|
DEALLOCATE dav
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
IF (@tranPred=0) AND (@@TRANCOUNT>0)
|
||||||
|
COMMIT TRAN
|
||||||
|
|
||||||
|
END TRY
|
||||||
|
|
||||||
|
BEGIN CATCH
|
||||||
|
IF (@tranPred=0) AND (@@TRANCOUNT>0)
|
||||||
|
ROLLBACK TRAN
|
||||||
|
SET @errorMsg = ERROR_MESSAGE()
|
||||||
|
|
||||||
|
IF (CURSOR_STATUS('local','dav')>=-1)
|
||||||
|
BEGIN
|
||||||
|
CLOSE dav
|
||||||
|
DEALLOCATE dav
|
||||||
|
END
|
||||||
|
|
||||||
|
IF (CURSOR_STATUS('local','vp')>=-1)
|
||||||
|
BEGIN
|
||||||
|
CLOSE vp
|
||||||
|
DEALLOCATE vp
|
||||||
|
END
|
||||||
|
|
||||||
|
END CATCH
|
||||||
294
_plgPlan/frmKmen.dfm
Normal file
294
_plgPlan/frmKmen.dfm
Normal file
@ -0,0 +1,294 @@
|
|||||||
|
object formKmen: TformKmen
|
||||||
|
Left = 0
|
||||||
|
Top = 0
|
||||||
|
BorderIcons = [biSystemMenu]
|
||||||
|
Caption = ' Vyberte polo'#382'ku do pl'#225'nu'
|
||||||
|
ClientHeight = 800
|
||||||
|
ClientWidth = 1203
|
||||||
|
Color = clBtnFace
|
||||||
|
Font.Charset = DEFAULT_CHARSET
|
||||||
|
Font.Color = clWindowText
|
||||||
|
Font.Height = -16
|
||||||
|
Font.Name = 'Segoe UI'
|
||||||
|
Font.Style = []
|
||||||
|
Position = poOwnerFormCenter
|
||||||
|
OnClose = FormClose
|
||||||
|
OnShow = FormShow
|
||||||
|
TextHeight = 21
|
||||||
|
object grd1: TGridPanel
|
||||||
|
Left = 0
|
||||||
|
Top = 0
|
||||||
|
Width = 1203
|
||||||
|
Height = 800
|
||||||
|
Align = alClient
|
||||||
|
Caption = 'grd1'
|
||||||
|
ColumnCollection = <
|
||||||
|
item
|
||||||
|
Value = 100.000000000000000000
|
||||||
|
end>
|
||||||
|
ControlCollection = <
|
||||||
|
item
|
||||||
|
Column = 0
|
||||||
|
Control = Panel1
|
||||||
|
Row = 1
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Column = 0
|
||||||
|
Control = grd2
|
||||||
|
Row = 0
|
||||||
|
end>
|
||||||
|
RowCollection = <
|
||||||
|
item
|
||||||
|
Value = 5.000000000000000000
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Value = 95.000000000000000000
|
||||||
|
end>
|
||||||
|
TabOrder = 0
|
||||||
|
object Panel1: TPanel
|
||||||
|
Left = 1
|
||||||
|
Top = 41
|
||||||
|
Width = 1201
|
||||||
|
Height = 758
|
||||||
|
Align = alClient
|
||||||
|
Anchors = []
|
||||||
|
TabOrder = 0
|
||||||
|
object grdKmen: TJvDBGrid
|
||||||
|
Left = 1
|
||||||
|
Top = 1
|
||||||
|
Width = 1199
|
||||||
|
Height = 756
|
||||||
|
Align = alClient
|
||||||
|
DataSource = dm2.dsKmen
|
||||||
|
DrawingStyle = gdsClassic
|
||||||
|
Options = [dgTitles, dgIndicator, dgColLines, dgRowLines, dgTabs, dgRowSelect, dgConfirmDelete, dgCancelOnExit, dgTitleClick, dgTitleHotTrack]
|
||||||
|
ReadOnly = True
|
||||||
|
TabOrder = 0
|
||||||
|
TitleFont.Charset = DEFAULT_CHARSET
|
||||||
|
TitleFont.Color = clWindowText
|
||||||
|
TitleFont.Height = -16
|
||||||
|
TitleFont.Name = 'Segoe UI'
|
||||||
|
TitleFont.Style = []
|
||||||
|
OnDrawColumnCell = grdKmenDrawColumnCell
|
||||||
|
OnDblClick = grdKmenDblClick
|
||||||
|
ScrollBars = ssVertical
|
||||||
|
SelectColumnsDialogStrings.Caption = 'Vyberte sloupce'
|
||||||
|
SelectColumnsDialogStrings.OK = '&OK'
|
||||||
|
SelectColumnsDialogStrings.NoSelectionWarning = 'Mus'#237' b'#253't viditeln'#253' aspo'#328' jeden sloupec !'
|
||||||
|
CanDelete = False
|
||||||
|
EditControls = <>
|
||||||
|
RowsHeight = 25
|
||||||
|
TitleRowHeight = 25
|
||||||
|
Columns = <
|
||||||
|
item
|
||||||
|
Expanded = False
|
||||||
|
FieldName = 'colID'
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Alignment = taCenter
|
||||||
|
Expanded = False
|
||||||
|
FieldName = 'colSZ'
|
||||||
|
Title.Alignment = taCenter
|
||||||
|
Title.Caption = 'SK'
|
||||||
|
Width = 35
|
||||||
|
Visible = True
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Alignment = taCenter
|
||||||
|
Expanded = False
|
||||||
|
FieldName = 'colRegCis'
|
||||||
|
Title.Alignment = taCenter
|
||||||
|
Title.Caption = 'Reg. '#269#237'slo'
|
||||||
|
Width = 109
|
||||||
|
Visible = True
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Expanded = False
|
||||||
|
FieldName = 'colNazev1'
|
||||||
|
Title.Alignment = taCenter
|
||||||
|
Title.Caption = 'N'#225'zev'
|
||||||
|
Width = 352
|
||||||
|
Visible = True
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Expanded = False
|
||||||
|
FieldName = 'colZaklad'
|
||||||
|
Title.Alignment = taCenter
|
||||||
|
Title.Caption = 'Z'#225'klad'
|
||||||
|
Width = 232
|
||||||
|
Visible = True
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Expanded = False
|
||||||
|
FieldName = 'colZakModif'
|
||||||
|
Title.Alignment = taCenter
|
||||||
|
Title.Caption = 'Stroj'
|
||||||
|
Width = 135
|
||||||
|
Visible = True
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Expanded = False
|
||||||
|
FieldName = 'colKSvKA'
|
||||||
|
Title.Alignment = taCenter
|
||||||
|
Title.Caption = 'Ks v KA'
|
||||||
|
Width = 74
|
||||||
|
Visible = True
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Expanded = False
|
||||||
|
FieldName = 'colKAnaPAL'
|
||||||
|
Title.Alignment = taCenter
|
||||||
|
Title.Caption = 'KA na Pal'
|
||||||
|
Width = 76
|
||||||
|
Visible = True
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Expanded = False
|
||||||
|
FieldName = 'colKSnaPAL'
|
||||||
|
Title.Alignment = taCenter
|
||||||
|
Title.Caption = 'KS na Pal'
|
||||||
|
Width = 83
|
||||||
|
Visible = True
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Alignment = taCenter
|
||||||
|
Expanded = False
|
||||||
|
FieldName = 'colMJEvid'
|
||||||
|
Title.Alignment = taCenter
|
||||||
|
Title.Caption = 'bal'
|
||||||
|
Width = 54
|
||||||
|
Visible = True
|
||||||
|
end>
|
||||||
|
end
|
||||||
|
end
|
||||||
|
object grd2: TGridPanel
|
||||||
|
AlignWithMargins = True
|
||||||
|
Left = 4
|
||||||
|
Top = 4
|
||||||
|
Width = 1195
|
||||||
|
Height = 34
|
||||||
|
Align = alClient
|
||||||
|
ColumnCollection = <
|
||||||
|
item
|
||||||
|
Value = 4.000000000000000000
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Value = 9.199999999999999000
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Value = 29.400000000000000000
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Value = 19.700000000000000000
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Value = 11.200000000000000000
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Value = 26.500000000000000000
|
||||||
|
end>
|
||||||
|
ControlCollection = <
|
||||||
|
item
|
||||||
|
Column = 0
|
||||||
|
Control = btnClear
|
||||||
|
Row = 0
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Column = 1
|
||||||
|
Control = edtRegCis
|
||||||
|
Row = 0
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Column = 2
|
||||||
|
Control = edtNazev
|
||||||
|
Row = 0
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Column = 3
|
||||||
|
Control = edtZaklad
|
||||||
|
Row = 0
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Column = 4
|
||||||
|
Control = edtStroj
|
||||||
|
Row = 0
|
||||||
|
end>
|
||||||
|
RowCollection = <
|
||||||
|
item
|
||||||
|
Value = 100.000000000000000000
|
||||||
|
end>
|
||||||
|
TabOrder = 1
|
||||||
|
object btnClear: TBitBtn
|
||||||
|
AlignWithMargins = True
|
||||||
|
Left = 4
|
||||||
|
Top = 4
|
||||||
|
Width = 42
|
||||||
|
Height = 26
|
||||||
|
Align = alClient
|
||||||
|
ImageIndex = 3
|
||||||
|
ImageName = 'Item4'
|
||||||
|
Images = dm2.imgList
|
||||||
|
TabOrder = 0
|
||||||
|
OnClick = btnClearClick
|
||||||
|
end
|
||||||
|
object edtRegCis: TRzEdit
|
||||||
|
AlignWithMargins = True
|
||||||
|
Left = 52
|
||||||
|
Top = 4
|
||||||
|
Width = 103
|
||||||
|
Height = 26
|
||||||
|
Text = ''
|
||||||
|
Align = alClient
|
||||||
|
Color = clSkyBlue
|
||||||
|
MaxLength = 30
|
||||||
|
TabOrder = 1
|
||||||
|
OnChange = edtRegCisChange
|
||||||
|
OnKeyPress = edtRegCisKeyPress
|
||||||
|
ExplicitHeight = 29
|
||||||
|
end
|
||||||
|
object edtNazev: TRzEdit
|
||||||
|
AlignWithMargins = True
|
||||||
|
Left = 161
|
||||||
|
Top = 4
|
||||||
|
Width = 345
|
||||||
|
Height = 26
|
||||||
|
Text = ''
|
||||||
|
Align = alClient
|
||||||
|
Color = clSkyBlue
|
||||||
|
MaxLength = 100
|
||||||
|
TabOrder = 2
|
||||||
|
OnChange = edtNazevChange
|
||||||
|
ExplicitHeight = 29
|
||||||
|
end
|
||||||
|
object edtZaklad: TRzEdit
|
||||||
|
AlignWithMargins = True
|
||||||
|
Left = 512
|
||||||
|
Top = 4
|
||||||
|
Width = 229
|
||||||
|
Height = 26
|
||||||
|
Text = ''
|
||||||
|
Align = alClient
|
||||||
|
Color = clSkyBlue
|
||||||
|
MaxLength = 100
|
||||||
|
TabOrder = 3
|
||||||
|
OnChange = edtZakladChange
|
||||||
|
ExplicitHeight = 29
|
||||||
|
end
|
||||||
|
object edtStroj: TRzEdit
|
||||||
|
AlignWithMargins = True
|
||||||
|
Left = 747
|
||||||
|
Top = 4
|
||||||
|
Width = 128
|
||||||
|
Height = 26
|
||||||
|
Text = ''
|
||||||
|
Align = alClient
|
||||||
|
Color = clSkyBlue
|
||||||
|
MaxLength = 50
|
||||||
|
TabOrder = 4
|
||||||
|
OnChange = edtStrojChange
|
||||||
|
ExplicitHeight = 29
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
226
_plgPlan/frmKmen.pas
Normal file
226
_plgPlan/frmKmen.pas
Normal file
@ -0,0 +1,226 @@
|
|||||||
|
unit frmKmen;
|
||||||
|
|
||||||
|
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, ddPlugin_TLB, Vcl.ComCtrls, JvExComCtrls, JvHeaderControl, Vcl.StdCtrls, Vcl.Buttons,
|
||||||
|
Vcl.Mask, RzEdit;
|
||||||
|
|
||||||
|
type
|
||||||
|
TformKmen = class(TForm)
|
||||||
|
Panel1: TPanel;
|
||||||
|
grdKmen: TJvDBGrid;
|
||||||
|
grd1: TGridPanel;
|
||||||
|
grd2: TGridPanel;
|
||||||
|
btnClear: TBitBtn;
|
||||||
|
edtRegCis: TRzEdit;
|
||||||
|
edtNazev: TRzEdit;
|
||||||
|
edtZaklad: TRzEdit;
|
||||||
|
edtStroj: TRzEdit;
|
||||||
|
procedure FormShow (Sender: TObject);
|
||||||
|
procedure grdKmenDblClick (Sender: TObject);
|
||||||
|
procedure FormClose (Sender: TObject; var Action: TCloseAction);
|
||||||
|
procedure btnClearClick (Sender: TObject);
|
||||||
|
procedure edtStrojChange (Sender: TObject);
|
||||||
|
procedure edtRegCisKeyPress (Sender: TObject; var Key: Char);
|
||||||
|
procedure grdKmenDrawColumnCell (Sender: TObject; const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState);
|
||||||
|
procedure edtRegCisChange (Sender: TObject);
|
||||||
|
procedure edtNazevChange (Sender: TObject);
|
||||||
|
procedure edtZakladChange (Sender: TObject);
|
||||||
|
private
|
||||||
|
procedure Filtruj;
|
||||||
|
public
|
||||||
|
Helios: IHelios;
|
||||||
|
retVal: integer;
|
||||||
|
idKmen: integer;
|
||||||
|
idZakModif: integer;
|
||||||
|
filtrKodStroj: string;
|
||||||
|
end;
|
||||||
|
|
||||||
|
var
|
||||||
|
formKmen: TformKmen;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
uses System.StrUtils,
|
||||||
|
helUtils, datMod2;
|
||||||
|
|
||||||
|
{$R *.dfm}
|
||||||
|
|
||||||
|
|
||||||
|
procedure TformKmen.edtNazevChange (Sender: TObject);
|
||||||
|
begin
|
||||||
|
Filtruj;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TformKmen.edtRegCisChange (Sender: TObject);
|
||||||
|
begin
|
||||||
|
Filtruj;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TformKmen.edtRegCisKeyPress (Sender: TObject; var Key: Char);
|
||||||
|
begin
|
||||||
|
Filtruj;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TformKmen.edtStrojChange (Sender: TObject);
|
||||||
|
begin
|
||||||
|
Filtruj;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TformKmen.edtZakladChange (Sender: TObject);
|
||||||
|
begin
|
||||||
|
Filtruj;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TformKmen.Filtruj;
|
||||||
|
var filtr: string;
|
||||||
|
begin
|
||||||
|
filtr:= '';
|
||||||
|
if (edtRegCis.Text<>'') then
|
||||||
|
filtr:= 'UPPER(colRegCis) LIKE ''%' + edtRegCis.Text.ToUpper + '%''';
|
||||||
|
|
||||||
|
if (edtNazev.Text<>'') then
|
||||||
|
filtr:= filtr + IfThen(filtr<>'', ' AND ', '') + 'UPPER(colNazev1) LIKE ''%' + edtNazev.Text.ToUpper + '%''';
|
||||||
|
|
||||||
|
if (edtZaklad.Text<>'') then
|
||||||
|
filtr:= filtr + IfThen(filtr<>'', ' AND ', '') + 'UPPER(colZaklad) LIKE ''%' + edtZaklad.Text.ToUpper + '%''';
|
||||||
|
|
||||||
|
if (edtStroj.Text<>'') then
|
||||||
|
filtr:= filtr + IfThen(filtr<>'', ' AND ', '') + 'UPPER(colZakModif) LIKE ''%' + edtStroj.Text.ToUpper + '%''';
|
||||||
|
|
||||||
|
grdKmen.LockDrawing;
|
||||||
|
dm2.vtKmen.Filtered:= false;
|
||||||
|
if (filtr<>'') then
|
||||||
|
begin
|
||||||
|
dm2.vtKmen.Filter:= filtr;
|
||||||
|
dm2.vtKmen.Filtered:= true;
|
||||||
|
end;
|
||||||
|
|
||||||
|
grdKmen.UnlockDrawing;
|
||||||
|
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TformKmen.btnClearClick (Sender: TObject);
|
||||||
|
begin
|
||||||
|
edtRegCis.Text:= '';
|
||||||
|
edtNazev.Text:= '';
|
||||||
|
edtZaklad.Text:= '';
|
||||||
|
edtStroj.Text:= '';
|
||||||
|
Filtruj;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TformKmen.FormClose (Sender: TObject; var Action: TCloseAction);
|
||||||
|
begin
|
||||||
|
Action:= TCloseAction.caFree;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TformKmen.FormShow (Sender: TObject);
|
||||||
|
var pomHandle: THandle;
|
||||||
|
filtr: string;
|
||||||
|
begin
|
||||||
|
retVal:= 0;
|
||||||
|
|
||||||
|
|
||||||
|
pomHandle:= THandle(Helios.MainApplicationHandle);
|
||||||
|
if (pomHandle<>Application.Handle) then
|
||||||
|
Application.Handle:= pomHandle;
|
||||||
|
|
||||||
|
pomHandle:= THandle(Helios.MainApplicationIconHandle);
|
||||||
|
if (pomHandle<>Application.Icon.Handle) then
|
||||||
|
Application.Icon.Handle:= pomHandle;
|
||||||
|
|
||||||
|
with Application.DefaultFont do
|
||||||
|
begin
|
||||||
|
Name:= Helios.Font;
|
||||||
|
Height:= Helios.FontHeight;
|
||||||
|
Charset:= Helios.Charset;
|
||||||
|
|
||||||
|
Screen.MenuFont.Charset:= Charset;
|
||||||
|
Screen.MenuFont.Name:= Name;
|
||||||
|
Screen.MenuFont.Height:= Height;
|
||||||
|
end;
|
||||||
|
|
||||||
|
self.Font:= Application.DefaultFont;
|
||||||
|
|
||||||
|
|
||||||
|
if not(dm2.vtKmen.Active) then
|
||||||
|
dm2.vtKmen.Open;
|
||||||
|
|
||||||
|
dm2.vtKmen.EmptyDataSet;
|
||||||
|
dm2.vtKmen.Filtered:= false;
|
||||||
|
|
||||||
|
grdKmen.LockDrawing;
|
||||||
|
filtr:= 'k.Dilec=1 AND k.MJEvidence=N''KA''';
|
||||||
|
if (filtrKodStroj<>'') then
|
||||||
|
filtr:= filtr + ' AND k.ID IN (SELECT zmd.IDKmenZbozi FROM ' + tblZakazModifDilce + ' zmd INNER JOIN ' + tblZakazModif
|
||||||
|
+ ' zm ON (zm.ID=zmd.IDZakazModif) WHERE zm.Schvaleno=1 AND zm.Kod=N' + filtrKodStroj.QuotedString + ')';
|
||||||
|
dm2.NactiKmenZbozi (filtr);
|
||||||
|
dm2.vtKmen.First;
|
||||||
|
grdKmen.UnlockDrawing;
|
||||||
|
|
||||||
|
helUtils.waitEnd;
|
||||||
|
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TformKmen.grdKmenDblClick (Sender: TObject);
|
||||||
|
var i, zm: integer;
|
||||||
|
sz,rc,naz: string;
|
||||||
|
begin
|
||||||
|
i:= dm2.vtKmen.FieldByName('colID').AsInteger;
|
||||||
|
sz:= dm2.vtKmen.FieldByName('colSZ').AsString;
|
||||||
|
rc:= dm2.vtKmen.FieldByName('colRegCis').AsString;
|
||||||
|
naz:= dm2.vtKmen.FieldByName('colNazev1').AsString;
|
||||||
|
zm:= dm2.vtKmen.FieldByName('colIDZakModif').AsInteger;
|
||||||
|
|
||||||
|
if (Helios.YesNo('Chcete vybrat ' + sz + ' ' + rc + ' ' + naz, true)) then
|
||||||
|
begin
|
||||||
|
idKmen:= i;
|
||||||
|
idZakModif:= zm;
|
||||||
|
retVal:= 10;
|
||||||
|
Close;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TformKmen.grdKmenDrawColumnCell (Sender: TObject; const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState);
|
||||||
|
begin
|
||||||
|
TJvDBGrid(Sender).Canvas.Brush.Color:= $00B8C4C8; // RGB C8C4B8 - seda
|
||||||
|
if (Column.FieldName='colNazev1') then
|
||||||
|
TJvDBGrid(Sender).Canvas.Brush.Color:= $00C6FECF; // RGB CFFEC6 - svetle zelena
|
||||||
|
|
||||||
|
if (gdSelected in State) then
|
||||||
|
TJvDBGrid(Sender).Canvas.Font.Color:= clBlack;
|
||||||
|
|
||||||
|
TJvDBGrid(Sender).DefaultDrawColumnCell (Rect, DataCol, Column, State);
|
||||||
|
end;
|
||||||
|
|
||||||
|
end.
|
||||||
1500
_plgPlan/frmPlan.dfm
Normal file
1500
_plgPlan/frmPlan.dfm
Normal file
File diff suppressed because it is too large
Load Diff
1436
_plgPlan/frmPlan.pas
Normal file
1436
_plgPlan/frmPlan.pas
Normal file
File diff suppressed because it is too large
Load Diff
1101
_plgPlan/frmPlanPaletListy.dfm
Normal file
1101
_plgPlan/frmPlanPaletListy.dfm
Normal file
File diff suppressed because it is too large
Load Diff
312
_plgPlan/frmPlanPaletListy.pas
Normal file
312
_plgPlan/frmPlanPaletListy.pas
Normal file
@ -0,0 +1,312 @@
|
|||||||
|
unit frmPlanPaletListy;
|
||||||
|
|
||||||
|
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, Vcl.StdCtrls, ddPlugin_TLB;
|
||||||
|
|
||||||
|
type
|
||||||
|
TformPlanPaletListy = class(TForm)
|
||||||
|
GridPanel1: TGridPanel;
|
||||||
|
GridPanel2: TGridPanel;
|
||||||
|
GridPanel3: TGridPanel;
|
||||||
|
grdPL: TJvDBGrid;
|
||||||
|
GridPanel4: TGridPanel;
|
||||||
|
GridPanel5: TGridPanel;
|
||||||
|
pnlKATiskSarzeAno: TPanel;
|
||||||
|
pnlKATiskSarzeNe: TPanel;
|
||||||
|
rbKATiskSarzeAno: TRadioButton;
|
||||||
|
rbKATiskSarzeNe: TRadioButton;
|
||||||
|
pnlKATiskExpiraceAno: TPanel;
|
||||||
|
rbKATiskExpiraceAno: TRadioButton;
|
||||||
|
rbKATiskExpiraceNe: TRadioButton;
|
||||||
|
pnlKATiskExpiraceNe: TPanel;
|
||||||
|
btnKATisk: TButton;
|
||||||
|
Label1: TLabel;
|
||||||
|
Label2: TLabel;
|
||||||
|
Label3: TLabel;
|
||||||
|
Label4: TLabel;
|
||||||
|
lblPaPopis1: TLabel;
|
||||||
|
lblPaPopis2: TLabel;
|
||||||
|
btnTiskPA1: TButton;
|
||||||
|
btnTiskPA2: TButton;
|
||||||
|
GridPanel6: TGridPanel;
|
||||||
|
GridPanel7: TGridPanel;
|
||||||
|
GridPanel8: TGridPanel;
|
||||||
|
GridPanel9: TGridPanel;
|
||||||
|
Label5: TLabel;
|
||||||
|
Label6: TLabel;
|
||||||
|
edtZakazka: TEdit;
|
||||||
|
edtExtZakazka: TEdit;
|
||||||
|
Label7: TLabel;
|
||||||
|
edtNazev: TEdit;
|
||||||
|
Label8: TLabel;
|
||||||
|
Label9: TLabel;
|
||||||
|
Label10: TLabel;
|
||||||
|
Label11: TLabel;
|
||||||
|
edtBarvaStitku: TEdit;
|
||||||
|
edtStitkuNaA4: TEdit;
|
||||||
|
edtRegCis: TEdit;
|
||||||
|
edtSZ: TEdit;
|
||||||
|
GridPanel10: TGridPanel;
|
||||||
|
Button3: TButton;
|
||||||
|
GridPanel11: TGridPanel;
|
||||||
|
Label12: TLabel;
|
||||||
|
Label13: TLabel;
|
||||||
|
btnKonec: TButton;
|
||||||
|
procedure btnKonecClick (Sender: TObject);
|
||||||
|
procedure FormShow (Sender: TObject);
|
||||||
|
procedure rbKATiskSarzeAnoClick (Sender: TObject);
|
||||||
|
procedure rbKATiskSarzeNeClick (Sender: TObject);
|
||||||
|
procedure rbKATiskExpiraceAnoClick (Sender: TObject);
|
||||||
|
procedure rbKATiskExpiraceNeClick (Sender: TObject);
|
||||||
|
procedure pnlKATiskSarzeAnoClick (Sender: TObject);
|
||||||
|
procedure pnlKATiskSarzeNeClick (Sender: TObject);
|
||||||
|
procedure pnlKATiskExpiraceAnoClick (Sender: TObject);
|
||||||
|
procedure pnlKATiskExpiraceNeClick (Sender: TObject);
|
||||||
|
procedure grdPLCellClick (Column: TColumn);
|
||||||
|
procedure btnKATiskClick (Sender: TObject);
|
||||||
|
private
|
||||||
|
procedure BarvyTlacitekDleRB;
|
||||||
|
public
|
||||||
|
Helios: IHelios;
|
||||||
|
cisloZbo, nazev, cisloPrikazu: string;
|
||||||
|
idRadekAdvPL, idPrikaz: integer;
|
||||||
|
ksVKA: integer;
|
||||||
|
KAnaPal: integer;
|
||||||
|
end;
|
||||||
|
|
||||||
|
var
|
||||||
|
formPlanPaletListy: TformPlanPaletListy;
|
||||||
|
idKZ, selIdVCPrikaz: integer;
|
||||||
|
idStitekKA, idStitekPL, idPLList: integer;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
uses System.DateUtils, System.StrUtils, System.Math,
|
||||||
|
frmKmen, frmZavady, frmVyrobniTyden,
|
||||||
|
uUtils, datMod2, helUtils;
|
||||||
|
|
||||||
|
{$R *.dfm}
|
||||||
|
|
||||||
|
|
||||||
|
procedure TformPlanPaletListy.BarvyTlacitekDleRB;
|
||||||
|
begin
|
||||||
|
if (rbKATiskExpiraceAno.Checked) then
|
||||||
|
begin
|
||||||
|
pnlKATiskExpiraceAno.Color:= clMoneyGreen;
|
||||||
|
rbKATiskSarzeAno.Color:= clMoneyGreen;
|
||||||
|
end
|
||||||
|
else
|
||||||
|
begin
|
||||||
|
pnlKATiskExpiraceAno.Color:= clBtnFace;
|
||||||
|
rbKATiskSarzeAno.Color:= clBtnFace;
|
||||||
|
end;
|
||||||
|
|
||||||
|
if (rbKATiskExpiraceNe.Checked) then
|
||||||
|
begin
|
||||||
|
pnlKATiskExpiraceNe.Color:= $005B5BFF;
|
||||||
|
rbKATiskExpiraceNe.Color:= $005B5BFF;
|
||||||
|
end
|
||||||
|
else
|
||||||
|
begin
|
||||||
|
pnlKATiskExpiraceNe.Color:= clBtnFace;
|
||||||
|
rbKATiskExpiraceNe.Color:= clBtnFace;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
if (rbKATiskSarzeAno.Checked) then
|
||||||
|
begin
|
||||||
|
pnlKATiskSarzeAno.Color:= clMoneyGreen;
|
||||||
|
rbKATiskSarzeAno.Color:= clMoneyGreen;
|
||||||
|
end
|
||||||
|
else
|
||||||
|
begin
|
||||||
|
pnlKATiskSarzeAno.Color:= clBtnFace;
|
||||||
|
rbKATiskSarzeAno.Color:= clBtnFace;
|
||||||
|
end;
|
||||||
|
|
||||||
|
if (rbKATiskSarzeNe.Checked) then
|
||||||
|
begin
|
||||||
|
pnlKATiskSarzeNe.Color:= $005B5BFF;
|
||||||
|
rbKATiskSarzeNe.Color:= $005B5BFF;
|
||||||
|
end
|
||||||
|
else
|
||||||
|
begin
|
||||||
|
pnlKATiskSarzeNe.Color:= clBtnFace;
|
||||||
|
rbKATiskSarzeNe.Color:= clBtnFace;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TformPlanPaletListy.btnKATiskClick (Sender: TObject);
|
||||||
|
var lSQL: string;
|
||||||
|
begin
|
||||||
|
if (selIdVCPrikaz>0) then
|
||||||
|
begin
|
||||||
|
lSQL:= 'IF OBJECT_ID(N''tempdb..#TabParamTiskStitkuKA'', N''U'') IS NOT NULL INSERT #TabParamTiskStitkuKA (TiskSarze, TiskExpirace) SELECT '
|
||||||
|
+ IfThen(rbKATiskSarzeAno.Checked, '1', '0') + ', ' + IfThen(rbKATiskExpiraceAno.Checked, '1', '0');
|
||||||
|
Helios.ExecSQL (lSQL);
|
||||||
|
|
||||||
|
if (idStitekKA>0) then
|
||||||
|
Helios.PrintForm3 (datMod2.bidPalety, idStitekKA, 'hvw_Vyroba_Palety.IDVyrCisPrikaz=' + selIdVCPrikaz.ToString);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TformPlanPaletListy.btnKonecClick (Sender: TObject);
|
||||||
|
begin
|
||||||
|
Close;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TformPlanPaletListy.FormShow (Sender: TObject);
|
||||||
|
var lSQL, externiZak: string;
|
||||||
|
|
||||||
|
begin
|
||||||
|
selIdVCPrikaz:= 0;
|
||||||
|
idStitekKA:= 0;
|
||||||
|
idStitekPL:= 0;
|
||||||
|
idPLList:= 0;
|
||||||
|
|
||||||
|
|
||||||
|
lSQL:= 'DROP TABLE IF EXISTS #TabParamTiskStitkuKA' + CRLF + 'CREATE TABLE #TabParamTiskStitkuKA (ID INT IDENTITY(1,1) NOT NULL'
|
||||||
|
+ ', PocetKopii SMALLINT DEFAULT 1 NOT NULL, TiskSarze BIT DEFAULT 1 NOT NULL, TiskExpirace BIT DEFAULT 1 NOT NULL)';
|
||||||
|
Helios.ExecSQL (lSQL);
|
||||||
|
|
||||||
|
|
||||||
|
edtNazev.Text:= nazev;
|
||||||
|
if (cisloZbo<>'') then
|
||||||
|
begin
|
||||||
|
edtSZ.Text:= LeftStr(cisloZbo,3);
|
||||||
|
edtRegCis.Text:= MidStr(cisloZbo, 5, 30);
|
||||||
|
end;
|
||||||
|
edtZakazka.Text:= cisloPrikazu;
|
||||||
|
|
||||||
|
externiZak:= '';
|
||||||
|
if (idPrikaz>0) then
|
||||||
|
begin
|
||||||
|
dm2.PlanPalListyNactiSarzePrikazu (idPrikaz, ksVKA, externiZak);
|
||||||
|
idKZ:= helUtils.getHeliosIntVal (Helios, 0, 'SELECT IDTabKmen FROM ' + tblPrikaz + ' WHERE ID=' + idPrikaz.ToString);
|
||||||
|
if (idKZ>0) then
|
||||||
|
begin
|
||||||
|
with Helios.OpenSQL('SELECT * FROM ' + tblKZ + ' WHERE ID=' + idKZ.ToString) do
|
||||||
|
begin
|
||||||
|
end;
|
||||||
|
with Helios.OpenSQL('SELECT * FROM ' + tblKZe + ' WHERE ID=' + idKZ.ToString) do
|
||||||
|
begin
|
||||||
|
edtBarvaStitku.Text:= VarToStr(FieldByNameValues('_ASOL_BarvaStitku'));
|
||||||
|
edtStitkuNaA4.Text:= VarToStr(FieldByNameValues('_ASOL_PocetA4'));
|
||||||
|
|
||||||
|
// KA stitek
|
||||||
|
if not(TryStrToInt (VarToStr(FieldByNameValues('_KL')), idStitekKA)) then
|
||||||
|
idStitekKA:= 0;
|
||||||
|
// PL stitek
|
||||||
|
if not(TryStrToInt (VarToStr(FieldByNameValues('_PalStitek')), idStitekPL)) then
|
||||||
|
idStitekPL:= 0;
|
||||||
|
// PL list
|
||||||
|
if not(TryStrToInt (VarToStr(FieldByNameValues('_PLKK')), idPLList)) then
|
||||||
|
idPLList:= 0;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
if (externiZak<>'') then
|
||||||
|
edtExtZakazka.Text:= externiZak;
|
||||||
|
|
||||||
|
// edtStitkuNaA4.Text:=
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TformPlanPaletListy.grdPLCellClick (Column: TColumn);
|
||||||
|
begin
|
||||||
|
selIdVCPrikaz:= grdPL.DataSource.DataSet.FieldByName('IDVCPrikaz').AsInteger;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TformPlanPaletListy.pnlKATiskExpiraceAnoClick (Sender: TObject);
|
||||||
|
begin
|
||||||
|
rbKATiskExpiraceAno.Checked:= not rbKATiskExpiraceAno.Checked;
|
||||||
|
rbKATiskExpiraceNe.Checked:= not rbKATiskExpiraceNe.Checked;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TformPlanPaletListy.pnlKATiskExpiraceNeClick (Sender: TObject);
|
||||||
|
begin
|
||||||
|
rbKATiskExpiraceAno.Checked:= not rbKATiskExpiraceAno.Checked;
|
||||||
|
rbKATiskExpiraceNe.Checked:= not rbKATiskExpiraceNe.Checked;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TformPlanPaletListy.pnlKATiskSarzeAnoClick (Sender: TObject);
|
||||||
|
begin
|
||||||
|
rbKATiskSarzeAno.Checked:= not rbKATiskSarzeAno.Checked;
|
||||||
|
rbKATiskSarzeNe.Checked:= not rbKATiskSarzeNe.Checked;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TformPlanPaletListy.pnlKATiskSarzeNeClick (Sender: TObject);
|
||||||
|
begin
|
||||||
|
rbKATiskSarzeAno.Checked:= not rbKATiskSarzeAno.Checked;
|
||||||
|
rbKATiskSarzeNe.Checked:= not rbKATiskSarzeNe.Checked;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TformPlanPaletListy.rbKATiskExpiraceAnoClick (Sender: TObject);
|
||||||
|
begin
|
||||||
|
if (rbKATiskExpiraceAno.Checked) then
|
||||||
|
rbKATiskExpiraceNe.Checked:= false;
|
||||||
|
BarvyTlacitekDleRB;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TformPlanPaletListy.rbKATiskExpiraceNeClick (Sender: TObject);
|
||||||
|
begin
|
||||||
|
if (rbKATiskExpiraceNe.Checked) then
|
||||||
|
rbKATiskExpiraceAno.Checked:= false;
|
||||||
|
BarvyTlacitekDleRB;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TformPlanPaletListy.rbKATiskSarzeAnoClick (Sender: TObject);
|
||||||
|
begin
|
||||||
|
if (rbKATiskSarzeAno.Checked) then
|
||||||
|
rbKATiskSarzeNe.Checked:= false;
|
||||||
|
BarvyTlacitekDleRB;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TformPlanPaletListy.rbKATiskSarzeNeClick (Sender: TObject);
|
||||||
|
begin
|
||||||
|
if (rbKATiskSarzeNe.Checked) then
|
||||||
|
rbKATiskSarzeAno.Checked:= false;
|
||||||
|
BarvyTlacitekDleRB;
|
||||||
|
end;
|
||||||
|
|
||||||
|
end.
|
||||||
1245
_plgPlan/frmRamcovyPlan.dfm
Normal file
1245
_plgPlan/frmRamcovyPlan.dfm
Normal file
File diff suppressed because it is too large
Load Diff
63
_plgPlan/frmRamcovyPlan.pas
Normal file
63
_plgPlan/frmRamcovyPlan.pas
Normal file
@ -0,0 +1,63 @@
|
|||||||
|
unit frmRamcovyPlan;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
|
||||||
|
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.ExtCtrls, Vcl.StdCtrls, RzCmboBx, Vcl.Buttons, Data.DB,
|
||||||
|
Vcl.Grids, Vcl.DBGrids, JvExDBGrids, JvDBGrid, ddPlugin_TLB;
|
||||||
|
|
||||||
|
type
|
||||||
|
TformRamcovyPlan = class(TForm)
|
||||||
|
GridPanel1: TGridPanel;
|
||||||
|
GridPanel2: TGridPanel;
|
||||||
|
GridPanel3: TGridPanel;
|
||||||
|
Label1: TLabel;
|
||||||
|
cbAkce: TRzComboBox;
|
||||||
|
GridPanel4: TGridPanel;
|
||||||
|
Label2: TLabel;
|
||||||
|
cbSezona: TRzComboBox;
|
||||||
|
GridPanel5: TGridPanel;
|
||||||
|
Label3: TLabel;
|
||||||
|
BitBtn1: TBitBtn;
|
||||||
|
grdAlternativy: TJvDBGrid;
|
||||||
|
JvDBGrid1: TJvDBGrid;
|
||||||
|
edtKalibr: TEdit;
|
||||||
|
edtDelkaJm: TEdit;
|
||||||
|
edtStroj: TEdit;
|
||||||
|
Label4: TLabel;
|
||||||
|
GridPanel6: TGridPanel;
|
||||||
|
edtSK: TEdit;
|
||||||
|
edtRegCis: TEdit;
|
||||||
|
edtNazev1: TEdit;
|
||||||
|
edtMJ: TEdit;
|
||||||
|
edtKs: TEdit;
|
||||||
|
edtKA: TEdit;
|
||||||
|
edtOdber: TEdit;
|
||||||
|
edtM01: TEdit;
|
||||||
|
edtM02: TEdit;
|
||||||
|
edtM03: TEdit;
|
||||||
|
edtM04: TEdit;
|
||||||
|
edtM05: TEdit;
|
||||||
|
edtM06: TEdit;
|
||||||
|
edtM07: TEdit;
|
||||||
|
edtM08: TEdit;
|
||||||
|
edtM09: TEdit;
|
||||||
|
edtM10: TEdit;
|
||||||
|
edtM11: TEdit;
|
||||||
|
edtM12: TEdit;
|
||||||
|
private
|
||||||
|
public
|
||||||
|
Helios: IHelios;
|
||||||
|
end;
|
||||||
|
|
||||||
|
var
|
||||||
|
formRamcovyPlan: TformRamcovyPlan;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
uses System.StrUtils,
|
||||||
|
datMod2, helUtils;
|
||||||
|
|
||||||
|
{$R *.dfm}
|
||||||
|
|
||||||
|
end.
|
||||||
93
_plgPlan/frmVyrobniTyden.dfm
Normal file
93
_plgPlan/frmVyrobniTyden.dfm
Normal file
@ -0,0 +1,93 @@
|
|||||||
|
object formVyberTydne: TformVyberTydne
|
||||||
|
Left = 0
|
||||||
|
Top = 0
|
||||||
|
BorderIcons = [biSystemMenu]
|
||||||
|
BorderStyle = bsSingle
|
||||||
|
Caption = ' V'#253'robn'#237' t'#253'den'
|
||||||
|
ClientHeight = 473
|
||||||
|
ClientWidth = 311
|
||||||
|
Color = clBtnFace
|
||||||
|
Font.Charset = DEFAULT_CHARSET
|
||||||
|
Font.Color = clWindowText
|
||||||
|
Font.Height = -16
|
||||||
|
Font.Name = 'Segoe UI'
|
||||||
|
Font.Style = []
|
||||||
|
Position = poOwnerFormCenter
|
||||||
|
OnClose = FormClose
|
||||||
|
OnShow = FormShow
|
||||||
|
TextHeight = 21
|
||||||
|
object grdTydny: TJvDBGrid
|
||||||
|
Left = 4
|
||||||
|
Top = 51
|
||||||
|
Width = 303
|
||||||
|
Height = 395
|
||||||
|
DataSource = dm2.dsVyrobniTyden
|
||||||
|
Options = [dgTitles, dgIndicator, dgColumnResize, dgColLines, dgRowLines, dgTabs, dgRowSelect, dgConfirmDelete, dgCancelOnExit, dgTitleHotTrack]
|
||||||
|
TabOrder = 0
|
||||||
|
TitleFont.Charset = DEFAULT_CHARSET
|
||||||
|
TitleFont.Color = clWindowText
|
||||||
|
TitleFont.Height = -16
|
||||||
|
TitleFont.Name = 'Segoe UI'
|
||||||
|
TitleFont.Style = []
|
||||||
|
OnDblClick = grdTydnyDblClick
|
||||||
|
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 = 'colRok'
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Alignment = taCenter
|
||||||
|
Color = 13041359
|
||||||
|
Expanded = False
|
||||||
|
FieldName = 'colTyden'
|
||||||
|
Title.Alignment = taCenter
|
||||||
|
Title.Caption = 'T'#253'den'
|
||||||
|
Width = 59
|
||||||
|
Visible = True
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Alignment = taCenter
|
||||||
|
Expanded = False
|
||||||
|
FieldName = 'colDatumOd'
|
||||||
|
Title.Alignment = taCenter
|
||||||
|
Title.Caption = 'Datum od'
|
||||||
|
Width = 100
|
||||||
|
Visible = True
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Alignment = taCenter
|
||||||
|
Expanded = False
|
||||||
|
FieldName = 'colDatumDo'
|
||||||
|
Title.Alignment = taCenter
|
||||||
|
Title.Caption = 'Datum do'
|
||||||
|
Width = 107
|
||||||
|
Visible = True
|
||||||
|
end>
|
||||||
|
end
|
||||||
|
object cbRok: TComboBox
|
||||||
|
Left = 8
|
||||||
|
Top = 12
|
||||||
|
Width = 99
|
||||||
|
Height = 29
|
||||||
|
Style = csDropDownList
|
||||||
|
TabOrder = 1
|
||||||
|
OnChange = cbRokChange
|
||||||
|
end
|
||||||
|
object btnDnes: TButton
|
||||||
|
Left = 196
|
||||||
|
Top = 8
|
||||||
|
Width = 105
|
||||||
|
Height = 36
|
||||||
|
Caption = 'Dnes'
|
||||||
|
TabOrder = 2
|
||||||
|
OnClick = btnDnesClick
|
||||||
|
end
|
||||||
|
end
|
||||||
118
_plgPlan/frmVyrobniTyden.pas
Normal file
118
_plgPlan/frmVyrobniTyden.pas
Normal file
@ -0,0 +1,118 @@
|
|||||||
|
unit frmVyrobniTyden;
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
|
||||||
|
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Data.DB, Vcl.Grids, Vcl.DBGrids, JvExDBGrids, JvDBGrid,
|
||||||
|
Vcl.StdCtrls;
|
||||||
|
|
||||||
|
type
|
||||||
|
TformVyberTydne = class(TForm)
|
||||||
|
grdTydny: TJvDBGrid;
|
||||||
|
cbRok: TComboBox;
|
||||||
|
btnDnes: TButton;
|
||||||
|
procedure FormShow (Sender: TObject);
|
||||||
|
procedure FormClose(Sender: TObject; var Action: TCloseAction);
|
||||||
|
procedure grdTydnyDblClick(Sender: TObject);
|
||||||
|
procedure cbRokChange(Sender: TObject);
|
||||||
|
procedure btnDnesClick(Sender: TObject);
|
||||||
|
private
|
||||||
|
procedure NactiKalendar (rok: integer; tyden: byte=0; autoIns: boolean=false);
|
||||||
|
public
|
||||||
|
rok, tyden: integer;
|
||||||
|
datOd, datDo: string;
|
||||||
|
retVal: integer;
|
||||||
|
end;
|
||||||
|
|
||||||
|
var
|
||||||
|
formVyberTydne: TformVyberTydne;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
uses System.DateUtils,
|
||||||
|
helUtils, datMod2;
|
||||||
|
{$R *.dfm}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TformVyberTydne.btnDnesClick (Sender: TObject);
|
||||||
|
var t: integer;
|
||||||
|
begin
|
||||||
|
t:= System.DateUtils.WeekOf(Now);
|
||||||
|
grdTydny.DataSource.DataSet.Locate('colRok;colTyden', VarArrayOf([cbRok.Text, t]), []);
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TformVyberTydne.cbRokChange (Sender: TObject);
|
||||||
|
begin
|
||||||
|
NactiKalendar (cbRok.Text.ToInteger);
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TformVyberTydne.FormClose (Sender: TObject; var Action: TCloseAction);
|
||||||
|
begin
|
||||||
|
Action:= TCloseAction.caFree;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TformVyberTydne.NactiKalendar (rok: Integer; tyden: byte=0; autoIns: boolean=false);
|
||||||
|
var rNow, m: integer;
|
||||||
|
begin
|
||||||
|
retVal:= 0;
|
||||||
|
datOd:= '';
|
||||||
|
datDo:= '';
|
||||||
|
|
||||||
|
rNow:= YearOf(Now);
|
||||||
|
if (autoIns) then
|
||||||
|
begin
|
||||||
|
cbRok.Items.Clear;
|
||||||
|
cbRok.Items.Add((rok-1).ToString);
|
||||||
|
cbRok.Items.Add(rok.ToString);
|
||||||
|
cbRok.Items.Add((rok+1).ToString);
|
||||||
|
cbRok.ItemIndex:= cbRok.Items.IndexOf(rok.ToString);
|
||||||
|
end;
|
||||||
|
|
||||||
|
if (Assigned(datMod2.dm2)) then
|
||||||
|
begin
|
||||||
|
if (dm2.vtVyrobniTyden<>nil) then
|
||||||
|
dm2.NactiVyrobniTydny (rok);
|
||||||
|
|
||||||
|
if (rok=rNow) then
|
||||||
|
m:= WeekOf(Now)
|
||||||
|
else
|
||||||
|
m:= System.DateUtils.WeeksInAYear (rok);
|
||||||
|
|
||||||
|
if (tyden>0) then
|
||||||
|
m:= tyden;
|
||||||
|
dm2.vtVyrobniTyden.Locate ('colRok;colTyden', VarArrayOf ([rok, m]), []);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TformVyberTydne.FormShow (Sender: TObject);
|
||||||
|
begin
|
||||||
|
NactiKalendar (YearOf(Now), tyden, true);
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TformVyberTydne.grdTydnyDblClick (Sender: TObject);
|
||||||
|
begin
|
||||||
|
retVal:= 10;
|
||||||
|
tyden:= dm2.vtVyrobniTyden.FieldByName('colTyden').AsInteger;
|
||||||
|
rok:= dm2.vtVyrobniTyden.FieldByName('colRok').AsInteger;
|
||||||
|
datOd:= dm2.vtVyrobniTyden.FieldByName('colDatumOd').AsString;
|
||||||
|
datDo:= dm2.vtVyrobniTyden.FieldByName('colDatumDo').AsString;
|
||||||
|
Close;
|
||||||
|
end;
|
||||||
|
|
||||||
|
end.
|
||||||
113
_plgPlan/frmZavady.dfm
Normal file
113
_plgPlan/frmZavady.dfm
Normal file
@ -0,0 +1,113 @@
|
|||||||
|
object formZavady: TformZavady
|
||||||
|
Left = 0
|
||||||
|
Top = 0
|
||||||
|
BorderIcons = [biSystemMenu]
|
||||||
|
Caption = ' Vyberte '#250'dr'#382'bu'
|
||||||
|
ClientHeight = 470
|
||||||
|
ClientWidth = 482
|
||||||
|
Color = clBtnFace
|
||||||
|
Font.Charset = DEFAULT_CHARSET
|
||||||
|
Font.Color = clWindowText
|
||||||
|
Font.Height = -16
|
||||||
|
Font.Name = 'Segoe UI'
|
||||||
|
Font.Style = []
|
||||||
|
Position = poOwnerFormCenter
|
||||||
|
OnClose = FormClose
|
||||||
|
OnShow = FormShow
|
||||||
|
TextHeight = 21
|
||||||
|
object grd1: TGridPanel
|
||||||
|
Left = 0
|
||||||
|
Top = 0
|
||||||
|
Width = 482
|
||||||
|
Height = 470
|
||||||
|
Align = alClient
|
||||||
|
Caption = 'grd1'
|
||||||
|
ColumnCollection = <
|
||||||
|
item
|
||||||
|
Value = 100.000000000000000000
|
||||||
|
end>
|
||||||
|
ControlCollection = <
|
||||||
|
item
|
||||||
|
Column = 0
|
||||||
|
Control = Panel1
|
||||||
|
Row = 1
|
||||||
|
end>
|
||||||
|
RowCollection = <
|
||||||
|
item
|
||||||
|
Value = 5.000000000000000000
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Value = 95.000000000000000000
|
||||||
|
end>
|
||||||
|
TabOrder = 0
|
||||||
|
object Panel1: TPanel
|
||||||
|
Left = 1
|
||||||
|
Top = 24
|
||||||
|
Width = 480
|
||||||
|
Height = 445
|
||||||
|
Align = alClient
|
||||||
|
Anchors = []
|
||||||
|
TabOrder = 0
|
||||||
|
object grdZavady: TJvDBGrid
|
||||||
|
Left = 1
|
||||||
|
Top = 1
|
||||||
|
Width = 478
|
||||||
|
Height = 443
|
||||||
|
Align = alClient
|
||||||
|
DataSource = dm2.dsZavady
|
||||||
|
DrawingStyle = gdsClassic
|
||||||
|
Options = [dgTitles, dgIndicator, dgColLines, dgRowLines, dgTabs, dgRowSelect, dgConfirmDelete, dgCancelOnExit, dgTitleClick, dgTitleHotTrack]
|
||||||
|
ReadOnly = True
|
||||||
|
TabOrder = 0
|
||||||
|
TitleFont.Charset = DEFAULT_CHARSET
|
||||||
|
TitleFont.Color = clWindowText
|
||||||
|
TitleFont.Height = -16
|
||||||
|
TitleFont.Name = 'Segoe UI'
|
||||||
|
TitleFont.Style = []
|
||||||
|
OnDrawColumnCell = grdZavadyDrawColumnCell
|
||||||
|
OnDblClick = grdZavadyDblClick
|
||||||
|
ScrollBars = ssVertical
|
||||||
|
SelectColumnsDialogStrings.Caption = 'Vyberte sloupce'
|
||||||
|
SelectColumnsDialogStrings.OK = '&OK'
|
||||||
|
SelectColumnsDialogStrings.NoSelectionWarning = 'Mus'#237' b'#253't viditeln'#253' aspo'#328' jeden sloupec !'
|
||||||
|
CanDelete = False
|
||||||
|
EditControls = <>
|
||||||
|
RowsHeight = 25
|
||||||
|
TitleRowHeight = 25
|
||||||
|
Columns = <
|
||||||
|
item
|
||||||
|
Expanded = False
|
||||||
|
FieldName = 'colID'
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Expanded = False
|
||||||
|
FieldName = 'colTyp'
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Alignment = taCenter
|
||||||
|
Expanded = False
|
||||||
|
FieldName = 'colKod'
|
||||||
|
Title.Alignment = taCenter
|
||||||
|
Title.Caption = 'Kod'
|
||||||
|
Width = 98
|
||||||
|
Visible = True
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Expanded = False
|
||||||
|
FieldName = 'colNazev'
|
||||||
|
Title.Alignment = taCenter
|
||||||
|
Title.Caption = 'N'#225'zev'
|
||||||
|
Width = 352
|
||||||
|
Visible = True
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Expanded = False
|
||||||
|
FieldName = 'colIDPrikaz'
|
||||||
|
Visible = False
|
||||||
|
end>
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
124
_plgPlan/frmZavady.pas
Normal file
124
_plgPlan/frmZavady.pas
Normal file
@ -0,0 +1,124 @@
|
|||||||
|
unit frmZavady;
|
||||||
|
|
||||||
|
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, ddPlugin_TLB, Vcl.ComCtrls, JvExComCtrls, JvHeaderControl, Vcl.StdCtrls, Vcl.Buttons,
|
||||||
|
Vcl.Mask, RzEdit;
|
||||||
|
|
||||||
|
type
|
||||||
|
TformZavady = class(TForm)
|
||||||
|
Panel1: TPanel;
|
||||||
|
grdZavady: TJvDBGrid;
|
||||||
|
grd1: TGridPanel;
|
||||||
|
procedure FormShow (Sender: TObject);
|
||||||
|
procedure grdZavadyDblClick (Sender: TObject);
|
||||||
|
procedure FormClose (Sender: TObject; var Action: TCloseAction);
|
||||||
|
procedure grdZavadyDrawColumnCell (Sender: TObject; const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState);
|
||||||
|
private
|
||||||
|
public
|
||||||
|
Helios: IHelios;
|
||||||
|
retVal: integer;
|
||||||
|
idPrP: integer;
|
||||||
|
nazev: string;
|
||||||
|
kodModif: string;
|
||||||
|
end;
|
||||||
|
|
||||||
|
var
|
||||||
|
formZavady: TformZavady;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
uses System.StrUtils,
|
||||||
|
helUtils, datMod2;
|
||||||
|
|
||||||
|
{$R *.dfm}
|
||||||
|
|
||||||
|
procedure TformZavady.FormClose (Sender: TObject; var Action: TCloseAction);
|
||||||
|
begin
|
||||||
|
Action:= TCloseAction.caFree;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TformZavady.FormShow (Sender: TObject);
|
||||||
|
var pomHandle: THandle;
|
||||||
|
begin
|
||||||
|
retVal:= 0;
|
||||||
|
|
||||||
|
|
||||||
|
pomHandle:= THandle(Helios.MainApplicationHandle);
|
||||||
|
if (pomHandle<>Application.Handle) then
|
||||||
|
Application.Handle:= pomHandle;
|
||||||
|
|
||||||
|
pomHandle:= THandle(Helios.MainApplicationIconHandle);
|
||||||
|
if (pomHandle<>Application.Icon.Handle) then
|
||||||
|
Application.Icon.Handle:= pomHandle;
|
||||||
|
|
||||||
|
with Application.DefaultFont do
|
||||||
|
begin
|
||||||
|
Name:= Helios.Font;
|
||||||
|
Height:= Helios.FontHeight;
|
||||||
|
Charset:= Helios.Charset;
|
||||||
|
|
||||||
|
Screen.MenuFont.Charset:= Charset;
|
||||||
|
Screen.MenuFont.Name:= Name;
|
||||||
|
Screen.MenuFont.Height:= Height;
|
||||||
|
end;
|
||||||
|
|
||||||
|
self.Font:= Application.DefaultFont;
|
||||||
|
|
||||||
|
|
||||||
|
if not(dm2.vtZavady.Active) then
|
||||||
|
dm2.vtZavady.Open;
|
||||||
|
|
||||||
|
dm2.vtZavady.EmptyDataSet;
|
||||||
|
dm2.vtZavady.Filtered:= false;
|
||||||
|
|
||||||
|
grdZavady.LockDrawing;
|
||||||
|
dm2.NactiUdrzbu (kodModif, 'Typ=3'); // prostoj stroje
|
||||||
|
dm2.vtZavady.First;
|
||||||
|
grdZavady.UnlockDrawing;
|
||||||
|
|
||||||
|
helUtils.waitEnd;
|
||||||
|
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TformZavady.grdZavadyDblClick (Sender: TObject);
|
||||||
|
var i, zm: integer;
|
||||||
|
sz,rc,naz: string;
|
||||||
|
begin
|
||||||
|
i:= dm2.vtZavady.FieldByName('colID').AsInteger;
|
||||||
|
naz:= dm2.vtZavady.FieldByName('colNazev').AsString;
|
||||||
|
|
||||||
|
if (Helios.YesNo('Chcete vybrat ' + #1 + naz + #1 + ' ?', true)) then
|
||||||
|
begin
|
||||||
|
idPrP:= i;
|
||||||
|
nazev:= naz;
|
||||||
|
retVal:= 10;
|
||||||
|
Close;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure TformZavady.grdZavadyDrawColumnCell (Sender: TObject; const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState);
|
||||||
|
begin
|
||||||
|
if (gdSelected in State) then
|
||||||
|
grdZavady.Canvas.Font.Color:= clBlack;
|
||||||
|
|
||||||
|
grdZavady.Canvas.Brush.Color:= $00B8C4C8; // RGB C8C4B8 - seda
|
||||||
|
if (Assigned(Column.Field) and (SameText(Column.FieldName, 'colNazev'))) then
|
||||||
|
// if (Column.FieldName='colNazev') then
|
||||||
|
grdZavady.Canvas.Brush.Color:= $00C6FECF; // RGB CFFEC6 - svetle zelena
|
||||||
|
|
||||||
|
|
||||||
|
grdZavady.DefaultDrawColumnCell (Rect, DataCol, Column, State);
|
||||||
|
end;
|
||||||
|
|
||||||
|
end.
|
||||||
4
_plgPlan/iConsts.inc
Normal file
4
_plgPlan/iConsts.inc
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
const
|
||||||
|
CRLF = #13#10;
|
||||||
|
tblPalety = '[dbo].[_TabVyroba_Palety]';
|
||||||
|
tblPlanRozpad = '[dbo].[_TabVyroba_PlanRozpad]';
|
||||||
21
_plgPlan/tbl__TabVyrobaPlanRozpad.sql
Normal file
21
_plgPlan/tbl__TabVyrobaPlanRozpad.sql
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
IF OBJECT_ID(N'dbo._TabVyroba_PlanRozpad', N'U') IS NULL
|
||||||
|
CREATE TABLE dbo._TabVyroba_PlanRozpad (
|
||||||
|
ID int IDENTITY(1, 1) NOT NULL,
|
||||||
|
Datum DATETIME NOT NULL,
|
||||||
|
CasOd AS DATEPART(hour, Datum),
|
||||||
|
Datum_D AS DATEPART(day, Datum),
|
||||||
|
Datum_M AS DATEPART(month ,Datum),
|
||||||
|
Datum_Y AS DATEPART(year, Datum),
|
||||||
|
Datum_W AS DATEPART(week, Datum),
|
||||||
|
Datum_V AS DATEPART(iso_week, Datum),
|
||||||
|
Datum_Y_ISO AS DATEPART(year, DATEADD(day, 26-DATEPART(iso_week, Datum), Datum)),
|
||||||
|
IDAdvKPDavka int NULL,
|
||||||
|
IDPrikaz int NULL,
|
||||||
|
DatPorizeni DATETIME NOT NULL DEFAULT GETDATE(),
|
||||||
|
Autor NVARCHAR(80) NOT NULL DEFAULT SUSER_SNAME(),
|
||||||
|
CONSTRAINT PK__TabVyroba_PlanRozpad PRIMARY KEY CLUSTERED (ID DESC) WITH (PAD_INDEX = OFF, IGNORE_DUP_KEY = OFF, STATISTICS_NORECOMPUTE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
|
)
|
||||||
|
|
||||||
|
DROP INDEX IF EXISTS EI__TabVyroba_PlanRozpad_Datum ON dbo._TabVyroba_PlanRozpad
|
||||||
|
CREATE NONCLUSTERED INDEX EI__TabVyroba_PlanRozpad_Datum ON dbo._TabVyroba_PlanRozpad (Datum)
|
||||||
|
WITH ( PAD_INDEX = OFF, DROP_EXISTING = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
23
_plgPlan/trg__TabAdvKPDavky_HDC_D.sql
Normal file
23
_plgPlan/trg__TabAdvKPDavky_HDC_D.sql
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
-- dbo.ET_TabAdvKPDavky_HDC_D
|
||||||
|
CREATE TRIGGER dbo.ET_TabAdvKPDavky_HDC_D ON dbo.TabAdvKPDavky
|
||||||
|
WITH EXECUTE AS CALLER
|
||||||
|
FOR DELETE
|
||||||
|
AS
|
||||||
|
BEGIN
|
||||||
|
SET NOCOUNT ON
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@id INT
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- cisteni
|
||||||
|
IF EXISTS (SELECT 1 FROM dbo.TabAdvKPDavky)
|
||||||
|
BEGIN
|
||||||
|
SELECT @id=MAX(ID) FROM dbo.TabAdvKPDavky
|
||||||
|
DBCC CHECKIDENT (TabAdvKPDavky, RESEED, @id)
|
||||||
|
END
|
||||||
|
|
||||||
|
END
|
||||||
23
_plgPlan/trg__TabPlan_HDC_D.sql
Normal file
23
_plgPlan/trg__TabPlan_HDC_D.sql
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
-- dbo.ET_TabPlan_HDC_D
|
||||||
|
CREATE TRIGGER dbo.ET_TabPlan_HDC_D ON dbo.TabPlan
|
||||||
|
WITH EXECUTE AS CALLER
|
||||||
|
FOR DELETE
|
||||||
|
AS
|
||||||
|
BEGIN
|
||||||
|
SET NOCOUNT ON
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@id INT
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- cisteni
|
||||||
|
IF EXISTS (SELECT 1 FROM dbo.TabPlan)
|
||||||
|
BEGIN
|
||||||
|
SELECT @id=MAX(ID) FROM dbo.TabPlan
|
||||||
|
DBCC CHECKIDENT (TabPlan, RESEED, @id)
|
||||||
|
END
|
||||||
|
|
||||||
|
END
|
||||||
549
_sql/2UT/2UT.sql
Normal file
549
_sql/2UT/2UT.sql
Normal file
@ -0,0 +1,549 @@
|
|||||||
|
SET NOCOUNT ON
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@iTemp INT,
|
||||||
|
@sql NVARCHAR(3000),
|
||||||
|
@idTab INT,
|
||||||
|
@sysTabName NVARCHAR(128),
|
||||||
|
@hvwName NVARCHAR(128),
|
||||||
|
@idCol INT,
|
||||||
|
@trigger NVARCHAR(max)
|
||||||
|
|
||||||
|
|
||||||
|
SET @sysTabName = '_TabVyroba_Palety'
|
||||||
|
SET @hvwName = 'hvw_Vyroba_Palety'
|
||||||
|
|
||||||
|
|
||||||
|
SET @iTemp = ISNULL( (SELECT MAX(ID) FROM dbo.TabDefTabUzivTabulka), 1)
|
||||||
|
DBCC CHECKIDENT (TabDefTabUzivTabulka, RESEED, @iTemp)
|
||||||
|
SET @iTemp = ISNULL( (SELECT MAX(ID) FROM dbo.TabDefTabUzivAtributy), 1)
|
||||||
|
DBCC CHECKIDENT (TabDefTabUzivAtributy, RESEED, @iTemp)
|
||||||
|
SET @iTemp = ISNULL( (SELECT MAX(ID) FROM dbo.TabDefTabUzivConstraint), 1)
|
||||||
|
DBCC CHECKIDENT (TabDefTabUzivConstraint, RESEED, @iTemp)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- tabulka
|
||||||
|
SET @idTab = (SELECT ID FROM dbo.TabDefTabUzivTabulka WHERE NazevTabulky=@sysTabName)
|
||||||
|
IF (@idTab IS NULL)
|
||||||
|
BEGIN
|
||||||
|
INSERT dbo.TabDefTabUzivTabulka (Skupina, Popis, NazevTabulky, NazevPrehledu)
|
||||||
|
SELECT N'', 'Vyroben<EFBFBD> palety', @sysTabName, @hvwName
|
||||||
|
SET @idTab = SCOPE_IDENTITY()
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- sloupce
|
||||||
|
IF (@idTab IS NOT NULL)
|
||||||
|
BEGIN
|
||||||
|
/*
|
||||||
|
INSERT dbo.TabDefTabUzivAtributy
|
||||||
|
(IDDefinice, Poradi, DTUHeliosAttr, DTUAtrJmenoSys, DTUAtrJmenoVerejne, DTUAtrTyp, DTUAtrDelka, DTUAtrNull, DTUAtrServerDefault, DTUAtrDruh,
|
||||||
|
DTUAtrPocitany, DTUAtrKonverze, DTUAtrSirkaSloupce, DTUAtrMaska, DTUAtrVerejny, DTUAtrVyzadovany, DTUAtrSumovat, DTUAtrTisk, DTUEditovatelny,
|
||||||
|
DTUReadOnly, DTUHromadneZmeny, EdAtrEditor, EdAtrPoradi, EdAtrHlidat, EdAtrSkrytyPrenos, EdAtrInfoAtr1, EdAtrInfoAtr2, EdAtrPrenosDPSN, EdAtrPrenosIDFiltr, EdAtrPodminka)
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'Typ')
|
||||||
|
IF (@idCol IS NULL)
|
||||||
|
INSERT dbo.TabDefTabUzivAtributy
|
||||||
|
(IDDefinice, Poradi, DTUAtrJmenoSys, DTUAtrJmenoVerejne, DTUAtrTyp, DTUAtrDelka, DTUAtrNull, DTUAtrServerDefault, DTUAtrDruh,
|
||||||
|
DTUAtrPocitany, DTUAtrErrTextStr, DTUAtrKonverze, DTUAtrSirkaSloupce, DTUAtrMaska, DTUAtrVerejny, DTUAtrVyzadovany, DTUAtrSumovat, DTUAtrTisk, DTUEditovatelny,
|
||||||
|
DTUReadOnly, DTUHromadneZmeny, EdAtrPrenosDPSN)
|
||||||
|
SELECT @idTab, 1, N'Typ', N'Typ', 2, 0, 0, N'''0''', 0,
|
||||||
|
NULL, NULL, N'0=nedefinovano
|
||||||
|
1=vyrobek pekarna (vlastni)
|
||||||
|
2=vyrobek pekarna (externi)
|
||||||
|
3=material
|
||||||
|
4=zbozi
|
||||||
|
5=nestandard', 20, N'', 1, 1, 0, 1, 0,
|
||||||
|
0, 0, N''
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'Typ')
|
||||||
|
BEGIN
|
||||||
|
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD Typ TINYINT NOT NULL DEFAULT 0'
|
||||||
|
EXEC sp_executesql @sql
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'CisloPalety')
|
||||||
|
IF (@idCol IS NULL)
|
||||||
|
INSERT dbo.TabDefTabUzivAtributy
|
||||||
|
(IDDefinice, Poradi, DTUAtrJmenoSys, DTUAtrJmenoVerejne, DTUAtrTyp, DTUAtrDelka, DTUAtrNull, DTUAtrServerDefault, DTUAtrDruh,
|
||||||
|
DTUAtrPocitany, DTUAtrErrTextStr, DTUAtrKonverze, DTUAtrSirkaSloupce, DTUAtrMaska, DTUAtrVerejny, DTUAtrVyzadovany, DTUAtrSumovat, DTUAtrTisk, DTUEditovatelny,
|
||||||
|
DTUReadOnly, DTUHromadneZmeny, EdAtrPrenosDPSN)
|
||||||
|
SELECT @idTab, 2, N'CisloPalety', N'Ozna<EFBFBD>en<EFBFBD>/<2F><>slo palety', 6, 50, 0, N'', 0,
|
||||||
|
NULL, NULL, NULL, 20, N'', 1, 1, 0, 1, 0,
|
||||||
|
0, 0, N''
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'CisloPalety')
|
||||||
|
BEGIN
|
||||||
|
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD CisloPalety NVARCHAR(50) NOT NULL'
|
||||||
|
EXEC sp_executesql @sql
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'Sarze')
|
||||||
|
IF (@idCol IS NULL)
|
||||||
|
INSERT dbo.TabDefTabUzivAtributy
|
||||||
|
(IDDefinice, Poradi, DTUAtrJmenoSys, DTUAtrJmenoVerejne, DTUAtrTyp, DTUAtrDelka, DTUAtrNull, DTUAtrServerDefault, DTUAtrDruh,
|
||||||
|
DTUAtrPocitany, DTUAtrErrTextStr, DTUAtrKonverze, DTUAtrSirkaSloupce, DTUAtrMaska, DTUAtrVerejny, DTUAtrVyzadovany, DTUAtrSumovat, DTUAtrTisk, DTUEditovatelny,
|
||||||
|
DTUReadOnly, DTUHromadneZmeny, EdAtrPrenosDPSN)
|
||||||
|
SELECT @idTab, 3, N'Sarze', N'<EFBFBD>ar<EFBFBD>e', 6, 30, 1, N'', 0,
|
||||||
|
NULL, NULL, NULL, 30, N'', 1, 1, 0, 1, 0,
|
||||||
|
0, 0, N''
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'Sarze')
|
||||||
|
BEGIN
|
||||||
|
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD Sarze NVARCHAR(30) NULL'
|
||||||
|
EXEC sp_executesql @sql
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'CisloOrg')
|
||||||
|
IF (@idCol IS NULL)
|
||||||
|
INSERT dbo.TabDefTabUzivAtributy
|
||||||
|
(IDDefinice, Poradi, DTUAtrJmenoSys, DTUAtrJmenoVerejne, DTUAtrTyp, DTUAtrDelka, DTUAtrNull, DTUAtrServerDefault, DTUAtrDruh,
|
||||||
|
DTUAtrPocitany, DTUAtrErrTextStr, DTUAtrKonverze, DTUAtrSirkaSloupce, DTUAtrMaska, DTUAtrVerejny, DTUAtrVyzadovany, DTUAtrSumovat, DTUAtrTisk, DTUEditovatelny,
|
||||||
|
DTUReadOnly, DTUHromadneZmeny, EdAtrPrenosDPSN)
|
||||||
|
SELECT @idTab, 4, N'CisloOrg', N'Organizace', 0, 0, 1, N'', 0,
|
||||||
|
NULL, NULL, NULL, 20, N'', 1, 0, 0, 1, 0,
|
||||||
|
0, 0, N''
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'CisloOrg')
|
||||||
|
BEGIN
|
||||||
|
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD CisloOrg INT NULL'
|
||||||
|
EXEC sp_executesql @sql
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'IDPrikaz')
|
||||||
|
IF (@idCol IS NULL)
|
||||||
|
INSERT dbo.TabDefTabUzivAtributy
|
||||||
|
(IDDefinice, Poradi, DTUAtrJmenoSys, DTUAtrJmenoVerejne, DTUAtrTyp, DTUAtrDelka, DTUAtrNull, DTUAtrServerDefault, DTUAtrDruh,
|
||||||
|
DTUAtrPocitany, DTUAtrErrTextStr, DTUAtrKonverze, DTUAtrSirkaSloupce, DTUAtrMaska, DTUAtrVerejny, DTUAtrVyzadovany, DTUAtrSumovat, DTUAtrTisk, DTUEditovatelny,
|
||||||
|
DTUReadOnly, DTUHromadneZmeny, EdAtrPrenosDPSN)
|
||||||
|
SELECT @idTab, 5, N'IDPrikaz', N'V<EFBFBD>robn<EFBFBD> p<><70>kaz', 0, 0, 1, N'', 0,
|
||||||
|
NULL, NULL, NULL, 20, N'', 0, 0, 0, 1, 0,
|
||||||
|
0, 0, N''
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'IDPrikaz')
|
||||||
|
BEGIN
|
||||||
|
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD IDPrikaz INT NULL'
|
||||||
|
EXEC sp_executesql @sql
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'IDStroj')
|
||||||
|
IF (@idCol IS NULL)
|
||||||
|
INSERT dbo.TabDefTabUzivAtributy
|
||||||
|
(IDDefinice, Poradi, DTUAtrJmenoSys, DTUAtrJmenoVerejne, DTUAtrTyp, DTUAtrDelka, DTUAtrNull, DTUAtrServerDefault, DTUAtrDruh,
|
||||||
|
DTUAtrPocitany, DTUAtrErrTextStr, DTUAtrKonverze, DTUAtrSirkaSloupce, DTUAtrMaska, DTUAtrVerejny, DTUAtrVyzadovany, DTUAtrSumovat, DTUAtrTisk, DTUEditovatelny,
|
||||||
|
DTUReadOnly, DTUHromadneZmeny, EdAtrPrenosDPSN)
|
||||||
|
SELECT @idTab, 6, N'IDStroj', N'Stroj', 0, 0, 1, N'', 0,
|
||||||
|
NULL, NULL, NULL, 20, N'', 0, 0, 0, 1, 0,
|
||||||
|
0, 0, N''
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'IDStroj')
|
||||||
|
BEGIN
|
||||||
|
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD IDStroj INT NULL'
|
||||||
|
EXEC sp_executesql @sql
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'DatZahajeni')
|
||||||
|
IF (@idCol IS NULL)
|
||||||
|
INSERT dbo.TabDefTabUzivAtributy
|
||||||
|
(IDDefinice, Poradi, DTUAtrJmenoSys, DTUAtrJmenoVerejne, DTUAtrTyp, DTUAtrDelka, DTUAtrNull, DTUAtrServerDefault, DTUAtrDruh,
|
||||||
|
DTUAtrPocitany, DTUAtrErrTextStr, DTUAtrKonverze, DTUAtrSirkaSloupce, DTUAtrMaska, DTUAtrVerejny, DTUAtrVyzadovany, DTUAtrSumovat, DTUAtrTisk, DTUEditovatelny,
|
||||||
|
DTUReadOnly, DTUHromadneZmeny, EdAtrPrenosDPSN)
|
||||||
|
SELECT @idTab, 7, N'DatZahajeni', N'Datum zah<61>jen<65> v<>roby', 9, 0, 1, N'', 0,
|
||||||
|
NULL, NULL, NULL, 70, N'', 1, 0, 0, 1, 0,
|
||||||
|
0, 0, N''
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'DatZahajeni')
|
||||||
|
BEGIN
|
||||||
|
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD DatZahajeni DATETIME NULL'
|
||||||
|
EXEC sp_executesql @sql
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'DatUkonceni')
|
||||||
|
IF (@idCol IS NULL)
|
||||||
|
INSERT dbo.TabDefTabUzivAtributy
|
||||||
|
(IDDefinice, Poradi, DTUAtrJmenoSys, DTUAtrJmenoVerejne, DTUAtrTyp, DTUAtrDelka, DTUAtrNull, DTUAtrServerDefault, DTUAtrDruh,
|
||||||
|
DTUAtrPocitany, DTUAtrErrTextStr, DTUAtrKonverze, DTUAtrSirkaSloupce, DTUAtrMaska, DTUAtrVerejny, DTUAtrVyzadovany, DTUAtrSumovat, DTUAtrTisk, DTUEditovatelny,
|
||||||
|
DTUReadOnly, DTUHromadneZmeny, EdAtrPrenosDPSN)
|
||||||
|
SELECT @idTab, 8, N'DatUkonceni', N'Datum ukon<6F>en<65> v<>roby', 9, 0, 1, N'', 0,
|
||||||
|
NULL, NULL, NULL, 70, N'', 1, 0, 0, 1, 0,
|
||||||
|
0, 0, N''
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'DatUkonceni')
|
||||||
|
BEGIN
|
||||||
|
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD DatUkonceni DATETIME NULL'
|
||||||
|
EXEC sp_executesql @sql
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'Mnozstvi')
|
||||||
|
IF (@idCol IS NULL)
|
||||||
|
INSERT dbo.TabDefTabUzivAtributy
|
||||||
|
(IDDefinice, Poradi, DTUAtrJmenoSys, DTUAtrJmenoVerejne, DTUAtrTyp, DTUAtrDelka, DTUAtrNull, DTUAtrServerDefault, DTUAtrDruh,
|
||||||
|
DTUAtrPocitany, DTUAtrErrTextStr, DTUAtrKonverze, DTUAtrSirkaSloupce, DTUAtrMaska, DTUAtrVerejny, DTUAtrVyzadovany, DTUAtrSumovat, DTUAtrTisk, DTUEditovatelny,
|
||||||
|
DTUReadOnly, DTUHromadneZmeny, EdAtrPrenosDPSN)
|
||||||
|
SELECT @idTab, 9, N'Mnozstvi', N'Mno<EFBFBD>stv<EFBFBD> KA', 1, 0, 0, N'0', 0,
|
||||||
|
NULL, NULL, NULL, 60, N'', 1, 0, 1, 1, 0,
|
||||||
|
0, 0, N''
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'Mnozstvi')
|
||||||
|
BEGIN
|
||||||
|
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD Mnozstvi SMALLINT NOT NULL DEFAULT 0'
|
||||||
|
EXEC sp_executesql @sql
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'MnozstviKA')
|
||||||
|
IF (@idCol IS NULL)
|
||||||
|
INSERT dbo.TabDefTabUzivAtributy
|
||||||
|
(IDDefinice, Poradi, DTUAtrJmenoSys, DTUAtrJmenoVerejne, DTUAtrTyp, DTUAtrDelka, DTUAtrNull, DTUAtrServerDefault, DTUAtrDruh,
|
||||||
|
DTUAtrPocitany, DTUAtrErrTextStr, DTUAtrKonverze, DTUAtrSirkaSloupce, DTUAtrMaska, DTUAtrVerejny, DTUAtrVyzadovany, DTUAtrSumovat, DTUAtrTisk, DTUEditovatelny,
|
||||||
|
DTUReadOnly, DTUHromadneZmeny, EdAtrPrenosDPSN)
|
||||||
|
SELECT @idTab, 10, N'MnozstviKA', N'Mno<EFBFBD>stv<EFBFBD> KA', 1, 0, 0, N'0', 0,
|
||||||
|
NULL, NULL, NULL, 60, N'', 1, 0, 1, 1, 0,
|
||||||
|
0, 0, N''
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'MnozstviKA')
|
||||||
|
BEGIN
|
||||||
|
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD MnozstviKA SMALLINT NOT NULL DEFAULT 0'
|
||||||
|
EXEC sp_executesql @sql
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'MnozstviPlneKA')
|
||||||
|
IF (@idCol IS NULL)
|
||||||
|
INSERT dbo.TabDefTabUzivAtributy
|
||||||
|
(IDDefinice, Poradi, DTUAtrJmenoSys, DTUAtrJmenoVerejne, DTUAtrTyp, DTUAtrDelka, DTUAtrNull, DTUAtrServerDefault, DTUAtrDruh,
|
||||||
|
DTUAtrPocitany, DTUAtrErrTextStr, DTUAtrKonverze, DTUAtrSirkaSloupce, DTUAtrMaska, DTUAtrVerejny, DTUAtrVyzadovany, DTUAtrSumovat, DTUAtrTisk, DTUEditovatelny,
|
||||||
|
DTUReadOnly, DTUHromadneZmeny, EdAtrPrenosDPSN)
|
||||||
|
SELECT @idTab, 11, N'MnozstviPlneKA', N'Mno<EFBFBD>stv<EFBFBD> pln<6C>ch KA na ne<6E>pln<6C> palet<65>', 1, 0, 0, N'0', 0,
|
||||||
|
NULL, NULL, NULL, 60, N'', 1, 0, 1, 1, 0,
|
||||||
|
0, 0, N''
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'MnozstviPlneKA')
|
||||||
|
BEGIN
|
||||||
|
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD MnozstviPlneKA SMALLINT NOT NULL DEFAULT 0'
|
||||||
|
EXEC sp_executesql @sql
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'MnozstviPosledniKA')
|
||||||
|
IF (@idCol IS NULL)
|
||||||
|
INSERT dbo.TabDefTabUzivAtributy
|
||||||
|
(IDDefinice, Poradi, DTUAtrJmenoSys, DTUAtrJmenoVerejne, DTUAtrTyp, DTUAtrDelka, DTUAtrNull, DTUAtrServerDefault, DTUAtrDruh,
|
||||||
|
DTUAtrPocitany, DTUAtrErrTextStr, DTUAtrKonverze, DTUAtrSirkaSloupce, DTUAtrMaska, DTUAtrVerejny, DTUAtrVyzadovany, DTUAtrSumovat, DTUAtrTisk, DTUEditovatelny,
|
||||||
|
DTUReadOnly, DTUHromadneZmeny, EdAtrPrenosDPSN)
|
||||||
|
SELECT @idTab, 12, N'MnozstviPosledniKA', N'Mno<EFBFBD>stv<EFBFBD> ks v posledn<64>m KA', 1, 0, 0, N'0', 0,
|
||||||
|
NULL, NULL, NULL, 60, N'', 1, 0, 1, 1, 0,
|
||||||
|
0, 0, N''
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'MnozstviPosledniKA')
|
||||||
|
BEGIN
|
||||||
|
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD MnozstviPosledniKA SMALLINT NOT NULL DEFAULT 0'
|
||||||
|
EXEC sp_executesql @sql
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'DatPorizeni')
|
||||||
|
IF (@idCol IS NULL)
|
||||||
|
INSERT dbo.TabDefTabUzivAtributy
|
||||||
|
(IDDefinice, Poradi, DTUAtrJmenoSys, DTUAtrJmenoVerejne, DTUAtrTyp, DTUAtrDelka, DTUAtrNull, DTUAtrServerDefault, DTUAtrDruh,
|
||||||
|
DTUAtrPocitany, DTUAtrErrTextStr, DTUAtrKonverze, DTUAtrSirkaSloupce, DTUAtrMaska, DTUAtrVerejny, DTUAtrVyzadovany, DTUAtrSumovat, DTUAtrTisk, DTUEditovatelny,
|
||||||
|
DTUReadOnly, DTUHromadneZmeny, EdAtrPrenosDPSN)
|
||||||
|
SELECT @idTab, 13, N'DatPorizeni', N'Datum po<70><6F>zen<65>', 9, 0, 0, N'GETDATE()', 0,
|
||||||
|
NULL, NULL, NULL, 70, N'', 1, 1, 0, 1, 0,
|
||||||
|
0, 0, N''
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'DatPorizeni')
|
||||||
|
BEGIN
|
||||||
|
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD DatPorizeni DATETIME NOT NULL DEFAULT GETDATE()'
|
||||||
|
EXEC sp_executesql @sql
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'JeCislo')
|
||||||
|
IF (@idCol IS NULL)
|
||||||
|
INSERT dbo.TabDefTabUzivAtributy
|
||||||
|
(IDDefinice, Poradi, DTUAtrJmenoSys, DTUAtrJmenoVerejne, DTUAtrTyp, DTUAtrDelka, DTUAtrNull, DTUAtrServerDefault, DTUAtrDruh,
|
||||||
|
DTUAtrPocitany, DTUAtrErrTextStr, DTUAtrKonverze, DTUAtrSirkaSloupce, DTUAtrMaska, DTUAtrVerejny, DTUAtrVyzadovany, DTUAtrSumovat, DTUAtrTisk, DTUEditovatelny,
|
||||||
|
DTUReadOnly, DTUHromadneZmeny, EdAtrPrenosDPSN)
|
||||||
|
SELECT @idTab, 14, N'JeCislo', N'Ozna<EFBFBD>en<EFBFBD> palety je <20><>slo', 5, 0, 0, N'', 1,
|
||||||
|
N'CONVERT(bit, CASE WHEN ISNUMERIC(CisloPalety)=1 THEN 1 ELSE 0 END)', NULL, NULL, 20, N'', 1, 1, 0, 1, 0,
|
||||||
|
0, 0, N''
|
||||||
|
|
||||||
|
|
||||||
|
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'IDKmen')
|
||||||
|
IF (@idCol IS NULL)
|
||||||
|
INSERT dbo.TabDefTabUzivAtributy
|
||||||
|
(IDDefinice, Poradi, DTUAtrJmenoSys, DTUAtrJmenoVerejne, DTUAtrTyp, DTUAtrDelka, DTUAtrNull, DTUAtrServerDefault, DTUAtrDruh,
|
||||||
|
DTUAtrPocitany, DTUAtrErrTextStr, DTUAtrKonverze, DTUAtrSirkaSloupce, DTUAtrMaska, DTUAtrVerejny, DTUAtrVyzadovany, DTUAtrSumovat, DTUAtrTisk, DTUEditovatelny,
|
||||||
|
DTUReadOnly, DTUHromadneZmeny, EdAtrPrenosDPSN)
|
||||||
|
SELECT @idTab, 15, N'IDKmen', N'Kmenov<EFBFBD> karta', 0, 0, 1, N'', 0,
|
||||||
|
NULL, NULL, NULL, 40, N'', 0, 0, 0, 1, 0,
|
||||||
|
0, 0, N''
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'IDKmen')
|
||||||
|
BEGIN
|
||||||
|
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD IDKmen INT NULL'
|
||||||
|
EXEC sp_executesql @sql
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'IDVyrCisPrikaz')
|
||||||
|
IF (@idCol IS NULL)
|
||||||
|
INSERT dbo.TabDefTabUzivAtributy
|
||||||
|
(IDDefinice, Poradi, DTUAtrJmenoSys, DTUAtrJmenoVerejne, DTUAtrTyp, DTUAtrDelka, DTUAtrNull, DTUAtrServerDefault, DTUAtrDruh,
|
||||||
|
DTUAtrPocitany, DTUAtrErrTextStr, DTUAtrKonverze, DTUAtrSirkaSloupce, DTUAtrMaska, DTUAtrVerejny, DTUAtrVyzadovany, DTUAtrSumovat, DTUAtrTisk, DTUEditovatelny,
|
||||||
|
DTUReadOnly, DTUHromadneZmeny, EdAtrPrenosDPSN)
|
||||||
|
SELECT @idTab, 16, N'IDVyrCisPrikaz', N'V<EFBFBD> z p<><70>kazu', 0, 0, 1, N'', 0,
|
||||||
|
NULL, NULL, NULL, 40, N'', 0, 0, 0, 1, 0,
|
||||||
|
0, 0, N''
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'IDVyrCisPrikaz')
|
||||||
|
BEGIN
|
||||||
|
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD IDVyrCisPrikaz INT NULL'
|
||||||
|
EXEC sp_executesql @sql
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'KusuVKA')
|
||||||
|
IF (@idCol IS NULL)
|
||||||
|
INSERT dbo.TabDefTabUzivAtributy
|
||||||
|
(IDDefinice, Poradi, DTUAtrJmenoSys, DTUAtrJmenoVerejne, DTUAtrTyp, DTUAtrDelka, DTUAtrNull, DTUAtrServerDefault, DTUAtrDruh,
|
||||||
|
DTUAtrPocitany, DTUAtrErrTextStr, DTUAtrKonverze, DTUAtrSirkaSloupce, DTUAtrMaska, DTUAtrVerejny, DTUAtrVyzadovany, DTUAtrSumovat, DTUAtrTisk, DTUEditovatelny,
|
||||||
|
DTUReadOnly, DTUHromadneZmeny, EdAtrPrenosDPSN)
|
||||||
|
SELECT @idTab, 17, N'KusuVKA', N'Po<EFBFBD>et ks v KA', 1, 0, 0, N'0', 0,
|
||||||
|
NULL, NULL, NULL, 40, N'', 1, 1, 0, 1, 0,
|
||||||
|
0, 0, N''
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'KusuVKA')
|
||||||
|
BEGIN
|
||||||
|
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD KusuVKA SMALLINT NOT NULL DEFAULT 0'
|
||||||
|
EXEC sp_executesql @sql
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'DatExpirace')
|
||||||
|
IF (@idCol IS NULL)
|
||||||
|
INSERT dbo.TabDefTabUzivAtributy
|
||||||
|
(IDDefinice, Poradi, DTUAtrJmenoSys, DTUAtrJmenoVerejne, DTUAtrTyp, DTUAtrDelka, DTUAtrNull, DTUAtrServerDefault, DTUAtrDruh,
|
||||||
|
DTUAtrPocitany, DTUAtrErrTextStr, DTUAtrKonverze, DTUAtrSirkaSloupce, DTUAtrMaska, DTUAtrVerejny, DTUAtrVyzadovany, DTUAtrSumovat, DTUAtrTisk, DTUEditovatelny,
|
||||||
|
DTUReadOnly, DTUHromadneZmeny, EdAtrPrenosDPSN)
|
||||||
|
SELECT @idTab, 18, N'DatExpirace', N'Datum expirace', 9, 0, 1, N'', 0,
|
||||||
|
NULL, NULL, NULL, 70, N'', 1, 0, 0, 1, 0,
|
||||||
|
0, 0, N''
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'DatExpirace')
|
||||||
|
BEGIN
|
||||||
|
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD DatExpirace DATETIME NULL'
|
||||||
|
EXEC sp_executesql @sql
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'IDPlanRozpis')
|
||||||
|
IF (@idCol IS NULL)
|
||||||
|
INSERT dbo.TabDefTabUzivAtributy
|
||||||
|
(IDDefinice, Poradi, DTUAtrJmenoSys, DTUAtrJmenoVerejne, DTUAtrTyp, DTUAtrDelka, DTUAtrNull, DTUAtrServerDefault, DTUAtrDruh,
|
||||||
|
DTUAtrPocitany, DTUAtrErrTextStr, DTUAtrKonverze, DTUAtrSirkaSloupce, DTUAtrMaska, DTUAtrVerejny, DTUAtrVyzadovany, DTUAtrSumovat, DTUAtrTisk, DTUEditovatelny,
|
||||||
|
DTUReadOnly, DTUHromadneZmeny, EdAtrPrenosDPSN)
|
||||||
|
SELECT @idTab, 19, N'IDPlanRozpis', N'ID kapac.pl<70>nu', 0, 0, 1, N'', 0,
|
||||||
|
NULL, NULL, NULL, 40, N'', 0, 0, 0, 1, 0,
|
||||||
|
0, 0, N''
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'IDPlanRozpis')
|
||||||
|
BEGIN
|
||||||
|
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD IDPlanRozpis INT NULL'
|
||||||
|
EXEC sp_executesql @sql
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'DatPlan')
|
||||||
|
IF (@idCol IS NULL)
|
||||||
|
INSERT dbo.TabDefTabUzivAtributy
|
||||||
|
(IDDefinice, Poradi, DTUAtrJmenoSys, DTUAtrJmenoVerejne, DTUAtrTyp, DTUAtrDelka, DTUAtrNull, DTUAtrServerDefault, DTUAtrDruh,
|
||||||
|
DTUAtrPocitany, DTUAtrErrTextStr, DTUAtrKonverze, DTUAtrSirkaSloupce, DTUAtrMaska, DTUAtrVerejny, DTUAtrVyzadovany, DTUAtrSumovat, DTUAtrTisk, DTUEditovatelny,
|
||||||
|
DTUReadOnly, DTUHromadneZmeny, EdAtrPrenosDPSN)
|
||||||
|
SELECT @idTab, 20, N'DatPlan', N'Datum pl<70>novan<61> v<>roby', 9, 0, 1, N'', 0,
|
||||||
|
NULL, NULL, NULL, 70, N'', 1, 0, 0, 1, 0,
|
||||||
|
0, 0, N''
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'DatPlan')
|
||||||
|
BEGIN
|
||||||
|
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD DatPlan DATETIME NULL'
|
||||||
|
EXEC sp_executesql @sql
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'HodinaPlan')
|
||||||
|
IF (@idCol IS NULL)
|
||||||
|
INSERT dbo.TabDefTabUzivAtributy
|
||||||
|
(IDDefinice, Poradi, DTUAtrJmenoSys, DTUAtrJmenoVerejne, DTUAtrTyp, DTUAtrDelka, DTUAtrNull, DTUAtrServerDefault, DTUAtrDruh,
|
||||||
|
DTUAtrPocitany, DTUAtrErrTextStr, DTUAtrKonverze, DTUAtrSirkaSloupce, DTUAtrMaska, DTUAtrVerejny, DTUAtrVyzadovany, DTUAtrSumovat, DTUAtrTisk, DTUEditovatelny,
|
||||||
|
DTUReadOnly, DTUHromadneZmeny, EdAtrPrenosDPSN)
|
||||||
|
SELECT @idTab, 21, N'HodinaPlan', N'Hodina pl<70>novan<61> v<>roby', 2, 0, 1, N'', 0,
|
||||||
|
NULL, NULL, NULL, 40, N'', 0, 0, 0, 1, 0,
|
||||||
|
0, 0, N''
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'HodinaPlan')
|
||||||
|
BEGIN
|
||||||
|
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD HodinaPlan TINYINT NULL'
|
||||||
|
EXEC sp_executesql @sql
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'JSONDataStart')
|
||||||
|
IF (@idCol IS NULL)
|
||||||
|
INSERT dbo.TabDefTabUzivAtributy
|
||||||
|
(IDDefinice, Poradi, DTUAtrJmenoSys, DTUAtrJmenoVerejne, DTUAtrTyp, DTUAtrDelka, DTUAtrNull, DTUAtrServerDefault, DTUAtrDruh,
|
||||||
|
DTUAtrPocitany, DTUAtrErrTextStr, DTUAtrKonverze, DTUAtrSirkaSloupce, DTUAtrMaska, DTUAtrVerejny, DTUAtrVyzadovany, DTUAtrSumovat, DTUAtrTisk, DTUEditovatelny,
|
||||||
|
DTUReadOnly, DTUHromadneZmeny, EdAtrPrenosDPSN)
|
||||||
|
SELECT @idTab, 22, N'JSONDataStart', N'JSON odeslan<61> PH p<>i startu palety', 14, 0, 1, N'', 0,
|
||||||
|
NULL, NULL, NULL, 40, N'', 0, 0, 0, 0, 0,
|
||||||
|
0, 0, N''
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'JSONDataStart')
|
||||||
|
BEGIN
|
||||||
|
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD JSONDataStart NVARCHAR(max) NULL'
|
||||||
|
EXEC sp_executesql @sql
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'JSONDataKonec')
|
||||||
|
IF (@idCol IS NULL)
|
||||||
|
INSERT dbo.TabDefTabUzivAtributy
|
||||||
|
(IDDefinice, Poradi, DTUAtrJmenoSys, DTUAtrJmenoVerejne, DTUAtrTyp, DTUAtrDelka, DTUAtrNull, DTUAtrServerDefault, DTUAtrDruh,
|
||||||
|
DTUAtrPocitany, DTUAtrErrTextStr, DTUAtrKonverze, DTUAtrSirkaSloupce, DTUAtrMaska, DTUAtrVerejny, DTUAtrVyzadovany, DTUAtrSumovat, DTUAtrTisk, DTUEditovatelny,
|
||||||
|
DTUReadOnly, DTUHromadneZmeny, EdAtrPrenosDPSN)
|
||||||
|
SELECT @idTab, 23, N'JSONDataKonec', N'JSON odeslan<61> PH p<>i ukon<6F>en<65> palety', 14, 0, 1, N'', 0,
|
||||||
|
NULL, NULL, NULL, 40, N'', 0, 0, 0, 0, 0,
|
||||||
|
0, 0, N''
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'JSONDataKonec')
|
||||||
|
BEGIN
|
||||||
|
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD JSONDataKonec NVARCHAR(max) NULL'
|
||||||
|
EXEC sp_executesql @sql
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'JSONStartResp')
|
||||||
|
IF (@idCol IS NULL)
|
||||||
|
INSERT dbo.TabDefTabUzivAtributy
|
||||||
|
(IDDefinice, Poradi, DTUAtrJmenoSys, DTUAtrJmenoVerejne, DTUAtrTyp, DTUAtrDelka, DTUAtrNull, DTUAtrServerDefault, DTUAtrDruh,
|
||||||
|
DTUAtrPocitany, DTUAtrErrTextStr, DTUAtrKonverze, DTUAtrSirkaSloupce, DTUAtrMaska, DTUAtrVerejny, DTUAtrVyzadovany, DTUAtrSumovat, DTUAtrTisk, DTUEditovatelny,
|
||||||
|
DTUReadOnly, DTUHromadneZmeny, EdAtrPrenosDPSN)
|
||||||
|
SELECT @idTab, 24, N'JSONStartResp', N'JSON p<>ijat<61> od PH p<>i startu palety', 14, 0, 1, N'', 0,
|
||||||
|
NULL, NULL, NULL, 40, N'', 0, 0, 0, 0, 0,
|
||||||
|
0, 0, N''
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'JSONStartResp')
|
||||||
|
BEGIN
|
||||||
|
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD JSONStartResp NVARCHAR(max) NULL'
|
||||||
|
EXEC sp_executesql @sql
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'JSONKonecResp')
|
||||||
|
IF (@idCol IS NULL)
|
||||||
|
INSERT dbo.TabDefTabUzivAtributy
|
||||||
|
(IDDefinice, Poradi, DTUAtrJmenoSys, DTUAtrJmenoVerejne, DTUAtrTyp, DTUAtrDelka, DTUAtrNull, DTUAtrServerDefault, DTUAtrDruh,
|
||||||
|
DTUAtrPocitany, DTUAtrErrTextStr, DTUAtrKonverze, DTUAtrSirkaSloupce, DTUAtrMaska, DTUAtrVerejny, DTUAtrVyzadovany, DTUAtrSumovat, DTUAtrTisk, DTUEditovatelny,
|
||||||
|
DTUReadOnly, DTUHromadneZmeny, EdAtrPrenosDPSN)
|
||||||
|
SELECT @idTab, 25, N'JSONKonecResp', N'JSON p<>ijat<61> od PH p<>i ukon<6F>en<65> palety', 14, 0, 1, N'', 0,
|
||||||
|
NULL, NULL, NULL, 40, N'', 0, 0, 0, 0, 0,
|
||||||
|
0, 0, N''
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'JSONKonecResp')
|
||||||
|
BEGIN
|
||||||
|
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD JSONKonecResp NVARCHAR(max) NULL'
|
||||||
|
EXEC sp_executesql @sql
|
||||||
|
END
|
||||||
|
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- indexy
|
||||||
|
IF (@idTab IS NOT NULL)
|
||||||
|
IF NOT EXISTS (SELECT 1 FROM dbo.TabDefTabUzivConstraint WHERE IDDefinice=@idTab AND Typ=1 AND JmenoSys=N'PK__' + @sysTabName + N'__ID')
|
||||||
|
INSERT dbo.TabDefTabUzivConstraint
|
||||||
|
(IDDefinice, JmenoSys, Typ, MojeAtributy, CiziTabulka, CiziAtributy, IncludedAttr, VazbaNazevMoje, VazbaNazevMojeSys, VazbaNazevCizi, VazbaNazevCiziSys)
|
||||||
|
SELECT @idTab, N'PK__' + @sysTabName + N'__ID', 1, N'ID', N'', N'', N'', N'', N'', N'', N''
|
||||||
|
|
||||||
|
IF (@idTab IS NOT NULL) AND EXISTS (SELECT 1 FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'Typ')
|
||||||
|
IF NOT EXISTS (SELECT 1 FROM dbo.TabDefTabUzivConstraint WHERE IDDefinice=@idTab AND Typ=0 AND JmenoSys=N'IX__' + @sysTabName + N'__Typ')
|
||||||
|
INSERT dbo.TabDefTabUzivConstraint
|
||||||
|
(IDDefinice, JmenoSys, Typ, MojeAtributy, CiziTabulka, CiziAtributy, IncludedAttr, VazbaNazevMoje, VazbaNazevMojeSys, VazbaNazevCizi, VazbaNazevCiziSys)
|
||||||
|
SELECT @idTab, N'IX__' + @sysTabName + N'__Typ', 0, N'Typ', N'', N'', N'', N'', N'', N'', N''
|
||||||
|
|
||||||
|
IF (@idTab IS NOT NULL) AND EXISTS (SELECT 1 FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'IDPrikaz')
|
||||||
|
IF NOT EXISTS (SELECT 1 FROM dbo.TabDefTabUzivConstraint WHERE IDDefinice=@idTab AND Typ=0 AND JmenoSys=N'IX__' + @sysTabName + N'__IDPrikaz')
|
||||||
|
INSERT dbo.TabDefTabUzivConstraint
|
||||||
|
(IDDefinice, JmenoSys, Typ, MojeAtributy, CiziTabulka, CiziAtributy, IncludedAttr, VazbaNazevMoje, VazbaNazevMojeSys, VazbaNazevCizi, VazbaNazevCiziSys)
|
||||||
|
SELECT @idTab, N'IX__' + @sysTabName + N'__IDPrikaz', 0, N'IDPrikaz', N'', N'', N'', N'', N'', N'', N''
|
||||||
|
|
||||||
|
IF (@idTab IS NOT NULL) AND EXISTS (SELECT 1 FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'IDStroj')
|
||||||
|
IF NOT EXISTS (SELECT 1 FROM dbo.TabDefTabUzivConstraint WHERE IDDefinice=@idTab AND Typ=0 AND JmenoSys=N'IX__' + @sysTabName + N'__IDStroj')
|
||||||
|
INSERT dbo.TabDefTabUzivConstraint
|
||||||
|
(IDDefinice, JmenoSys, Typ, MojeAtributy, CiziTabulka, CiziAtributy, IncludedAttr, VazbaNazevMoje, VazbaNazevMojeSys, VazbaNazevCizi, VazbaNazevCiziSys)
|
||||||
|
SELECT @idTab, N'IX__' + @sysTabName + N'__IDStroj', 0, N'IDStroj', N'', N'', N'', N'', N'', N'', N''
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- trigger I/U/D
|
||||||
|
IF (@idTab IS NOT NULL)
|
||||||
|
BEGIN
|
||||||
|
SET @trigger=N'CREATE TRIGGER ht_TabVyroba_Palety_DIU ON _TabVyroba_Palety
|
||||||
|
FOR DELETE,INSERT,UPDATE
|
||||||
|
AS
|
||||||
|
|
||||||
|
-- !! trigger neupravujte, bude stejne pregenerovan pri startu pluginu PluginHDCRTN !!
|
||||||
|
|
||||||
|
IF @@ROWCOUNT = 0 RETURN
|
||||||
|
SET NOCOUNT ON
|
||||||
|
|
||||||
|
-- 1..insert, -1..delete, 0..update
|
||||||
|
DECLARE @JakaAkce INT
|
||||||
|
SET @JakaAkce = 0
|
||||||
|
IF EXISTS(SELECT*FROM INSERTED) SET @JakaAkce = @JakaAkce + 1
|
||||||
|
IF EXISTS(SELECT*FROM DELETED) SET @JakaAkce = @JakaAkce - 1
|
||||||
|
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@errMsg NVARCHAR(500),
|
||||||
|
@id INT
|
||||||
|
|
||||||
|
|
||||||
|
-- delete cast
|
||||||
|
IF (@JakaAkce=-1)
|
||||||
|
BEGIN
|
||||||
|
DECLARE c CURSOR LOCAL FOR
|
||||||
|
SELECT d.ID
|
||||||
|
FROM deleted d
|
||||||
|
OPEN c
|
||||||
|
WHILE (1=1)
|
||||||
|
BEGIN
|
||||||
|
FETCH NEXT FROM c INTO @id
|
||||||
|
IF (@@FETCH_STATUS<>0) BREAK
|
||||||
|
|
||||||
|
IF OBJECT_ID(N''dbo._TabVyroba_PaletyUkonceni'', N''U'') IS NOT NULL
|
||||||
|
DELETE FROM dbo._TabVyroba_PaletyUkonceni WHERE IDPalety=@id
|
||||||
|
|
||||||
|
IF OBJECT_ID(N''dbo._TabVyroba_PaletyPohybOZ'', N''U'') IS NOT NULL
|
||||||
|
DELETE FROM dbo._TabVyroba_PaletyPohybOZ WHERE IDPalety=@id
|
||||||
|
|
||||||
|
END
|
||||||
|
CLOSE c
|
||||||
|
DEALLOCATE c
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
-- cisteni
|
||||||
|
BEGIN TRY
|
||||||
|
IF EXISTS(SELECT 1 FROM dbo._TabVyroba_Palety)
|
||||||
|
BEGIN
|
||||||
|
SELECT @id=MAX(ID) FROM dbo._TabVyroba_Palety
|
||||||
|
DBCC CHECKIDENT(_TabVyroba_Palety, RESEED, @id)
|
||||||
|
END
|
||||||
|
ELSE
|
||||||
|
TRUNCATE TABLE dbo._TabVyroba_Palety
|
||||||
|
END TRY
|
||||||
|
BEGIN CATCH
|
||||||
|
SET @errMsg = ERROR_MESSAGE()
|
||||||
|
END CATCH
|
||||||
|
|
||||||
|
'
|
||||||
|
UPDATE dbo.TabDefTabUzivTabulka SET DefiniceTriggeru=@trigger WHERE ID=@idTab
|
||||||
|
END
|
||||||
42
_sql/_temp
Normal file
42
_sql/_temp
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- dopln z dokladu posledni sarzi na stav skladu
|
||||||
|
|
||||||
|
SET NOCOUNT ON
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@idPZ INT,
|
||||||
|
@idSS INT,
|
||||||
|
@idKZ INT,
|
||||||
|
@sarze NVARCHAR(100),
|
||||||
|
@paletList NVARCHAR(100)
|
||||||
|
|
||||||
|
|
||||||
|
MERGE dbo._hdc_PZ_PuvodniVC AS T
|
||||||
|
USING dbo.TabPohybyZbozi AS S ON (S.ID=T.IDPohybZbozi)
|
||||||
|
WHEN MATCHED THEN UPDATE SET T.IDZboSklad=S.IDZboSklad;
|
||||||
|
|
||||||
|
DECLARE c CURSOR LOCAL FAST_FORWARD FOR
|
||||||
|
SELECT IDPohybZbozi, IDZboSklad, Sarze, PaletovyList FROM dbo._hdc_PZ_PuvodniVC
|
||||||
|
WHERE IDPohybZbozi IN (SELECT ID FROM dbo.TabPohybyZbozi WHERE IDDoklad=29)
|
||||||
|
OPEN c
|
||||||
|
WHILE (1=1)
|
||||||
|
BEGIN
|
||||||
|
FETCH NEXT FROM c INTO @idPZ, @idSS, @sarze, @paletList
|
||||||
|
IF (@@FETCH_STATUS<>0) BREAK
|
||||||
|
|
||||||
|
IF (@idSS IS NULL)
|
||||||
|
SET @idSS = (SELECT IDZboSklad FROM dbo.TabPohybyZbozi WHERE ID=@idPZ)
|
||||||
|
IF (@idSS IS NOT NULL)
|
||||||
|
SET @idKZ = (SELECT IDKmenZbozi FROM dbo.TabStavSkladu WHERE ID=@idSS)
|
||||||
|
SET @idSS = (SELECT ID FROM dbo.TabStavSkladu WHERE IDKmenZbozi=@idKZ AND IDSklad=N'211')
|
||||||
|
|
||||||
|
IF NOT EXISTS (SELECT 1 FROM dbo.TabStavSkladu_EXT WHERE ID=@idSS)
|
||||||
|
INSERT dbo.TabStavSkladu_EXT (ID) VALUES (@idSS)
|
||||||
|
UPDATE dbo.TabStavSkladu_EXT SET _Prevod_PosledniSarze=@sarze WHERE ID=@idSS
|
||||||
|
|
||||||
|
END
|
||||||
|
CLOSE c
|
||||||
|
DEALLOCATE c
|
||||||
|
|
||||||
30
_sql/col_DokladyZbozi_EXT.sql
Normal file
30
_sql/col_DokladyZbozi_EXT.sql
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
DECLARE @currDat DATETIME=GETDATE()
|
||||||
|
IF (COL_LENGTH(N'dbo.TabDokladyZbozi_EXT', N'_Vyroba_HmotTesta') IS NULL)
|
||||||
|
EXEC dbo.hp_ImportUzivAtr @Externi=1, @NazevTabulkySys=N'TabDokladyZbozi', @NazevAtrSys=N'_Vyroba_HmotTesta', @Skupina=N'Plugin Pek<65>rna', @NazevAtrVer=N'Hmotnost vyroben<65>ho t<>sta (kg)',
|
||||||
|
@NazevAtrVerZkr=N'Hm. t<>sta', @TypAtr=N'NUMERIC', @MaskaAtr=NULL, @VerejnyAtr=N'V', @SirkaSloupceAtr=8, @SumovatAtr=N'A', @TiskAtr=N'A', @ProcPruhAtr=0, @Kopirovat=0,
|
||||||
|
@KonverzeAtr=NULL, @ExtEd_Poradi=1, @ExtEd_Zalozka=NULL, @ExtEd_BrowseID=NULL, @ExtEd_Atr=NULL, @ExtEd_PrimaEditace=1, @DatPorizeni=@currDat, @DatZmeny=NULL,
|
||||||
|
@TypAtrSQL=N'NUMERIC', @ExtEd_BrowseID_DPSN=NULL, @Poznamka=NULL, @Definice=NULL, @Podminka=NULL
|
||||||
|
|
||||||
|
IF (COL_LENGTH(N'dbo.TabDokladyZbozi_EXT', N'_Vyroba_ZadatSarze') IS NULL)
|
||||||
|
EXEC dbo.hp_ImportUzivAtr @Externi=1, @NazevTabulkySys=N'TabDokladyZbozi', @NazevAtrSys=N'_Vyroba_ZadatSarze', @Skupina=N'Plugin Pek<65>rna', @NazevAtrVer=N'V<EFBFBD>dej z v<>roby - zadat <20>ar<61>e',
|
||||||
|
@NazevAtrVerZkr=N'', @TypAtr=N'SMALLINT', @MaskaAtr=NULL, @VerejnyAtr=N'V', @SirkaSloupceAtr=8, @SumovatAtr=N'N', @TiskAtr=N'A', @ProcPruhAtr=0, @Kopirovat=0,
|
||||||
|
@KonverzeAtr=NULL, @ExtEd_Poradi=1, @ExtEd_Zalozka=NULL, @ExtEd_BrowseID=NULL, @ExtEd_Atr=NULL, @ExtEd_PrimaEditace=1, @DatPorizeni=@currDat, @DatZmeny=NULL,
|
||||||
|
@TypAtrSQL=N'SMALLINT', @ExtEd_BrowseID_DPSN=NULL, @Poznamka=N'Identifikace zda na v<>dejce z v<>roby byly zad<61>ny <20>ar<61>e (1=polo<6C>ka s pot<6F>ebou <20>ar<61>e, 2=v<>e zad<61>no)', @Definice=NULL, @Podminka=NULL
|
||||||
|
|
||||||
|
IF (COL_LENGTH(N'dbo.TabDokladyZbozi_EXT', N'_Vyroba_DenSmena') IS NULL)
|
||||||
|
EXEC dbo.hp_ImportUzivAtr @Externi=1, @NazevTabulkySys=N'TabDokladyZbozi', @NazevAtrSys=N'_Vyroba_DenSmena', @Skupina=N'Plugin Pek<65>rna', @NazevAtrVer=N'V<EFBFBD>dej z v<>roby - den/sm<73>na',
|
||||||
|
@NazevAtrVerZkr=N'', @TypAtr=N'NVARCHAR', @MaskaAtr=NULL, @VerejnyAtr=N'V', @SirkaSloupceAtr=8, @SumovatAtr=N'N', @TiskAtr=N'A', @ProcPruhAtr=0, @Kopirovat=0,
|
||||||
|
@KonverzeAtr=NULL, @ExtEd_Poradi=1, @ExtEd_Zalozka=NULL, @ExtEd_BrowseID=NULL, @ExtEd_Atr=NULL, @ExtEd_PrimaEditace=1, @DatPorizeni=@currDat, @DatZmeny=NULL,
|
||||||
|
@TypAtrSQL=N'NVARCHAR(10)', @ExtEd_BrowseID_DPSN=NULL, @Poznamka=N'ddmmyyyy/s', @Definice=NULL, @Podminka=NULL
|
||||||
|
|
||||||
|
IF (COL_LENGTH(N'dbo.TabDokladyZbozi_EXT', N'_Vyroba_IDPuvodniDoklad') IS NULL)
|
||||||
|
EXEC dbo.hp_ImportUzivAtr @Externi=1, @NazevTabulkySys=N'TabDokladyZbozi', @NazevAtrSys=N'_Vyroba_IDPuvodniDoklad', @Skupina=N'Plugin Pek<65>rna', @NazevAtrVer=N'ID p<>vodn<64>ho dokladu p<>evodu/v<>deje',
|
||||||
|
@NazevAtrVerZkr=N'', @TypAtr=N'INT', @MaskaAtr=NULL, @VerejnyAtr=N'N', @SirkaSloupceAtr=8, @SumovatAtr=N'N', @TiskAtr=N'A', @ProcPruhAtr=0, @Kopirovat=0,
|
||||||
|
@KonverzeAtr=NULL, @ExtEd_Poradi=1, @ExtEd_Zalozka=NULL, @ExtEd_BrowseID=NULL, @ExtEd_Atr=NULL, @ExtEd_PrimaEditace=1, @DatPorizeni=@currDat, @DatZmeny=NULL,
|
||||||
|
@TypAtrSQL=N'INT', @ExtEd_BrowseID_DPSN=NULL, @Poznamka=NULL, @Definice=NULL, @Podminka=NULL
|
||||||
|
|
||||||
|
IF (COL_LENGTH(N'dbo.TabDokladyZbozi_EXT', N'_HDCAPI_PHident') IS NULL)
|
||||||
|
EXEC dbo.hp_ImportUzivAtr @Externi=1, @NazevTabulkySys=N'TabDokladyZbozi', @NazevAtrSys=N'_HDCAPI_PHident', @Skupina=N'Plugin Pek<65>rna', @NazevAtrVer=N'HDC API PH identifik<69>tor pro sync',
|
||||||
|
@NazevAtrVerZkr=N'', @TypAtr=N'INT', @MaskaAtr=NULL, @VerejnyAtr=N'N', @SirkaSloupceAtr=10, @SumovatAtr=N'N', @TiskAtr=N'A', @ProcPruhAtr=0, @Kopirovat=0,
|
||||||
|
@KonverzeAtr=NULL, @ExtEd_Poradi=1, @ExtEd_Zalozka=NULL, @ExtEd_BrowseID=NULL, @ExtEd_Atr=NULL, @ExtEd_PrimaEditace=1, @DatPorizeni=@currDat, @DatZmeny=NULL,
|
||||||
|
@TypAtrSQL=N'INT', @ExtEd_BrowseID_DPSN=NULL, @Poznamka=NULL, @Definice=NULL, @Podminka=NULL
|
||||||
12
_sql/col_EvidRozpracOperR_EXT.sql
Normal file
12
_sql/col_EvidRozpracOperR_EXT.sql
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
DECLARE @currDat DATETIME=GETDATE()
|
||||||
|
IF (COL_LENGTH(N'dbo.TabEvidRozpracOperR_EXT', N'_Sarze') IS NULL)
|
||||||
|
EXEC dbo.hp_ImportUzivAtr @Externi=1, @NazevTabulkySys=N'TabEvidRozpracOperR', @NazevAtrSys=N'_Sarze', @Skupina=NULL, @NazevAtrVer=N'<EFBFBD>ar<EFBFBD>e',
|
||||||
|
@NazevAtrVerZkr=N'', @TypAtr=N'NVARCHAR', @MaskaAtr=NULL, @VerejnyAtr=N'A', @SirkaSloupceAtr=12, @SumovatAtr=N'N', @TiskAtr=N'A', @ProcPruhAtr=0, @Kopirovat=0,
|
||||||
|
@KonverzeAtr=NULL, @ExtEd_Poradi=1, @ExtEd_Zalozka=NULL, @ExtEd_BrowseID=NULL, @ExtEd_Atr=NULL, @ExtEd_PrimaEditace=1, @DatPorizeni=@currDat, @DatZmeny=NULL,
|
||||||
|
@TypAtrSQL=N'NVARCHAR(30)', @ExtEd_BrowseID_DPSN=NULL, @Poznamka=NULL, @Definice=NULL, @Podminka=NULL
|
||||||
|
|
||||||
|
IF (COL_LENGTH(N'dbo.TabEvidRozpracOperR_EXT', N'_KoefMnoz') IS NULL)
|
||||||
|
EXEC dbo.hp_ImportUzivAtr @Externi=1, @NazevTabulkySys=N'TabEvidRozpracOperR', @NazevAtrSys=N'_KoefMnoz', @Skupina=NULL, @NazevAtrVer=N'Koeficient mno<6E>stv<74>',
|
||||||
|
@NazevAtrVerZkr=N'', @TypAtr=N'NUMERIC', @MaskaAtr=N'0.####', @VerejnyAtr=N'A', @SirkaSloupceAtr=12, @SumovatAtr=N'A', @TiskAtr=N'A', @ProcPruhAtr=0, @Kopirovat=0,
|
||||||
|
@KonverzeAtr=NULL, @ExtEd_Poradi=1, @ExtEd_Zalozka=NULL, @ExtEd_BrowseID=NULL, @ExtEd_Atr=NULL, @ExtEd_PrimaEditace=1, @DatPorizeni=@currDat, @DatZmeny=NULL,
|
||||||
|
@TypAtrSQL=N'NUMERIC(19,6)', @ExtEd_BrowseID_DPSN=NULL, @Poznamka=NULL, @Definice=NULL, @Podminka=NULL
|
||||||
14
_sql/col_KmenZbozi_EXT.sql
Normal file
14
_sql/col_KmenZbozi_EXT.sql
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
DECLARE @currDat DATETIME=GETDATE()
|
||||||
|
IF (COL_LENGTH(N'dbo.TabKmenZbozi_EXT', N'_Vyroba_ZadavatSarzi') IS NULL)
|
||||||
|
EXEC dbo.hp_ImportUzivAtr @Externi=1, @NazevTabulkySys=N'TabKmenZbozi', @NazevAtrSys=N'_Vyroba_ZadavatSarzi', @Skupina=N'Plugin Pek<65>rna', @NazevAtrVer=N'V<EFBFBD>roba - vy<76>adovat <20>ar<61>i',
|
||||||
|
@NazevAtrVerZkr=N'V<EFBFBD>dej <20>ar<61>e', @TypAtr=N'BIT', @MaskaAtr=NULL, @VerejnyAtr=N'A', @SirkaSloupceAtr=8, @SumovatAtr=N'N', @TiskAtr=N'A', @ProcPruhAtr=0, @Kopirovat=0,
|
||||||
|
@KonverzeAtr=NULL, @ExtEd_Poradi=1, @ExtEd_Zalozka=NULL, @ExtEd_BrowseID=NULL, @ExtEd_Atr=NULL, @ExtEd_PrimaEditace=1, @DatPorizeni=@currDat, @DatZmeny=NULL,
|
||||||
|
@TypAtrSQL=N'BIT', @ExtEd_BrowseID_DPSN=NULL, @Poznamka=N'P<EFBFBD>i v<>deji ve v<>rob<6F> vy<76>adovat zad<61>n<EFBFBD> <20>ar<61>e', @Definice=NULL, @Podminka=NULL, @HromadneZmenyAtr=1
|
||||||
|
|
||||||
|
|
||||||
|
IF (COL_LENGTH(N'dbo.TabKmenZbozi_EXT', N'_Prevod_PosledniSarze') IS NULL)
|
||||||
|
EXEC dbo.hp_ImportUzivAtr @Externi=1, @NazevTabulkySys=N'TabKmenZbozi', @NazevAtrSys=N'_Prevod_PosledniSarze', @Skupina=N'Plugin Pek<65>rna', @NazevAtrVer=N'V<EFBFBD>roba - posledn<64> p<>eveden<65> <20>ar<61>e',
|
||||||
|
@NazevAtrVerZkr=N'Posledn<EFBFBD> <20>ar<61>e', @TypAtr=N'NVARCHAR', @MaskaAtr=NULL, @VerejnyAtr=N'A', @SirkaSloupceAtr=14, @SumovatAtr=N'N', @TiskAtr=N'A', @ProcPruhAtr=0, @Kopirovat=0,
|
||||||
|
@KonverzeAtr=NULL, @ExtEd_Poradi=1, @ExtEd_Zalozka=NULL, @ExtEd_BrowseID=NULL, @ExtEd_Atr=NULL, @ExtEd_PrimaEditace=1, @DatPorizeni=@currDat, @DatZmeny=NULL,
|
||||||
|
@TypAtrSQL=N'NVARCHAR(100)', @ExtEd_BrowseID_DPSN=NULL, @Poznamka=N'<EFBFBD>ar<EFBFBD>e z posledn<64> p<>evodky-p<><70>jemky mezi sklady', @Definice=NULL, @Podminka=NULL, @HromadneZmenyAtr=1
|
||||||
|
|
||||||
51
_sql/col_PohybyZbozi_EXT.sql
Normal file
51
_sql/col_PohybyZbozi_EXT.sql
Normal file
@ -0,0 +1,51 @@
|
|||||||
|
DECLARE @errMsg NVARCHAR(255), @currDat DATETIME=GETDATE()
|
||||||
|
IF (COL_LENGTH(N'dbo.TabPohybyZbozi_EXT', N'_HDCAPI_PHident') IS NULL)
|
||||||
|
EXEC dbo.hp_ImportUzivAtr @Externi=1, @NazevTabulkySys=N'TabPohybyZbozi', @NazevAtrSys=N'_HDCAPI_PHident', @Skupina=N'Plugin Pek<65>rna', @NazevAtrVer=N'HDC API PH identifik<69>tor pro sync',
|
||||||
|
@NazevAtrVerZkr=N'HDCAPIPHid', @TypAtr=N'INT', @MaskaAtr=NULL, @VerejnyAtr=N'N', @SirkaSloupceAtr=8, @SumovatAtr=N'N', @TiskAtr=N'A', @ProcPruhAtr=0, @Kopirovat=1,
|
||||||
|
@KonverzeAtr=NULL, @ExtEd_Poradi=1, @ExtEd_Zalozka=NULL, @ExtEd_BrowseID=NULL, @ExtEd_Atr=NULL, @ExtEd_PrimaEditace=1, @DatPorizeni=@currDat, @DatZmeny=NULL,
|
||||||
|
@TypAtrSQL=N'INT', @ExtEd_BrowseID_DPSN=NULL, @Poznamka=NULL, @Definice=NULL, @Podminka=NULL
|
||||||
|
|
||||||
|
IF (COL_LENGTH(N'dbo.TabPohybyZbozi_EXT', N'_Vyroba_PrikazMnoz') IS NULL)
|
||||||
|
EXEC dbo.hp_ImportUzivAtr @Externi=1, @NazevTabulkySys=N'TabPohybyZbozi', @NazevAtrSys=N'_Vyroba_PrikazMnoz', @Skupina=N'Plugin Pek<65>rna', @NazevAtrVer=N'Mno<EFBFBD>stv<EFBFBD> po<70>adavku z p<><70>kazu (norma)',
|
||||||
|
@NazevAtrVerZkr=N'P<EFBFBD><EFBFBD>kaz mno<6E>.', @TypAtr=N'NUMERIC', @MaskaAtr=NULL, @VerejnyAtr=N'N', @SirkaSloupceAtr=8, @SumovatAtr=N'A', @TiskAtr=N'A', @ProcPruhAtr=0, @Kopirovat=0,
|
||||||
|
@KonverzeAtr=NULL, @ExtEd_Poradi=1, @ExtEd_Zalozka=NULL, @ExtEd_BrowseID=NULL, @ExtEd_Atr=NULL, @ExtEd_PrimaEditace=1, @DatPorizeni=@currDat, @DatZmeny=NULL,
|
||||||
|
@TypAtrSQL=N'NUMERIC(19,6)', @ExtEd_BrowseID_DPSN=NULL, @Poznamka=NULL, @Definice=NULL, @Podminka=NULL
|
||||||
|
|
||||||
|
IF (COL_LENGTH(N'dbo.TabPohybyZbozi_EXT', N'_Vyroba_Sarze') IS NULL)
|
||||||
|
EXEC dbo.hp_ImportUzivAtr @Externi=1, @NazevTabulkySys=N'TabPohybyZbozi', @NazevAtrSys=N'_Vyroba_Sarze', @Skupina=N'Plugin Pek<65>rna', @NazevAtrVer=N'<EFBFBD>ar<EFBFBD>e materi<72>lu',
|
||||||
|
@NazevAtrVerZkr=N'<EFBFBD>ar<EFBFBD>e', @TypAtr=N'NVARCHAR', @MaskaAtr=NULL, @VerejnyAtr=N'N', @SirkaSloupceAtr=12, @SumovatAtr=N'N', @TiskAtr=N'A', @ProcPruhAtr=0, @Kopirovat=0,
|
||||||
|
@KonverzeAtr=NULL, @ExtEd_Poradi=1, @ExtEd_Zalozka=NULL, @ExtEd_BrowseID=NULL, @ExtEd_Atr=NULL, @ExtEd_PrimaEditace=1, @DatPorizeni=@currDat, @DatZmeny=NULL,
|
||||||
|
@TypAtrSQL=N'NVARCHAR(100)', @ExtEd_BrowseID_DPSN=NULL, @Poznamka=NULL, @Definice=NULL, @Podminka=NULL
|
||||||
|
|
||||||
|
|
||||||
|
IF (COL_LENGTH(N'dbo.TabPohybyZbozi_EXT', N'_Vyroba_PaletList') IS NULL)
|
||||||
|
EXEC dbo.hp_ImportUzivAtr @Externi=1, @NazevTabulkySys=N'TabPohybyZbozi', @NazevAtrSys=N'_Vyroba_PaletList', @Skupina=N'Plugin Pek<65>rna', @NazevAtrVer=N'Paletov<EFBFBD> list',
|
||||||
|
@NazevAtrVerZkr=N'Palet. list', @TypAtr=N'NVARCHAR', @MaskaAtr=NULL, @VerejnyAtr=N'N', @SirkaSloupceAtr=16, @SumovatAtr=N'N', @TiskAtr=N'A', @ProcPruhAtr=0, @Kopirovat=0,
|
||||||
|
@KonverzeAtr=NULL, @ExtEd_Poradi=1, @ExtEd_Zalozka=NULL, @ExtEd_BrowseID=NULL, @ExtEd_Atr=NULL, @ExtEd_PrimaEditace=1, @DatPorizeni=@currDat, @DatZmeny=NULL,
|
||||||
|
@TypAtrSQL=N'NVARCHAR(30)', @ExtEd_BrowseID_DPSN=NULL, @Poznamka=NULL, @Definice=NULL, @Podminka=NULL
|
||||||
|
|
||||||
|
IF (COL_LENGTH(N'dbo.TabPohybyZbozi_EXT', N'_Mouka_Silo') IS NULL)
|
||||||
|
EXEC dbo.hp_ImportUzivAtr @Externi=1, @NazevTabulkySys=N'TabPohybyZbozi', @NazevAtrSys=N'_Mouka_Silo', @Skupina=N'Plugin Pek<65>rna', @NazevAtrVer=N'Silo um<75>st<73>n<EFBFBD> mouky',
|
||||||
|
@NazevAtrVerZkr=N'Silo', @TypAtr=N'SMALLINT', @MaskaAtr=NULL, @VerejnyAtr=N'A', @SirkaSloupceAtr=12, @SumovatAtr=N'N', @TiskAtr=N'A', @ProcPruhAtr=0, @Kopirovat=0,
|
||||||
|
@KonverzeAtr=NULL, @ExtEd_Poradi=1, @ExtEd_Zalozka=NULL, @ExtEd_BrowseID=NULL, @ExtEd_Atr=NULL, @ExtEd_PrimaEditace=1, @DatPorizeni=@currDat, @DatZmeny=NULL,
|
||||||
|
@TypAtrSQL=N'SMALLINT', @ExtEd_BrowseID_DPSN=NULL, @Poznamka=NULL, @Definice=NULL, @Podminka=NULL
|
||||||
|
|
||||||
|
IF (COL_LENGTH(N'dbo.TabPohybyZbozi_EXT', N'_Vyroba_MnozSouhrVydej') IS NULL)
|
||||||
|
EXEC dbo.hp_ImportUzivAtr @Externi=1, @NazevTabulkySys=N'TabPohybyZbozi', @NazevAtrSys=N'_Vyroba_MnozSouhrVydej', @Skupina=N'Plugin Pek<65>rna', @NazevAtrVer=N'Mno<EFBFBD>stv<EFBFBD> zapsan<61> na souhrnnou v<>dejku',
|
||||||
|
@NazevAtrVerZkr=N'Mn.souhr.v<>dej', @TypAtr=N'NUMERIC', @MaskaAtr=NULL, @VerejnyAtr=N'A', @SirkaSloupceAtr=12, @SumovatAtr=N'A', @TiskAtr=N'A', @ProcPruhAtr=0, @Kopirovat=0,
|
||||||
|
@KonverzeAtr=NULL, @ExtEd_Poradi=1, @ExtEd_Zalozka=NULL, @ExtEd_BrowseID=NULL, @ExtEd_Atr=NULL, @ExtEd_PrimaEditace=1, @DatPorizeni=@currDat, @DatZmeny=NULL,
|
||||||
|
@TypAtrSQL=N'NUMERIC(19,6)', @ExtEd_BrowseID_DPSN=NULL, @Poznamka=NULL, @Definice=NULL, @Podminka=NULL
|
||||||
|
|
||||||
|
/*
|
||||||
|
BEGIN TRY
|
||||||
|
IF (COL_LENGTH(N'dbo.TabPohybyZbozi_EXT', N'_Mouka_Silo') IS NOT NULL)
|
||||||
|
BEGIN
|
||||||
|
DELETE FROM dbo.TabUzivAtr WHERE NazevTabulkySys=N'TabPohybyZbozi' AND NazevAtrSys=N'_Mouka_Silo'
|
||||||
|
IF (COL_LENGTH(N'dbo.TabPohybyZbozi_EXT', N'_Mouka_Silo') IS NOT NULL)
|
||||||
|
ALTER TABLE dbo.TabPohybyZbozi_EXT DROP COLUMN _Mouka_Silo
|
||||||
|
END
|
||||||
|
END TRY
|
||||||
|
BEGIN CATCH
|
||||||
|
SET @errMsg = ERROR_MESSAGE()
|
||||||
|
END CATCH
|
||||||
|
*/
|
||||||
21
_sql/col_TabStavSkladu_EXT.sql
Normal file
21
_sql/col_TabStavSkladu_EXT.sql
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
DECLARE @currDat DATETIME=GETDATE()
|
||||||
|
|
||||||
|
/*
|
||||||
|
IF (COL_LENGTH(N'dbo.TabStavSkladu_EXT', N'_HDCApi_PoslPrevedSarze') IS NULL)
|
||||||
|
EXEC dbo.hp_ImportUzivAtr @Externi=1, @NazevTabulkySys=N'TabStavSkladu', @NazevAtrSys=N'_HDCApi_PoslPrevedSarze', @Skupina=N'HDCDZApi', @NazevAtrVer=N'Posledn<64> p<>eveden<65> <20>ar<61>e',
|
||||||
|
@NazevAtrVerZkr=N'Posl. <20>ar<61>e', @TypAtr=N'NVARCHAR', @MaskaAtr=NULL, @VerejnyAtr=N'V', @SirkaSloupceAtr=16, @SumovatAtr=N'N', @TiskAtr=N'A', @ProcPruhAtr=0, @Kopirovat=0,
|
||||||
|
@KonverzeAtr=NULL, @ExtEd_Poradi=1, @ExtEd_Zalozka=NULL, @ExtEd_BrowseID=NULL, @ExtEd_Atr=NULL, @ExtEd_PrimaEditace=1, @DatPorizeni=@currDat, @DatZmeny=NULL,
|
||||||
|
@TypAtrSQL=N'NVARCHAR(100)', @ExtEd_BrowseID_DPSN=NULL, @Poznamka=N'', @Definice=NULL, @Podminka=NULL, @HromadneZmenyAtr=1
|
||||||
|
*/
|
||||||
|
|
||||||
|
IF (COL_LENGTH(N'dbo.TabStavSkladu_EXT', N'_Prevod_PosledniSarze') IS NULL)
|
||||||
|
EXEC dbo.hp_ImportUzivAtr @Externi=1, @NazevTabulkySys=N'TabStavSkladu', @NazevAtrSys=N'_Prevod_PosledniSarze', @Skupina=N'Plugin Pek<65>rna', @NazevAtrVer=N'V<EFBFBD>roba - posledn<64> p<>eveden<65> <20>ar<61>e',
|
||||||
|
@NazevAtrVerZkr=N'Posledn<EFBFBD> <20>ar<61>e', @TypAtr=N'NVARCHAR', @MaskaAtr=NULL, @VerejnyAtr=N'A', @SirkaSloupceAtr=14, @SumovatAtr=N'N', @TiskAtr=N'A', @ProcPruhAtr=0, @Kopirovat=0,
|
||||||
|
@KonverzeAtr=NULL, @ExtEd_Poradi=1, @ExtEd_Zalozka=NULL, @ExtEd_BrowseID=NULL, @ExtEd_Atr=NULL, @ExtEd_PrimaEditace=1, @DatPorizeni=@currDat, @DatZmeny=NULL,
|
||||||
|
@TypAtrSQL=N'NVARCHAR(100)', @ExtEd_BrowseID_DPSN=NULL, @Poznamka=N'<EFBFBD>ar<EFBFBD>e z posledn<64> p<>evodky-p<><70>jemky mezi sklady', @Definice=NULL, @Podminka=NULL, @HromadneZmenyAtr=1
|
||||||
|
|
||||||
|
IF (COL_LENGTH(N'dbo.TabStavSkladu_EXT', N'_Prevod_PosledniPaletList') IS NULL)
|
||||||
|
EXEC dbo.hp_ImportUzivAtr @Externi=1, @NazevTabulkySys=N'TabStavSkladu', @NazevAtrSys=N'_Prevod_PosledniPaletList', @Skupina=N'Plugin Pek<65>rna', @NazevAtrVer=N'V<EFBFBD>roba - posledn<64> p<>eveden<65> paletov<6F> list',
|
||||||
|
@NazevAtrVerZkr=N'Posledn<EFBFBD> PalList', @TypAtr=N'NVARCHAR', @MaskaAtr=NULL, @VerejnyAtr=N'A', @SirkaSloupceAtr=14, @SumovatAtr=N'N', @TiskAtr=N'A', @ProcPruhAtr=0, @Kopirovat=0,
|
||||||
|
@KonverzeAtr=NULL, @ExtEd_Poradi=1, @ExtEd_Zalozka=NULL, @ExtEd_BrowseID=NULL, @ExtEd_Atr=NULL, @ExtEd_PrimaEditace=1, @DatPorizeni=@currDat, @DatZmeny=NULL,
|
||||||
|
@TypAtrSQL=N'NVARCHAR(100)', @ExtEd_BrowseID_DPSN=NULL, @Poznamka=N'Paletov<EFBFBD> list z posledn<64> p<>evodky-p<><70>jemky mezi sklady', @Definice=NULL, @Podminka=NULL, @HromadneZmenyAtr=1
|
||||||
6
_sql/col_VazbyPrikazu_EXT.sql
Normal file
6
_sql/col_VazbyPrikazu_EXT.sql
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
DECLARE @currDat DATETIME=GETDATE()
|
||||||
|
IF (COL_LENGTH(N'dbo.TabVazbyPrikazu_EXT', N'_MnozstviOdv') IS NULL)
|
||||||
|
EXEC dbo.hp_ImportUzivAtr @Externi=1, @NazevTabulkySys=N'TabVazbyPrikazu', @NazevAtrSys=N'_MnozstviOdv', @Skupina=NULL, @NazevAtrVer=N'Mno<EFBFBD>stv<EFBFBD> odveden<65> na vy<76><79><EFBFBD> p<><70>kaz',
|
||||||
|
@NazevAtrVerZkr=N'Mno<EFBFBD>stv<EFBFBD> odv.', @TypAtr=N'NUMERIC', @MaskaAtr=N'#,##0.###', @VerejnyAtr=N'V', @SirkaSloupceAtr=14, @SumovatAtr=N'A', @TiskAtr=N'A', @ProcPruhAtr=0, @Kopirovat=0,
|
||||||
|
@KonverzeAtr=NULL, @ExtEd_Poradi=1, @ExtEd_Zalozka=NULL, @ExtEd_BrowseID=NULL, @ExtEd_Atr=NULL, @ExtEd_PrimaEditace=1, @DatPorizeni=@currDat, @DatZmeny=NULL,
|
||||||
|
@TypAtrSQL=N'NUMERIC(19,6)', @ExtEd_BrowseID_DPSN=NULL, @Poznamka=NULL, @Definice=NULL, @Podminka=NULL
|
||||||
9
_sql/ef_Bit2Int.sql
Normal file
9
_sql/ef_Bit2Int.sql
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
-- dbo.ef_Bit2Int
|
||||||
|
CREATE FUNCTION dbo.ef_Bit2Int (@inBool BIT) RETURNS TINYINT
|
||||||
|
AS
|
||||||
|
BEGIN
|
||||||
|
|
||||||
|
-- !! funkci neupravujte, bude stejne pregenerovana pri startu pluginu PluginHDCRTN !!
|
||||||
|
|
||||||
|
RETURN CONVERT(tinyint, CASE WHEN @inBool=1 THEN 1 ELSE 0 END)
|
||||||
|
END
|
||||||
30
_sql/ef_DilecGetStroj.sql
Normal file
30
_sql/ef_DilecGetStroj.sql
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
-- dbo.ef_DilecGetStroj
|
||||||
|
CREATE FUNCTION dbo.ef_DilecGetStroj (@IDKmen INT=NULL, @NazevOp NVARCHAR(100)=NULL)
|
||||||
|
RETURNS INT
|
||||||
|
AS
|
||||||
|
BEGIN
|
||||||
|
|
||||||
|
-- !! funkci neupravujte, bude stejne pregenerovana pri startu pluginu PluginHDCRTN !!
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@retVal INT=NULL
|
||||||
|
|
||||||
|
IF (@IDKmen IS NULL)
|
||||||
|
RETURN @retVal
|
||||||
|
SET @NazevOp = ISNULL(@NazevOp, N'')
|
||||||
|
|
||||||
|
|
||||||
|
IF (@NazevOp<>N'')
|
||||||
|
BEGIN
|
||||||
|
IF 1=(SELECT COUNT(ID) FROM dbo.TabPostup WHERE Dilec=@IDKmen AND ZmenaDo IS NULL AND IDStroje IS NOT NULL AND Nazev LIKE @NazevOp + N'%')
|
||||||
|
SELECT @retVal=IDStroje FROM dbo.TabPostup WHERE Dilec=@IDKmen AND ZmenaDo IS NULL AND IDStroje IS NOT NULL AND Nazev LIKE @NazevOp + N'%'
|
||||||
|
END
|
||||||
|
ELSE
|
||||||
|
BEGIN
|
||||||
|
IF 1=(SELECT COUNT(ID) FROM dbo.TabPostup WHERE Dilec=@IDKmen AND ZmenaDo IS NULL AND IDStroje IS NOT NULL)
|
||||||
|
SELECT @retVal=IDStroje FROM dbo.TabPostup WHERE Dilec=@IDKmen AND ZmenaDo IS NULL AND IDStroje IS NOT NULL
|
||||||
|
END
|
||||||
|
|
||||||
|
RETURN @retVal
|
||||||
|
|
||||||
|
END
|
||||||
25
_sql/ef_GetDatumASmenu.sql
Normal file
25
_sql/ef_GetDatumASmenu.sql
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
-- dbo.ef_GetDatumASmenu
|
||||||
|
CREATE FUNCTION dbo.ef_GetDatumASmenu (@Datum DATETIME)
|
||||||
|
RETURNS @retTab TABLE (Datum DATE, Smena TINYINT)
|
||||||
|
AS
|
||||||
|
BEGIN
|
||||||
|
|
||||||
|
-- !! funkci neupravujte, bude stejne pregenerovana pri startu pluginu PluginHDCRTN !!
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@hod TINYINT,
|
||||||
|
@lDatum DATE,
|
||||||
|
@smena SMALLINT
|
||||||
|
|
||||||
|
SET @lDatum = @Datum
|
||||||
|
SET @hod = DATEPART(hour, @Datum)
|
||||||
|
SET @smena = IIF(@hod BETWEEN 0 AND 5, -1, IIF(@hod BETWEEN 6 AND 13, 1, IIF(@hod BETWEEN 14 AND 21, 2, 3)))
|
||||||
|
IF (@smena=-1)
|
||||||
|
BEGIN
|
||||||
|
SET @smena = 3
|
||||||
|
SET @lDatum = DATEADD(day, -1, @Datum)
|
||||||
|
END
|
||||||
|
INSERT @retTab SELECT @lDatum, @smena
|
||||||
|
RETURN
|
||||||
|
|
||||||
|
END
|
||||||
9
_sql/ef_Kmen_VratPocetKsVKartonu.sql
Normal file
9
_sql/ef_Kmen_VratPocetKsVKartonu.sql
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
-- dbo.ef_Kmen_VratPocetKsVKartonu
|
||||||
|
CREATE FUNCTION dbo.ef_Kmen_VratPocetKsVKartonu (@IDKmenZbozi INT)
|
||||||
|
RETURNS NUMERIC(19,6)
|
||||||
|
AS
|
||||||
|
BEGIN
|
||||||
|
DECLARE @retVal NUMERIC(19,6)
|
||||||
|
SET @retVal = ISNULL( (SELECT PocetOdvozene FROM dbo.TabMJZbozi WHERE IDKmenZbozi=@IDKmenZbozi AND KodMJ1=N'KA' AND KodMJ2=N'ks'), 0)
|
||||||
|
RETURN @retVal
|
||||||
|
END
|
||||||
40
_sql/ef_Vyroba_GenerujRozpadCasu.sql
Normal file
40
_sql/ef_Vyroba_GenerujRozpadCasu.sql
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
-- ef_Vyroba_GenerujRozpadCasu
|
||||||
|
CREATE FUNCTION dbo.ef_Vyroba_GenerujRozpadCasu (
|
||||||
|
@datStart DATETIME=NULL,
|
||||||
|
@numOfDays SMALLINT=3,
|
||||||
|
@stepMinutes SMALLINT=60
|
||||||
|
)
|
||||||
|
|
||||||
|
/*
|
||||||
|
RETURNS TABLE
|
||||||
|
AS
|
||||||
|
RETURN
|
||||||
|
(
|
||||||
|
WITH Recursive_CTE AS
|
||||||
|
(
|
||||||
|
SELECT dbo.hf_TruncDate(ISNULL(@datStart, GETDATE())) AS TimestampUtc
|
||||||
|
UNION ALL
|
||||||
|
SELECT DATEADD(MINUTE, @stepMinutes, TimestampUtc)
|
||||||
|
FROM Recursive_CTE
|
||||||
|
WHERE TimestampUtc < DATEADD(ms, -3, dbo.hf_TruncDate(DATEADD(DAY, @numOfDays, DATEADD(DAY, 1, ISNULL(@datStart, GETDATE())))))
|
||||||
|
)
|
||||||
|
SELECT *
|
||||||
|
FROM Recursive_CTE
|
||||||
|
)
|
||||||
|
*/
|
||||||
|
RETURNS @Result TABLE (TimestampUtc DATETIME)
|
||||||
|
AS
|
||||||
|
BEGIN
|
||||||
|
DECLARE @currentTimestamp DATETIME = dbo.hf_TruncDate(ISNULL(@datStart, GETDATE()));
|
||||||
|
DECLARE @endTimestamp DATETIME = DATEADD(ms, -3, dbo.hf_TruncDate(DATEADD(DAY, @numOfDays, DATEADD(DAY, 1, ISNULL(@datStart, GETDATE())))));
|
||||||
|
|
||||||
|
WHILE @currentTimestamp <= @endTimestamp
|
||||||
|
BEGIN
|
||||||
|
INSERT INTO @Result (TimestampUtc)
|
||||||
|
VALUES (@currentTimestamp);
|
||||||
|
|
||||||
|
SET @currentTimestamp = DATEADD(MINUTE, @stepMinutes, @currentTimestamp);
|
||||||
|
END;
|
||||||
|
|
||||||
|
RETURN;
|
||||||
|
END
|
||||||
43
_sql/ef_Vyroba_VratCisloSarze.sql
Normal file
43
_sql/ef_Vyroba_VratCisloSarze.sql
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
-- dbo.ef_Vyroba_VratCisloSarze
|
||||||
|
CREATE FUNCTION dbo.ef_Vyroba_VratCisloSarze (@Datum DATETIME=NULL, @Typ TINYINT=1, @iso BIT=1)
|
||||||
|
RETURNS NVARCHAR(5)
|
||||||
|
AS
|
||||||
|
BEGIN
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@smena TINYINT=0,
|
||||||
|
@pracDen NCHAR(1)=N'',
|
||||||
|
@tyden NCHAR(2)=N'',
|
||||||
|
@retVal NVARCHAR(5),
|
||||||
|
@den TINYINT,
|
||||||
|
@NYden TINYINT
|
||||||
|
|
||||||
|
|
||||||
|
SET @Datum = ISNULL(@Datum, GETDATE())
|
||||||
|
SELECT @smena=Smena, @Datum=Datum FROM dbo.ef_GetDatumASmenu (@Datum)
|
||||||
|
|
||||||
|
SET @NYden = DATEPART(weekday, '20240101') -- pondeli
|
||||||
|
|
||||||
|
--SET @pracDen = CONVERT(nchar(1), (DATEPART(weekday, @Datum) + @@DATEFIRST - 2) % 7 + 1)
|
||||||
|
SET @den = DATEPART(weekday, @Datum)
|
||||||
|
IF (@NYden=1) -- system ma nastaveno pondeli=1, Rootvin potrebuje nedele=1
|
||||||
|
BEGIN
|
||||||
|
IF (@den=7) -- nedele=7 -> nedele=1
|
||||||
|
SET @den = 1
|
||||||
|
ELSE
|
||||||
|
SET @den = @den + 1
|
||||||
|
END
|
||||||
|
SET @pracDen = CONVERT(nchar(1), @den)
|
||||||
|
|
||||||
|
|
||||||
|
IF (@typ=1)
|
||||||
|
SET @tyden = IIF(@iso=0, FORMAT(DATEPART(week, @Datum), '00', 'cs-cz'), FORMAT(DATEPART(iso_week, @Datum), '00', 'cs-cz'))
|
||||||
|
|
||||||
|
IF (@typ=2)
|
||||||
|
SET @tyden = IIF(@iso=0, FORMAT(DATEPART(week, @Datum), '00', 'en-gb'), FORMAT(DATEPART(iso_week, @Datum), '00', 'en-gb'))
|
||||||
|
|
||||||
|
|
||||||
|
SET @retVal = RIGHT(FORMAT(@Datum, 'yy'), 1) + @tyden + @pracDen + FORMAT(@smena, '0')
|
||||||
|
RETURN @retVal
|
||||||
|
|
||||||
|
END
|
||||||
108
_sql/ef_Vyroba_VratNovyPaletovyList.sql
Normal file
108
_sql/ef_Vyroba_VratNovyPaletovyList.sql
Normal file
@ -0,0 +1,108 @@
|
|||||||
|
-- dbo.ef_Vyroba_VratNovyPaletovyList
|
||||||
|
CREATE FUNCTION dbo.ef_Vyroba_VratNovyPaletovyList (@typ TINYINT=1, @radaVPr NVARCHAR(10)=N'', @cisloOrg INT=NULL, @idKmenZbozi INT=NULL)
|
||||||
|
RETURNS NVARCHAR(50)
|
||||||
|
AS
|
||||||
|
BEGIN
|
||||||
|
|
||||||
|
-- funkci neupravujte, stejne bude prepsana pri spusteni pluginu pro Planovani nebo Windows sluzbou HDC API
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@retVal NVARCHAR(15),
|
||||||
|
@bi BIGINT,
|
||||||
|
@maska NVARCHAR(100)=NULL,
|
||||||
|
@delka TINYINT,
|
||||||
|
@sz NVARCHAR(3)
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@skladNestd NVARCHAR(30)=N'211',
|
||||||
|
@radaPrijemNestd NVARCHAR(3)='270' -- vyrobky PEK
|
||||||
|
|
||||||
|
|
||||||
|
SET @bi = 1 + ISNULL( (SELECT MAX(TRY_PARSE(VyrCislo AS BIGINT)) FROM dbo.TabVyrCisPrikaz WHERE VyrCislo LIKE N'5%'), 0)
|
||||||
|
IF (@bi = 1)
|
||||||
|
SET @bi = 5200001
|
||||||
|
SET @retVal = CONVERT(nvarchar, @bi)
|
||||||
|
|
||||||
|
IF EXISTS(SELECT 1 FROM Information_schema.Routines WHERE Specific_schema=N'dbo' AND specific_name=N'ef_Vyroba_VratNovyPaletovyList1' AND Routine_Type=N'FUNCTION')
|
||||||
|
SET @retVal = dbo.ef_Vyroba_VratNovyPaletovyList1 (@typ, @radaVPr, @cisloOrg, @idKmenZbozi)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
|
||||||
|
IF (@typ=2)
|
||||||
|
BEGIN
|
||||||
|
SET @delka = 0
|
||||||
|
IF (@radaVPr<>N'')
|
||||||
|
BEGIN
|
||||||
|
SET @maska=(SELECT MaskaProGenVyrCis FROM dbo.TabRadyPrikazu WHERE Rada=@radaVPr)
|
||||||
|
IF (@maska IS NOT NULL)
|
||||||
|
IF (@maska LIKE N'#%C')
|
||||||
|
SET @delka = CONVERT(tinyint, LEFT(SUBSTRING(@maska, 2, 50), CHARINDEX(N'C', SUBSTRING(@maska, 2, 50))-1))
|
||||||
|
END
|
||||||
|
|
||||||
|
SELECT @bi = 1 + MAX(ISNULL(TRY_PARSE(VyrCislo AS BIGINT), 0)) FROM dbo.TabVyrCisPrikaz
|
||||||
|
SET @retVal = CONVERT(nvarchar, @bi)
|
||||||
|
|
||||||
|
IF (@maska IS NULL) AND (@typ=2)
|
||||||
|
BEGIN
|
||||||
|
SELECT @bi = 1 + MAX(ISNULL(TRY_PARSE(VyrCislo AS BIGINT), 23000000)) FROM dbo.TabVyrCisPrikaz
|
||||||
|
SET @retVal = CONVERT(nvarchar, @bi)
|
||||||
|
END
|
||||||
|
ELSE
|
||||||
|
IF (@delka>0)
|
||||||
|
SET @retVal = REPLICATE(N'0', @delka - LEN(@retVal)) + @retVal
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
IF (@typ=3)
|
||||||
|
BEGIN
|
||||||
|
SET @bi = 1 + ISNULL( (SELECT MAX(TRY_PARSE(CisloPalety AS BIGINT)) FROM dbo._TabVyroba_Palety WHERE Typ=1), 23000000)
|
||||||
|
SET @retVal = CONVERT(nvarchar, @bi)
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
IF (@typ=1) -- prijem nestandard
|
||||||
|
BEGIN
|
||||||
|
SELECT @bi = 1 + ISNULL(MAX(x.num), 8200000)
|
||||||
|
FROM (SELECT TRY_PARSE(vcs.Nazev1 AS BIGINT) AS num FROM dbo.TabPohybyZbozi p
|
||||||
|
INNER JOIN dbo.TabDokladyZbozi d ON (d.ID=p.IDDoklad)
|
||||||
|
INNER JOIN dbo.TabStavSkladu s ON (s.ID=p.IDZboSklad) INNER JOIN dbo.TabKmenZbozi k ON (k.ID=s.IDKmenZbozi)
|
||||||
|
INNER JOIN dbo.TabVyrCP vcp ON (vcp.IDPolozkaDokladu=p.ID) INNER JOIN dbo.TabVyrCS vcs ON (vcs.IDStavSkladu=p.IDZboSklad)
|
||||||
|
WHERE k.Nazev1 LIKE N'%nestandart%' AND CONVERT(nvarchar, p.Poznamka)=N'P<><50>jem nestandard' AND d.DruhPohybuZbo=0
|
||||||
|
AND d.IDSklad=@skladNestd AND ISNUMERIC(vcs.Nazev1)=1 AND d.RadaDokladu=@radaPrijemNestd
|
||||||
|
) x
|
||||||
|
SET @retVal = CONVERT(nvarchar, @bi)
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
IF (@idKmenZbozi IS NOT NULL) AND (@typ<>1)
|
||||||
|
BEGIN
|
||||||
|
SELECT @sz=SkupZbo FROM dbo.TabKmenZbozi WHERE ID=@idKmenZbozi
|
||||||
|
|
||||||
|
IF (@sz LIKE N'7%' AND @sz NOT LIKE N'70%')
|
||||||
|
SET @bi = 1 + ISNULL( (SELECT MAX(TRY_PARSE(CisloPalety AS BIGINT)) FROM dbo._TabVyroba_Palety WHERE Typ=1), 5200000)
|
||||||
|
|
||||||
|
IF (@sz LIKE N'6%')
|
||||||
|
SET @bi = 1 + ISNULL( (SELECT MAX(TRY_PARSE(CisloPalety AS BIGINT)) FROM dbo._TabVyroba_Palety WHERE Typ=2), 6200000)
|
||||||
|
|
||||||
|
IF (@sz LIKE N'1%')
|
||||||
|
SET @bi = 1 + ISNULL( (SELECT MAX(TRY_PARSE(CisloPalety AS BIGINT)) FROM dbo._TabVyroba_Palety WHERE Typ=3), 7200000)
|
||||||
|
|
||||||
|
IF (@sz LIKE N'60%')
|
||||||
|
SET @bi = 1 + ISNULL( (SELECT MAX(TRY_PARSE(CisloPalety AS BIGINT)) FROM dbo._TabVyroba_Palety WHERE Typ=4), 8200000)
|
||||||
|
|
||||||
|
SET @retVal = CONVERT(nvarchar, @bi)
|
||||||
|
END
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
RETURN @retVal
|
||||||
|
|
||||||
|
|
||||||
|
END
|
||||||
117
_sql/ep_HDC_PZ_ZapisPolozek.sql
Normal file
117
_sql/ep_HDC_PZ_ZapisPolozek.sql
Normal file
@ -0,0 +1,117 @@
|
|||||||
|
-- dbo.ep_HDC_PZ_ZapisPolozek
|
||||||
|
CREATE PROCEDURE dbo.ep_HDC_PZ_ZapisPolozek
|
||||||
|
@typ INT,
|
||||||
|
@idDokladOZDst INT=NULL
|
||||||
|
|
||||||
|
AS
|
||||||
|
|
||||||
|
SET NOCOUNT ON
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@idPol INT,
|
||||||
|
@idPHIdent INT,
|
||||||
|
@idPHIdent2 INT,
|
||||||
|
@sz NVARCHAR(3),
|
||||||
|
@rc NVARCHAR(30),
|
||||||
|
@idKmen INT,
|
||||||
|
@idStav INT,
|
||||||
|
@idPZ INT,
|
||||||
|
@idVCK INT,
|
||||||
|
@idVCS INT,
|
||||||
|
@idVCP INT,
|
||||||
|
@sklad NVARCHAR(30),
|
||||||
|
@mnoz NUMERIC(19,6),
|
||||||
|
@paletList NVARCHAR(50),
|
||||||
|
@sarze NVARCHAR(50)
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@dpz TINYINT,
|
||||||
|
@cisOrg INT,
|
||||||
|
@vstC TINYINT,
|
||||||
|
@jednM INT,
|
||||||
|
@dzMena NVARCHAR(3),
|
||||||
|
@dzKurz NUMERIC(19,6),
|
||||||
|
@dzKurzE NUMERIC(19,6)
|
||||||
|
|
||||||
|
IF OBJECT_ID(N'tempdb..#TabTempUziv', N'U') IS NULL
|
||||||
|
CREATE TABLE #TabTempUziv (Tabulka NVARCHAR(255) NOT NULL, SCOPE_IDENTITY INT NULL, Datum DATETIME NULL)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
IF (@typ=1) -- zapis z dbo._TabVyroba_Objednavky do dokladu výdejky
|
||||||
|
BEGIN
|
||||||
|
IF (@idDokladOZDst IS NULL)
|
||||||
|
RETURN
|
||||||
|
IF OBJECT_ID(N'tempdb..#TabZapisPolozekOZ', N'U') IS NULL
|
||||||
|
RETURN
|
||||||
|
|
||||||
|
SELECT @cisOrg=CisloOrg, @dpz=DruhPohybuZbo, @vstC=VstupniCena, @jednM=JednotkaMeny, @dzMena=Mena, @dzKurz=Kurz, @dzKurzE=KurzEuro, @sklad=IDSklad
|
||||||
|
FROM dbo.TabDokladyZbozi WHERE ID=@idDokladOZDst
|
||||||
|
|
||||||
|
DECLARE c CURSOR LOCAL FOR
|
||||||
|
SELECT IDPolozky FROM #TabZapisPolozekOZ ORDER BY ID
|
||||||
|
OPEN c
|
||||||
|
WHILE (1=1)
|
||||||
|
BEGIN
|
||||||
|
FETCH NEXT FROM c INTO @idPol
|
||||||
|
IF (@@FETCH_STATUS<>0) BREAK
|
||||||
|
|
||||||
|
SELECT @idPHIdent=IdPHIdent, @idPHIdent2=IdPHIdent2, @idKmen=IDKmenZbozi, @sz=SkupZbo, @rc=RegCis, @mnoz=Mnozstvi, @paletList=PaletovyList, @sarze=Sarze
|
||||||
|
FROM dbo._TabVyroba_Objednavky WHERE ID=@idPol
|
||||||
|
SET @paletList = ISNULL(@paletList, N'')
|
||||||
|
|
||||||
|
IF (@idKmen IS NOT NULL)
|
||||||
|
BEGIN
|
||||||
|
SET @idStav = (SELECT ID FROM dbo.TabStavSkladu WHERE IDSklad=@sklad AND IDKmenZbozi=@idKmen)
|
||||||
|
IF (@idStav IS NULL)
|
||||||
|
EXEC dbo.hp_InsertStavSkladu @IDKmen=@idKmen, @IDSklad=@sklad, @IDZboSklad=@idStav OUT
|
||||||
|
IF (@idStav IS NOT NULL)
|
||||||
|
BEGIN
|
||||||
|
EXEC dbo.hp_InsertPolozkyOZ @Ident=@idPZ OUT, @IDDoklad=@idDokladOZDst, @DruhPohybu=@dpz, @CisloOrg=@cisOrg, @IDZboSklad=@idStav, @Mena=@dzMena, @Kurz=@dzKurz, @KurzEuro=@dzKurzE,
|
||||||
|
@JednotkaMeny=@jednM, @SazbaSD=NULL, @SazbaDPH=NULL, @ZakazanoDPH=NULL, @VstupniCena=@vstC, @Mnozstvi=@mnoz, @PovolitDuplicitu=1
|
||||||
|
IF (@idPZ IS NOT NULL)
|
||||||
|
BEGIN
|
||||||
|
UPDATE dbo._TabVyroba_Objednavky SET Blokovano=1 WHERE ID=@idPol
|
||||||
|
|
||||||
|
UPDATE dbo.TabPohybyZbozi_EXT SET _HDCAPI_PHident=@idPol WHERE ID=@idPZ
|
||||||
|
IF (@@ROWCOUNT=0)
|
||||||
|
INSERT dbo.TabPohybyZbozi_EXT (ID, _HDCAPI_PHident) SELECT @idPZ, @idPol
|
||||||
|
|
||||||
|
UPDATE dbo.TabPohybyZbozi_EXT SET _Vyroba_Sarze=@sarze, _Vyroba_PaletList=@paletList WHERE ID=@idPZ
|
||||||
|
|
||||||
|
/*
|
||||||
|
SET @idVCK=(SELECT ID FROM dbo.TabVyrCK WHERE IDKmenZbozi=@idKmen AND Nazev1=@paletList)
|
||||||
|
IF (@idVCK IS NULL)
|
||||||
|
EXEC dbo.hp_OZInsertVyrCK @IDVyrCK=@idVCK OUT, @IDKmenZbozi=@idKmen, @Selectem=0, @Nazev1=@paletList
|
||||||
|
IF (@idVCK IS NOT NULL)
|
||||||
|
BEGIN
|
||||||
|
SET @idVCS = (SELECT ID FROM dbo.TabVyrCS WHERE IDVyrCK=@idVCK AND IDStavSkladu=@idStav AND Nazev1=@paletList)
|
||||||
|
IF (@idVCS IS NULL)
|
||||||
|
EXEC dbo.hp_OZInsertVyrCS @IDVyrCS=@idVCS OUT, @IDVyrCK=@idVCK, @IDZboSklad=@idStav, @Nazev1=@paletList
|
||||||
|
IF (@idVCS IS NOT NULL)
|
||||||
|
BEGIN
|
||||||
|
INSERT dbo.TabVyrCP (IDPolozkaDokladu, IDVyrCis, Nazev, Mnozstvi) SELECT @idPZ, @idVCS, @sarze, @mnoz
|
||||||
|
SET @idVCP = SCOPE_IDENTITY()
|
||||||
|
END
|
||||||
|
END -- @idVCK
|
||||||
|
*/
|
||||||
|
|
||||||
|
INSERT dbo._TabVyroba_Objednavky_Pol (IDHlava, IDDokladOZ, IDPohybOZ, IDVyrCP, Mnozstvi, Sarze) VALUES (@idPol, @idDokladOZDst, @idPZ, @idVCP, @mnoz, @paletList)
|
||||||
|
|
||||||
|
END -- @idPZ
|
||||||
|
END -- @idStav
|
||||||
|
END -- @idKmen
|
||||||
|
|
||||||
|
UPDATE dbo._TabVyroba_Objednavky SET Blokovano=0,
|
||||||
|
MnozKVydeji=Mnozstvi - ISNULL( (SELECT SUM(Mnozstvi) FROM dbo._TabVyroba_Objednavky_Pol WHERE IDHlava=@idPol), 0)
|
||||||
|
WHERE ID=@idPol
|
||||||
|
|
||||||
|
END
|
||||||
|
CLOSE c
|
||||||
|
DEALLOCATE c
|
||||||
|
|
||||||
|
END
|
||||||
68
_sql/ep_P01.sql
Normal file
68
_sql/ep_P01.sql
Normal file
@ -0,0 +1,68 @@
|
|||||||
|
/* HELIOS iNuvio | NTB-T | 2024-06-04 11:20:15 */
|
||||||
|
|
||||||
|
SET NOCOUNT ON
|
||||||
|
DECLARE @GUID BINARY(16),@Id INT,@Popis NVARCHAR(255),@UP NVARCHAR(255),@Parametry NVARCHAR(255),@IdBrowse INT,@Poznamka NVARCHAR(MAX),@Autor NVARCHAR(255),@DatPorizeni DATETIME,@Zmenil NVARCHAR(255),@DatZmeny DATETIME,@ParamHe INT,@Typ INT,@BidNavBrowse INT,@TextNavBrowse INT,@ZobrUkonceni BIT,@VerejnaAkce BIT,@ObnovitPoUkonceni BIT,@eServer BIT, @ZobrazitEditorPar BIT, @ObsluznyPlugin NVARCHAR(255),
|
||||||
|
@BlokovaniEditoru SMALLINT,@TextBrowse INT,@CyklickyEditor BIT,@SelectoTvurceVlastnikId BIT,@VstupneID NVARCHAR(255),@PosunPoZaznamech INT,@TechnickyPopis NVARCHAR(MAX),@Napoveda NVARCHAR(255),@Hotkey INT,@NavaznaAkce INT,@NavaznaAkceGUID BINARY(16),@Skupina NVARCHAR(255),@NazevPodmenu NVARCHAR(255),@PoradiVPodmenu INT,@err NVARCHAR(2047),@IdExtKom INT,@GUIDFiltr BINARY(16),@IDFiltr INT,@ErrStr NVARCHAR(2047),@SkriptPredSpustenim NVARCHAR(MAX),@Automatizace BIT
|
||||||
|
|
||||||
|
|
||||||
|
SELECT @Id=9999, @Popis=N'Spec - realizace p<><70>jemky (po)', @UP=N'dbo.ep_P01', @Parametry=N'', @IdBrowse=990990
|
||||||
|
SELECT @Poznamka=N'CREATE PROCEDURE dbo.ep_P01
|
||||||
|
@IDDoklad INT
|
||||||
|
AS
|
||||||
|
|
||||||
|
|
||||||
|
-- dopln<6C>k realizace skladovych prijmu, vola se na konci procesu realizace prijmu.
|
||||||
|
-- Vstupni parametr ID dokladu, vystup neni
|
||||||
|
|
||||||
|
|
||||||
|
SET NOCOUNT ON
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@rada NVARCHAR(3),
|
||||||
|
@idSklad NVARCHAR(30)
|
||||||
|
|
||||||
|
|
||||||
|
SELECT @rada=RadaDokladu, @idSklad=IDSklad
|
||||||
|
FROM dbo.TabDokladyZbozi WHERE ID=@IDDoklad
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- pro reseni HDC Strakonice, moznost dalsi slepe procedury
|
||||||
|
IF OBJECT_ID(N''dbo.ep_P01_HDC1'', N''P'') IS NOT NULL
|
||||||
|
EXEC sp_executesql N''EXEC dbo.ep_P01_HDC1 @IDDoklad'', N''@IDDoklad INT'', @IDDoklad
|
||||||
|
|
||||||
|
-- pro reseni HDC Strakonice, moznost dalsi slepe procedury pro API
|
||||||
|
IF OBJECT_ID(N''dbo.ep_P01_HDCDZApi1'', N''P'') IS NOT NULL
|
||||||
|
EXEC sp_executesql N''EXEC dbo.ep_P01_HDCDZApi1 @IDDoklad'', N''@IDDoklad INT'', @IDDoklad
|
||||||
|
|
||||||
|
|
||||||
|
'
|
||||||
|
SELECT @Autor=N'Import HDC',@DatPorizeni='20240604 11:20:15.450',@Zmenil=NULL,@DatZmeny=NULL,@ParamHe=0,@Typ=0,@BidNavBrowse=NULL,@TextNavBrowse=NULL,@ZobrUkonceni=0,@VerejnaAkce=0
|
||||||
|
SELECT @NavaznaAkceGUID=CAST(NULL AS UNIQUEIDENTIFIER),@BlokovaniEditoru=NULL,@TextBrowse=990990,@CyklickyEditor=0,@SelectoTvurceVlastnikId=0,@VstupneID=NULL,@TechnickyPopis=NULL
|
||||||
|
SELECT @Napoveda=NULL,@Hotkey=0,@GUID=CAST(N'D2A38F2E-BB3C-41CC-AFF2-B3F63D9A0720' AS UNIQUEIDENTIFIER),@Skupina=N'',@NazevPodmenu=N'',@PoradiVPodmenu=0,@GUIDFiltr=CAST(NULL AS UNIQUEIDENTIFIER)
|
||||||
|
SELECT @eServer=0,@ZobrazitEditorPar=1,@ObsluznyPlugin=N'',@PosunPoZaznamech=0,@ObnovitPoUkonceni=1,@SkriptPredSpustenim=NULL,@Automatizace=0
|
||||||
|
|
||||||
|
SET @NavaznaAkce = NULL
|
||||||
|
SET @IDFiltr = NULL
|
||||||
|
|
||||||
|
|
||||||
|
IF NOT EXISTS(SELECT * FROM dbo.TabExtKom WHERE [UP]=N'dbo.ep_P01')
|
||||||
|
INSERT dbo.TabExtKom ([GUID], Popis, [UP], Parametry, IdBrowse, Poznamka, Autor,
|
||||||
|
DatPorizeni, Zmenil, DatZmeny, ParamHe, Typ, BidNavBrowse, TextNavBrowse,
|
||||||
|
ZobrUkonceni, VerejnaAkce, BlokovaniEditoru, TextBrowse, CyklickyEditor,
|
||||||
|
SelectoTvurceVlastnikId, VstupneID, TechnickyPopis, Napoveda, Hotkey,
|
||||||
|
NavaznaAkce, Skupina, NazevPodmenu, PoradiVPodmenu, IDFiltr,
|
||||||
|
eServer, ZobrazitEditorPar, ObsluznyPlugin, PosunPoZaznamech,
|
||||||
|
ObnovitPoUkonceni, SkriptPredSpustenim, Automatizace)
|
||||||
|
VALUES (@GUID, @Popis, @UP, @Parametry, @IdBrowse, @Poznamka, @Autor, @DatPorizeni,
|
||||||
|
@Zmenil, @DatZmeny, @ParamHe, @Typ, @BidNavBrowse, @TextNavBrowse, @ZobrUkonceni,
|
||||||
|
@VerejnaAkce, @BlokovaniEditoru, @TextBrowse, @CyklickyEditor, @SelectoTvurceVlastnikId,
|
||||||
|
@VstupneID, @TechnickyPopis, @Napoveda, @Hotkey, @NavaznaAkce, @Skupina, @NazevPodmenu,
|
||||||
|
@PoradiVPodmenu, @IDFiltr, @eServer, @ZobrazitEditorPar, @ObsluznyPlugin, @PosunPoZaznamech,
|
||||||
|
@ObnovitPoUkonceni, @SkriptPredSpustenim, @Automatizace)
|
||||||
|
|
||||||
|
SET @IdExtKom=(SELECT Id FROM dbo.TabExtKom WHERE GUID=@GUID)
|
||||||
|
DELETE dbo.TabExtKomPar WHERE IdExtKom=@IdExtKom
|
||||||
|
|
||||||
|
|
||||||
|
IF OBJECT_ID(N'dbo.ep_P01', N'P') IS NULL
|
||||||
160
_sql/ep_P01_HDC1.sql
Normal file
160
_sql/ep_P01_HDC1.sql
Normal file
@ -0,0 +1,160 @@
|
|||||||
|
-- dbo.ep_P01_HDC1
|
||||||
|
CREATE PROCEDURE dbo.ep_P01_HDC1
|
||||||
|
@IDDoklad INT
|
||||||
|
AS
|
||||||
|
|
||||||
|
-- HD Consulting Strakonice, T. Buzin
|
||||||
|
-- !! proceduru neupravujte, bude stejne pregenerovana pri startu pluginu pro pekarnu nebo Windows sluzby HDCDZApi !!
|
||||||
|
-- vola se na konci procesu realizace prijemky (po uskutecneni prijmu ale pred konecnym COMMIT TRAN)
|
||||||
|
-- nastaveni skladu lze ovlivnit pres #HDCTabDefiniceProP01 (HlavniSkladMat NVARCHAR(30), TechnologickySklad NVARCHAR(30), SkladVyrobaPekarna NVARCHAR(30) )
|
||||||
|
|
||||||
|
-- pred finalizaci prijemky smaz vyrobni cisla (sarze hlida aplikace ProHoldingu, ale zapis si sarze do ext.info skladove karty
|
||||||
|
-- puvodni prirazeni VC k polozkam dokladu zapis do pomocne tabulice _hdc_PZ_PuvodniVC
|
||||||
|
|
||||||
|
|
||||||
|
SET NOCOUNT ON
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@errMsg NVARCHAR(500),
|
||||||
|
@bChyba BIT,
|
||||||
|
@iTemp INT
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@radaTechPrijem NVARCHAR(30)=N'251',
|
||||||
|
@sklTechnolog NVARCHAR(30),
|
||||||
|
@sklMatHlavni NVARCHAR(30),
|
||||||
|
@sklPekarna NVARCHAR(30)
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@idDZDst INT,
|
||||||
|
@cOrg INT,
|
||||||
|
@dpz TINYINT,
|
||||||
|
@dpzOld TINYINT,
|
||||||
|
@datReal DATETIME,
|
||||||
|
@dzDatum DATETIME,
|
||||||
|
@dzMena NVARCHAR(3),
|
||||||
|
@dzKurz NUMERIC(19,6),
|
||||||
|
@dzKurzE NUMERIC(19,6),
|
||||||
|
@jednM INT,
|
||||||
|
@vstC TINYINT,
|
||||||
|
@radaDokl NVARCHAR(3),
|
||||||
|
@idSklad NVARCHAR(30),
|
||||||
|
@idSkladOld NVARCHAR(30),
|
||||||
|
@strChyba NVARCHAR(max)=N''
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@idPZ INT,
|
||||||
|
@idPZOld INT,
|
||||||
|
@idPZNew INT,
|
||||||
|
@idSS INT,
|
||||||
|
@idKZ INT,
|
||||||
|
@idVCP INT,
|
||||||
|
@vyrCis NVARCHAR(100),
|
||||||
|
@poslVyrCis NVARCHAR(100),
|
||||||
|
@popisVC NVARCHAR(100), -- paletovy list
|
||||||
|
@moukaSilo SMALLINT,
|
||||||
|
@mnoz NUMERIC(19,6),
|
||||||
|
@mnozVCP NUMERIC(19,6),
|
||||||
|
@sz NVARCHAR(3),
|
||||||
|
@nazev1 NVARCHAR(100)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
IF OBJECT_ID(N'tempdb..#HDCTabDefiniceProP01', N'U') IS NOT NULL
|
||||||
|
SELECT TOP(1) @sklMatHlavni=HlavniSkladMat, @sklPekarna=SkladVyrobaPekarna, @sklTechnolog=TechnologickySklad FROM #HDCTabDefiniceProP01
|
||||||
|
IF (@sklMatHlavni IS NULL)
|
||||||
|
SELECT @sklMatHlavni=Cislo FROM dbo.TabStrom WHERE Nazev=N'Hlavn<EFBFBD> sklad - Materi<72>l'
|
||||||
|
IF (@sklTechnolog IS NULL)
|
||||||
|
SELECT @sklTechnolog=Cislo FROM dbo.TabStrom WHERE Nazev LIKE N'Technolog%ne<6E><65>%' AND CisloStr LIKE N'2%'
|
||||||
|
IF (@sklPekarna IS NULL)
|
||||||
|
SELECT @sklPekarna=Cislo FROM dbo.TabStrom WHERE Nazev LIKE N'V<EFBFBD>roba - Pek<65>rna'
|
||||||
|
DROP TABLE IF EXISTS #HDCTabDefiniceProP01
|
||||||
|
|
||||||
|
|
||||||
|
SELECT @dpz=DruhPohybuZbo, @radaDokl=RadaDokladu, @idSklad=IDSklad, @vstC=VstupniCena, @dzMena=Mena, @dzKurz=Kurz, @dzKurzE=KurzEuro,
|
||||||
|
@jednM=JednotkaMeny, @cOrg=CisloOrg, @dzDatum=DatPorizeni, @datReal=DatRealizace
|
||||||
|
FROM dbo.TabDokladyZbozi WHERE ID=@IDDoklad
|
||||||
|
|
||||||
|
|
||||||
|
MERGE dbo._hdc_PZ_PuvodniVC AS T
|
||||||
|
USING dbo.TabPohybyZbozi AS S ON (S.ID=T.IDPohybZbozi)
|
||||||
|
WHEN MATCHED AND T.IDDoklad IS NULL THEN UPDATE SET T.IDDoklad=S.IDDoklad;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- na hlavnim sklade - prijemky a storna prijmu na hlavnim skladu - kopie puvodnich VC
|
||||||
|
IF (@radaDokl IN (N'251', N'259', N'261', N'269')) AND (@idSklad=@sklMatHlavni)
|
||||||
|
BEGIN
|
||||||
|
INSERT dbo._hdc_PZ_PuvodniVC (IDPohybZbozi, IDDoklad, IDZboSklad, VyrCis, IDVyrCis, Mnozstvi, Sarze, PaletovyList, IDUmisteni)
|
||||||
|
SELECT p.ID, p.IDDoklad, p.IDZboSklad, vcp.Nazev, vcp.IDVyrCis, vcp.Mnozstvi, vcp.Nazev, vcs.Nazev1, p.IDUmisteni
|
||||||
|
FROM dbo.TabPohybyZbozi p
|
||||||
|
INNER JOIN dbo.TabVyrCP vcp ON (vcp.IDPolozkaDokladu=p.ID)
|
||||||
|
INNER JOIN dbo.TabVyrCS vcs ON (vcs.ID=vcp.IDVyrCis)
|
||||||
|
WHERE p.IDDoklad=@IDDoklad
|
||||||
|
ORDER BY p.Poradi, vcp.ID
|
||||||
|
-- smaz vyrobni cisla, jejich evidenci vede ProHolding
|
||||||
|
DELETE FROM dbo.TabVyrCP WHERE IDPolozkaDokladu IN (SELECT ID FROM dbo.TabPohybyZbozi WHERE IDDoklad=@IDDoklad)
|
||||||
|
SET @iTemp = ISNULL( (SELECT MAX(ID) FROM dbo.TabVyrCP), 0)
|
||||||
|
DBCC CHECKIDENT (TabVyrCP, RESEED, @iTemp)
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- prevodka/prijemka na sklad Pekarna
|
||||||
|
-- zapis posledni prevedene sarze
|
||||||
|
IF (@dpz=0) AND (@radaDokl=N'281')
|
||||||
|
BEGIN
|
||||||
|
DECLARE p CURSOR LOCAL FOR
|
||||||
|
SELECT p.ID, p.IDZboSklad, s.IDKmenZbozi, p.IDOldPolozka
|
||||||
|
FROM dbo.TabPohybyZbozi p
|
||||||
|
INNER JOIN dbo.TabStavSkladu s ON (s.ID=p.IDZboSklad)
|
||||||
|
INNER JOIN dbo.TabKmenZbozi k ON (k.ID=s.IDKmenZbozi)
|
||||||
|
WHERE p.IDDoklad=@IDDoklad
|
||||||
|
AND k.Sluzba=0
|
||||||
|
ORDER BY p.Poradi
|
||||||
|
OPEN p
|
||||||
|
WHILE (1=1)
|
||||||
|
BEGIN
|
||||||
|
FETCH NEXT FROM p INTO @idPZ, @idSS, @idKZ, @idPZOld
|
||||||
|
IF (@@FETCH_STATUS<>0) BREAK
|
||||||
|
|
||||||
|
SET @vyrCis = (SELECT ISNULL(peN._Vyroba_Sarze, peO._Vyroba_Sarze)
|
||||||
|
FROM dbo.TabPohybyZbozi_EXT peN, dbo.TabPohybyZbozi_EXT peO WHERE peN.ID=@idPZ AND peO.ID=@idPZOld)
|
||||||
|
IF (@vyrCis IS NOT NULL)
|
||||||
|
BEGIN
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM dbo.TabPohybyZbozi_EXT WHERE ID=@idPZ)
|
||||||
|
INSERT dbo.TabPohybyZbozi_EXT (ID) VALUES (@idPZ)
|
||||||
|
UPDATE dbo.TabPohybyZbozi_EXT SET _Vyroba_Sarze=@vyrCis WHERE ID=@idPZ
|
||||||
|
END
|
||||||
|
-- zapis posledni prevedenou sarzi
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM dbo.TabStavSkladu_EXT WHERE ID=@idSS)
|
||||||
|
INSERT dbo.TabStavSkladu_EXT (ID) VALUES (@idSS)
|
||||||
|
UPDATE dbo.TabStavSkladu_EXT SET _Prevod_PosledniSarze=@vyrCis WHERE ID=@idSS
|
||||||
|
|
||||||
|
|
||||||
|
SET @popisVC = (SELECT ISNULL(peN._Vyroba_PaletList, peO._Vyroba_PaletList)
|
||||||
|
FROM dbo.TabPohybyZbozi_EXT peN, dbo.TabPohybyZbozi_EXT peO WHERE peN.ID=@idPZ AND peO.ID=@idPZOld)
|
||||||
|
IF (@popisVC IS NOT NULL)
|
||||||
|
BEGIN
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM dbo.TabPohybyZbozi_EXT WHERE ID=@idPZ)
|
||||||
|
INSERT dbo.TabPohybyZbozi_EXT (ID) VALUES (@idPZ)
|
||||||
|
UPDATE dbo.TabPohybyZbozi_EXT SET _Vyroba_PaletList=@popisVC WHERE ID=@idPZ
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
SET @moukaSilo = (SELECT ISNULL(peN._Mouka_Silo, peO._Mouka_Silo)
|
||||||
|
FROM dbo.TabPohybyZbozi_EXT peN, dbo.TabPohybyZbozi_EXT peO WHERE peN.ID=@idPZ AND peO.ID=@idPZOld)
|
||||||
|
IF (@moukaSilo IS NOT NULL)
|
||||||
|
BEGIN
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM dbo.TabPohybyZbozi_EXT WHERE ID=@idPZ)
|
||||||
|
INSERT dbo.TabPohybyZbozi_EXT (ID) VALUES (@idPZ)
|
||||||
|
UPDATE dbo.TabPohybyZbozi_EXT SET _Mouka_Silo=@moukaSilo WHERE ID=@idPZ
|
||||||
|
END
|
||||||
|
|
||||||
|
END
|
||||||
|
CLOSE p
|
||||||
|
DEALLOCATE p
|
||||||
|
END -- @radaDokl 281
|
||||||
|
|
||||||
67
_sql/ep_P03.sql
Normal file
67
_sql/ep_P03.sql
Normal file
@ -0,0 +1,67 @@
|
|||||||
|
/* HELIOS iNuvio | NTB-T | 2024-06-04 11:20:15 */
|
||||||
|
|
||||||
|
SET NOCOUNT ON
|
||||||
|
DECLARE @GUID BINARY(16),@Id INT,@Popis NVARCHAR(255),@UP NVARCHAR(255),@Parametry NVARCHAR(255),@IdBrowse INT,@Poznamka NVARCHAR(MAX),@Autor NVARCHAR(255),@DatPorizeni DATETIME,@Zmenil NVARCHAR(255),@DatZmeny DATETIME,@ParamHe INT,@Typ INT,@BidNavBrowse INT,@TextNavBrowse INT,@ZobrUkonceni BIT,@VerejnaAkce BIT,@ObnovitPoUkonceni BIT,@eServer BIT, @ZobrazitEditorPar BIT, @ObsluznyPlugin NVARCHAR(255),
|
||||||
|
@BlokovaniEditoru SMALLINT,@TextBrowse INT,@CyklickyEditor BIT,@SelectoTvurceVlastnikId BIT,@VstupneID NVARCHAR(255),@PosunPoZaznamech INT,@TechnickyPopis NVARCHAR(MAX),@Napoveda NVARCHAR(255),@Hotkey INT,@NavaznaAkce INT,@NavaznaAkceGUID BINARY(16),@Skupina NVARCHAR(255),@NazevPodmenu NVARCHAR(255),@PoradiVPodmenu INT,@err NVARCHAR(2047),@IdExtKom INT,@GUIDFiltr BINARY(16),@IDFiltr INT,@ErrStr NVARCHAR(2047),@SkriptPredSpustenim NVARCHAR(MAX),@Automatizace BIT
|
||||||
|
|
||||||
|
|
||||||
|
SELECT @Id=9998, @Popis=N'Spec - realizace p<><70>jemky (p<>ed)', @UP=N'dbo.ep_P03', @Parametry=N'', @IdBrowse=990990
|
||||||
|
SELECT @Poznamka=N'CREATE PROCEDURE dbo.ep_P03
|
||||||
|
@IDDoklad INT
|
||||||
|
AS
|
||||||
|
|
||||||
|
-- p<>ed realizaci prijemky, po standardnich kontrolach, bezi uz v triggeru
|
||||||
|
|
||||||
|
|
||||||
|
SET NOCOUNT ON
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@rada NVARCHAR(3),
|
||||||
|
@idSklad NVARCHAR(30)
|
||||||
|
|
||||||
|
|
||||||
|
SELECT @rada=RadaDokladu, @idSklad=IDSklad
|
||||||
|
FROM dbo.TabDokladyZbozi WHERE ID=@IDDoklad
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- pro reseni HDC Strakonice, moznost dalsi slepe procedury
|
||||||
|
IF OBJECT_ID(N''dbo.ep_P03_HDC1'', N''P'') IS NOT NULL
|
||||||
|
EXEC sp_executesql N''EXEC dbo.ep_P03_HDC1 @IDDoklad'', N''@IDDoklad INT'', @IDDoklad
|
||||||
|
|
||||||
|
-- pro reseni HDC Strakonice, moznost dalsi slepe procedury pro API
|
||||||
|
IF OBJECT_ID(N''dbo.ep_P03_HDCDZApi1'', N''P'') IS NOT NULL
|
||||||
|
EXEC sp_executesql N''EXEC dbo.ep_P03_HDCDZApi1 @IDDoklad'', N''@IDDoklad INT'', @IDDoklad
|
||||||
|
|
||||||
|
|
||||||
|
'
|
||||||
|
SELECT @Autor=N'Import HDC',@DatPorizeni='20240604 11:20:15.450',@Zmenil=NULL,@DatZmeny=NULL,@ParamHe=0,@Typ=0,@BidNavBrowse=NULL,@TextNavBrowse=NULL,@ZobrUkonceni=0,@VerejnaAkce=0
|
||||||
|
SELECT @NavaznaAkceGUID=CAST(NULL AS UNIQUEIDENTIFIER),@BlokovaniEditoru=NULL,@TextBrowse=990990,@CyklickyEditor=0,@SelectoTvurceVlastnikId=0,@VstupneID=NULL,@TechnickyPopis=NULL
|
||||||
|
SELECT @Napoveda=NULL,@Hotkey=0,@GUID=CAST(N'36FB0DA8-4645-4853-9684-71E17897692A' AS UNIQUEIDENTIFIER),@Skupina=N'',@NazevPodmenu=N'',@PoradiVPodmenu=0,@GUIDFiltr=CAST(NULL AS UNIQUEIDENTIFIER)
|
||||||
|
SELECT @eServer=0,@ZobrazitEditorPar=1,@ObsluznyPlugin=N'',@PosunPoZaznamech=0,@ObnovitPoUkonceni=1,@SkriptPredSpustenim=NULL,@Automatizace=0
|
||||||
|
|
||||||
|
SET @NavaznaAkce = NULL
|
||||||
|
SET @IDFiltr = NULL
|
||||||
|
|
||||||
|
IF NOT EXISTS(SELECT * FROM dbo.TabExtKom WHERE [UP]=N'dbo.ep_P03')
|
||||||
|
INSERT dbo.TabExtKom ([GUID], Popis, [UP], Parametry, IdBrowse, Poznamka, Autor,
|
||||||
|
DatPorizeni, Zmenil, DatZmeny, ParamHe, Typ, BidNavBrowse, TextNavBrowse,
|
||||||
|
ZobrUkonceni, VerejnaAkce, BlokovaniEditoru, TextBrowse, CyklickyEditor,
|
||||||
|
SelectoTvurceVlastnikId, VstupneID, TechnickyPopis, Napoveda, Hotkey,
|
||||||
|
NavaznaAkce, Skupina, NazevPodmenu, PoradiVPodmenu, IDFiltr,
|
||||||
|
eServer, ZobrazitEditorPar, ObsluznyPlugin, PosunPoZaznamech,
|
||||||
|
ObnovitPoUkonceni, SkriptPredSpustenim, Automatizace)
|
||||||
|
VALUES (@GUID, @Popis, @UP, @Parametry, @IdBrowse, @Poznamka, @Autor, @DatPorizeni,
|
||||||
|
@Zmenil, @DatZmeny, @ParamHe, @Typ, @BidNavBrowse, @TextNavBrowse, @ZobrUkonceni,
|
||||||
|
@VerejnaAkce, @BlokovaniEditoru, @TextBrowse, @CyklickyEditor, @SelectoTvurceVlastnikId,
|
||||||
|
@VstupneID, @TechnickyPopis, @Napoveda, @Hotkey, @NavaznaAkce, @Skupina, @NazevPodmenu,
|
||||||
|
@PoradiVPodmenu, @IDFiltr, @eServer, @ZobrazitEditorPar, @ObsluznyPlugin, @PosunPoZaznamech,
|
||||||
|
@ObnovitPoUkonceni, @SkriptPredSpustenim, @Automatizace)
|
||||||
|
|
||||||
|
SET @IdExtKom=(SELECT Id FROM dbo.TabExtKom WHERE GUID=@GUID)
|
||||||
|
DELETE dbo.TabExtKomPar WHERE IdExtKom=@IdExtKom
|
||||||
|
|
||||||
|
|
||||||
|
IF OBJECT_ID(N'dbo.ep_P03', N'P') IS NULL
|
||||||
|
EXEC sp_executesql @Poznamka
|
||||||
|
|
||||||
170
_sql/ep_P03_HDC1.sql
Normal file
170
_sql/ep_P03_HDC1.sql
Normal file
@ -0,0 +1,170 @@
|
|||||||
|
-- dbo.ep_P03_HDC1
|
||||||
|
CREATE PROCEDURE dbo.ep_P03_HDC1
|
||||||
|
@IDDoklad INT
|
||||||
|
AS
|
||||||
|
|
||||||
|
|
||||||
|
-- HD Consulting Strakonice, T. Buzin
|
||||||
|
-- !! proceduru neupravujte, bude stejne pregenerovana pri startu pluginu pro pekarnu nebo Windows sluzby HDCDZApi !!
|
||||||
|
-- vol<6F> se p<>ed realizac<61> p<><70>jemky, po standardn<64>ch kontrol<6F>ch, b<><62><EFBFBD> u<> v triggeru
|
||||||
|
|
||||||
|
|
||||||
|
SET NOCOUNT ON
|
||||||
|
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@errMsg NVARCHAR(500),
|
||||||
|
@iTemp INT
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@rada NVARCHAR(3),
|
||||||
|
@idSklad NVARCHAR(30),
|
||||||
|
@sklMatHlavni NVARCHAR(30)=N'311',
|
||||||
|
@sklPekarna NVARCHAR(30)=N'211',
|
||||||
|
@sklTechnolog NVARCHAR(30),
|
||||||
|
@idPZ INT,
|
||||||
|
@idSS INT,
|
||||||
|
@idKZ INT,
|
||||||
|
@poslVyrCis NVARCHAR(100),
|
||||||
|
@idVCP INT,
|
||||||
|
@vyrCis NVARCHAR(100),
|
||||||
|
@siloMouka SMALLINT
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
IF OBJECT_ID(N'tempdb..#TabExtKom', N'U') IS NULL
|
||||||
|
CREATE TABLE #TabExtKom (Typ TINYINT, Poznamka NVARCHAR(255) )
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
IF OBJECT_ID(N'tempdb..#TabDefiniceProP03', N'U') IS NOT NULL
|
||||||
|
SELECT TOP(1) @sklMatHlavni=HlavniSkladMat, @sklPekarna=SkladVyrobaPekarna, @sklTechnolog=TechnologickySklad FROM #TabDefiniceProP03
|
||||||
|
IF (@sklMatHlavni IS NULL)
|
||||||
|
SELECT @sklMatHlavni=Cislo FROM dbo.TabStrom WHERE Nazev=N'Hlavn<EFBFBD> sklad - Materi<72>l'
|
||||||
|
IF (@sklTechnolog IS NULL)
|
||||||
|
SELECT @sklTechnolog=Cislo FROM dbo.TabStrom WHERE Nazev LIKE N'Technolog%ne<6E><65>%' AND CisloStr LIKE N'2%'
|
||||||
|
IF (@sklPekarna IS NULL)
|
||||||
|
SELECT @sklPekarna=Cislo FROM dbo.TabStrom WHERE Nazev LIKE N'V<EFBFBD>roba - Pek<65>rna'
|
||||||
|
DROP TABLE IF EXISTS #TabDefiniceProP03
|
||||||
|
|
||||||
|
|
||||||
|
SELECT @rada=RadaDokladu, @idSklad=IDSklad
|
||||||
|
FROM dbo.TabDokladyZbozi WHERE ID=@IDDoklad
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- prijemka/prevodka na sklad Pekarna, zkontroluj zda mouka ma umisteni (ext.info pohybu OZ)
|
||||||
|
IF (@rada IN (N'251', N'261', N'281')) AND (@idSklad=@sklPekarna)
|
||||||
|
BEGIN
|
||||||
|
IF EXISTS(SELECT 1 FROM dbo.TabPohybyZbozi p INNER JOIN dbo.TabStavSkladu s ON (s.ID=p.IDZboSklad) INNER JOIN dbo.TabKmenZbozi k ON (k.ID=s.IDKmenZbozi)
|
||||||
|
WHERE p.IDDoklad=@IDDoklad AND k.SkupZbo=N'101' AND k.Nazev1 LIKE N'%mouka%' AND p.IDUmisteni IS NULL)
|
||||||
|
BEGIN
|
||||||
|
SET @errMsg = N'Mouka zadan<61> na p<><70>jemce mus<75> m<>t zad<61>no um<75>st<73>n<EFBFBD> (Silo) ! (ep_P03)'
|
||||||
|
INSERT #TabExtKom (Typ, Poznamka) SELECT 3, LEFT(@errMsg, 255)
|
||||||
|
RAISERROR (@errMsg, 16, 1)
|
||||||
|
END
|
||||||
|
|
||||||
|
-- zapis posledni prevedene sarze na skladovou kartu skladu Pekarna
|
||||||
|
DECLARE p CURSOR LOCAL FOR
|
||||||
|
SELECT p.ID, p.IDZboSklad, s.IDKmenZbozi
|
||||||
|
FROM dbo.TabPohybyZbozi p
|
||||||
|
INNER JOIN dbo.TabStavSkladu s ON (s.ID=p.IDZboSklad)
|
||||||
|
INNER JOIN dbo.TabKmenZbozi k ON (k.ID=s.IDKmenZbozi)
|
||||||
|
WHERE p.IDDoklad=@IDDoklad
|
||||||
|
AND k.Sluzba=0
|
||||||
|
ORDER BY p.Poradi
|
||||||
|
OPEN p
|
||||||
|
WHILE (1=1)
|
||||||
|
BEGIN
|
||||||
|
FETCH NEXT FROM p INTO @idPZ, @idSS, @idKZ
|
||||||
|
IF (@@FETCH_STATUS<>0) BREAK
|
||||||
|
|
||||||
|
SET @poslVyrCis = N''
|
||||||
|
DECLARE v CURSOR LOCAL FOR
|
||||||
|
SELECT ID, Nazev
|
||||||
|
FROM dbo.TabVyrCP
|
||||||
|
WHERE IDPolozkaDokladu=@idPZ
|
||||||
|
AND TRIM(ISNULL(Nazev,N''))<>N''
|
||||||
|
ORDER BY ID
|
||||||
|
OPEN v
|
||||||
|
WHILE (1=1)
|
||||||
|
BEGIN
|
||||||
|
FETCH NEXT FROM v INTO @idVCP, @vyrCis
|
||||||
|
IF (@@FETCH_STATUS<>0) BREAK
|
||||||
|
SET @poslVyrCis = @vyrCis
|
||||||
|
END
|
||||||
|
CLOSE v
|
||||||
|
DEALLOCATE v
|
||||||
|
|
||||||
|
IF (@poslVyrCis<>N'')
|
||||||
|
BEGIN
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM dbo.TabStavSkladu_EXT WHERE ID=@idSS)
|
||||||
|
INSERT dbo.TabStavSkladu_EXT (ID) VALUES (@idSS)
|
||||||
|
UPDATE dbo.TabStavSkladu_EXT SET _Prevod_PosledniSarze=@poslVyrCis WHERE ID=@idSS
|
||||||
|
END
|
||||||
|
|
||||||
|
END
|
||||||
|
CLOSE p
|
||||||
|
DEALLOCATE p
|
||||||
|
|
||||||
|
|
||||||
|
DECLARE c CURSOR LOCAL FOR
|
||||||
|
SELECT p.ID, CONVERT(smallint, u.Kod)
|
||||||
|
FROM dbo.TabPohybyZbozi p
|
||||||
|
INNER JOIN dbo.TabStavSkladu s ON (s.ID=p.IDZboSklad)
|
||||||
|
INNER JOIN dbo.TabKmenZbozi k ON (k.ID=s.IDKmenZbozi)
|
||||||
|
INNER JOIN dbo.TabUmisteni u ON (u.ID=p.IDUmisteni)
|
||||||
|
WHERE p.IDDoklad=@IDDoklad AND k.SkupZbo=N'101' AND k.Nazev1 LIKE N'%mouka%' AND p.IDUmisteni IS NOT NULL
|
||||||
|
OPEN c
|
||||||
|
WHILE (1=1)
|
||||||
|
BEGIN
|
||||||
|
FETCH NEXT FROM c INTO @idPZ, @siloMouka
|
||||||
|
IF (@@FETCH_STATUS<>0) BREAK
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM dbo.TabPohybyZbozi_EXT WHERE ID=@idPZ)
|
||||||
|
INSERT dbo.TabPohybyZbozi_EXT (ID) VALUES (@idPZ)
|
||||||
|
UPDATE dbo.TabPohybyZbozi_EXT SET _Mouka_Silo=@siloMouka WHERE ID=@idPZ
|
||||||
|
END
|
||||||
|
CLOSE c
|
||||||
|
DEALLOCATE c
|
||||||
|
|
||||||
|
|
||||||
|
-- pro info zapis informaci o prevadenych VC
|
||||||
|
INSERT dbo._hdc_PZ_PuvodniVC (IDPohybZbozi, IDDoklad, IDZboSklad, VyrCis, IDVyrCis, Mnozstvi, Sarze, PaletovyList, IDUmisteni)
|
||||||
|
SELECT p.ID, p.IDDoklad, p.IDZboSklad, vcp.Nazev, vcp.IDVyrCis, vcp.Mnozstvi, vcp.Nazev, vcs.Nazev1, p.IDUmisteni
|
||||||
|
FROM dbo.TabPohybyZbozi p
|
||||||
|
INNER JOIN dbo.TabVyrCP vcp ON (vcp.IDPolozkaDokladu=p.ID)
|
||||||
|
INNER JOIN dbo.TabVyrCS vcs ON (vcs.ID=vcp.IDVyrCis)
|
||||||
|
WHERE p.IDDoklad=@IDDoklad
|
||||||
|
ORDER BY p.Poradi, vcp.ID
|
||||||
|
|
||||||
|
-- odstran umisteni, delalo by problem pri vydeji
|
||||||
|
UPDATE dbo.TabPohybyZbozi SET IDUmisteni=NULL WHERE IDDoklad=@IDDoklad
|
||||||
|
-- smaz vyrobni cisla, jejich evidenci vede ProHolding
|
||||||
|
DELETE FROM dbo.TabVyrCP WHERE IDPolozkaDokladu IN (SELECT ID FROM dbo.TabPohybyZbozi WHERE IDDoklad=@IDDoklad)
|
||||||
|
SET @iTemp = ISNULL( (SELECT MAX(ID) FROM dbo.TabVyrCP), 0)
|
||||||
|
DBCC CHECKIDENT (TabVyrCP, RESEED, @iTemp)
|
||||||
|
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- prijemky a storna na hlavni sklad
|
||||||
|
IF (@rada IN (N'251', N'259', N'261', N'269')) AND (@idSklad=@sklMatHlavni)
|
||||||
|
BEGIN
|
||||||
|
INSERT dbo._hdc_PZ_PuvodniVC (IDPohybZbozi, IDDoklad, IDZboSklad, VyrCis, IDVyrCis, Mnozstvi, Sarze, PaletovyList, IDUmisteni)
|
||||||
|
SELECT p.ID, p.IDDoklad, p.IDZboSklad, vcp.Nazev, vcp.IDVyrCis, vcp.Mnozstvi, vcp.Nazev, vcs.Nazev1, p.IDUmisteni
|
||||||
|
FROM dbo.TabPohybyZbozi p
|
||||||
|
INNER JOIN dbo.TabVyrCP vcp ON (vcp.IDPolozkaDokladu=p.ID)
|
||||||
|
INNER JOIN dbo.TabVyrCS vcs ON (vcs.ID=vcp.IDVyrCis)
|
||||||
|
WHERE p.IDDoklad=@IDDoklad
|
||||||
|
ORDER BY p.Poradi, vcp.ID
|
||||||
|
-- odstran umisteni, delalo by problem pri vydeji
|
||||||
|
UPDATE dbo.TabPohybyZbozi SET IDUmisteni=NULL WHERE IDDoklad=@IDDoklad
|
||||||
|
-- smaz vyrobni cisla, jejich evidenci vede ProHolding
|
||||||
|
DELETE FROM dbo.TabVyrCP WHERE IDPolozkaDokladu IN (SELECT ID FROM dbo.TabPohybyZbozi WHERE IDDoklad=@IDDoklad)
|
||||||
|
SET @iTemp = ISNULL( (SELECT MAX(ID) FROM dbo.TabVyrCP), 0)
|
||||||
|
DBCC CHECKIDENT (TabVyrCP, RESEED, @iTemp)
|
||||||
|
END
|
||||||
|
|
||||||
68
_sql/ep_V01.sql
Normal file
68
_sql/ep_V01.sql
Normal file
@ -0,0 +1,68 @@
|
|||||||
|
/* HELIOS iNuvio | NTB-T.Rootvin | 2024-09-18 09:28:15 */
|
||||||
|
|
||||||
|
DECLARE @GUID BINARY(16),@Id INT,@Popis NVARCHAR(255),@UP NVARCHAR(255),@Parametry NVARCHAR(255),@IdBrowse INT,@Poznamka NVARCHAR(MAX),@Autor NVARCHAR(255),@DatPorizeni DATETIME,@Zmenil NVARCHAR(255),@DatZmeny DATETIME,@ParamHe INT,@Typ INT,@BidNavBrowse INT,@TextNavBrowse INT,@ZobrUkonceni BIT,@VerejnaAkce BIT,@ObnovitPoUkonceni BIT,@eServer BIT, @ZobrazitEditorPar BIT, @ObsluznyPlugin NVARCHAR(255),
|
||||||
|
@BlokovaniEditoru SMALLINT,@TextBrowse INT,@CyklickyEditor BIT,@SelectoTvurceVlastnikId BIT,@VstupneID NVARCHAR(255),@PosunPoZaznamech INT,@TechnickyPopis NVARCHAR(MAX),@Napoveda NVARCHAR(255),@Hotkey INT,@NavaznaAkce INT,@NavaznaAkceGUID BINARY(16),@Skupina NVARCHAR(255),@NazevPodmenu NVARCHAR(255),@PoradiVPodmenu INT,@err NVARCHAR(2047),@IdExtKom INT,@GUIDFiltr BINARY(16),@IDFiltr INT,@ErrStr NVARCHAR(2047),@SkriptPredSpustenim NVARCHAR(MAX),@Automatizace BIT
|
||||||
|
|
||||||
|
SELECT @Id=6,@Popis=N'Spec - realizace v<>dejky (po)',@UP=N'dbo.ep_V01',@Parametry=N'',@IdBrowse=990990,@Poznamka=N'CREATE PROCEDURE dbo.ep_V01
|
||||||
|
@IDDoklad INT
|
||||||
|
AS
|
||||||
|
|
||||||
|
SET NOCOUNT ON
|
||||||
|
|
||||||
|
-- dopln<6C>k realizace skladov<6F>ch v<>dej<65>. Vol<6F> se na konci procesu realizace v<>dej<65>. Vstupn<70> parametr ID dokladu, v<>stup nen<65>.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@rada NVARCHAR(3),
|
||||||
|
@idSklad NVARCHAR(30)
|
||||||
|
|
||||||
|
|
||||||
|
SELECT @rada=RadaDokladu, @idSklad=IDSklad
|
||||||
|
FROM dbo.TabDokladyZbozi WHERE ID=@IDDoklad
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- pro reseni HDC Strakonice, moznost dalsi slepe procedury
|
||||||
|
IF OBJECT_ID(N''dbo.ep_V01_HDC1'', N''P'') IS NOT NULL
|
||||||
|
EXEC sp_executesql N''EXEC dbo.ep_V01_HDC1 @IDDoklad'', N''@IDDoklad INT'', @IDDoklad
|
||||||
|
|
||||||
|
',@Autor=N'Import HDC',@DatPorizeni='20240918 09:23:37.193',@Zmenil=NULL,@DatZmeny=NULL,@ParamHe=0,@Typ=0,@BidNavBrowse=NULL,@TextNavBrowse=NULL,@ZobrUkonceni=0,@VerejnaAkce=0,@NavaznaAkceGUID=CAST(NULL AS UNIQUEIDENTIFIER),@BlokovaniEditoru=NULL,@TextBrowse=990990,@CyklickyEditor=0,@SelectoTvurceVlastnikId=0,@VstupneID=NULL,@TechnickyPopis=NULL,@Napoveda=NULL,@Hotkey=0,@GUID=CAST(N'5C642FF2-6E25-4FD8-AB32-F27EC5B249A3' AS UNIQUEIDENTIFIER),@Skupina=N'',@NazevPodmenu=N'',@PoradiVPodmenu=0,@GUIDFiltr=CAST(NULL AS UNIQUEIDENTIFIER),@eServer=0,@ZobrazitEditorPar=1,@ObsluznyPlugin=N'',@PosunPoZaznamech=0,@ObnovitPoUkonceni=0,@SkriptPredSpustenim=NULL,@Automatizace=0
|
||||||
|
IF @NavaznaAkceGUID IS NULL
|
||||||
|
SET @NavaznaAkce = NULL
|
||||||
|
ELSE
|
||||||
|
BEGIN
|
||||||
|
SET @NavaznaAkce=(SELECT Id FROM dbo.TabExtKom WHERE GUID=@NavaznaAkceGUID)
|
||||||
|
IF @NavaznaAkce IS NULL
|
||||||
|
BEGIN
|
||||||
|
SET @err=CAST(CAST(@NavaznaAkceGUID AS UNIQUEIDENTIFIER)AS NVARCHAR(36))
|
||||||
|
SET @ErrStr = dbo.hf_FormatError(75037, @err)
|
||||||
|
RAISERROR(@ErrStr, 16, 1)
|
||||||
|
RETURN
|
||||||
|
END
|
||||||
|
END
|
||||||
|
IF @GUIDFiltr IS NULL
|
||||||
|
SET @IDFiltr = NULL
|
||||||
|
ELSE
|
||||||
|
SELECT @IDFiltr = ID FROM TabFiltr WHERE GUID = @GUIDFiltr
|
||||||
|
|
||||||
|
IF NOT EXISTS(SELECT * FROM dbo.TabExtKom WHERE [UP]=N'dbo.ep_V01')
|
||||||
|
INSERT dbo.TabExtKom (GUID,Popis,UP,Parametry,IdBrowse,Poznamka,Autor,
|
||||||
|
DatPorizeni,Zmenil,DatZmeny,ParamHe,Typ,BidNavBrowse,TextNavBrowse,
|
||||||
|
ZobrUkonceni,VerejnaAkce,BlokovaniEditoru,TextBrowse,CyklickyEditor,
|
||||||
|
SelectoTvurceVlastnikId,VstupneID,TechnickyPopis,Napoveda,Hotkey,
|
||||||
|
NavaznaAkce,Skupina,NazevPodmenu,PoradiVPodmenu,IDFiltr,
|
||||||
|
eServer, ZobrazitEditorPar, ObsluznyPlugin, PosunPoZaznamech,
|
||||||
|
ObnovitPoUkonceni,SkriptPredSpustenim,Automatizace)
|
||||||
|
VALUES (@GUID,@Popis,@UP,@Parametry,@IdBrowse,@Poznamka,@Autor,@DatPorizeni,
|
||||||
|
@Zmenil,@DatZmeny,@ParamHe,@Typ,@BidNavBrowse,@TextNavBrowse,@ZobrUkonceni,
|
||||||
|
@VerejnaAkce,@BlokovaniEditoru,@TextBrowse,@CyklickyEditor,@SelectoTvurceVlastnikId,
|
||||||
|
@VstupneID,@TechnickyPopis,@Napoveda,@Hotkey,@NavaznaAkce,@Skupina,@NazevPodmenu,
|
||||||
|
@PoradiVPodmenu,@IDFiltr,@eServer,@ZobrazitEditorPar,@ObsluznyPlugin,@PosunPoZaznamech,
|
||||||
|
@ObnovitPoUkonceni,@SkriptPredSpustenim,@Automatizace)
|
||||||
|
|
||||||
|
SET @IdExtKom=(SELECT Id FROM dbo.TabExtKom WHERE GUID=@GUID)
|
||||||
|
DELETE dbo.TabExtKomPar WHERE IdExtKom=@IdExtKom
|
||||||
|
|
||||||
|
IF OBJECT_ID(N'dbo.ep_V01', N'P') IS NULL
|
||||||
|
EXEC sp_executesql @Poznamka
|
||||||
93
_sql/ep_V01_HDC1.sql
Normal file
93
_sql/ep_V01_HDC1.sql
Normal file
@ -0,0 +1,93 @@
|
|||||||
|
-- dbo.ep_V01_HDC1
|
||||||
|
CREATE PROCEDURE dbo.ep_V01_HDC1
|
||||||
|
@IDDoklad INT=NULL
|
||||||
|
AS
|
||||||
|
|
||||||
|
SET NOCOUNT ON
|
||||||
|
|
||||||
|
-- HD Consulting Strakonice, T. Buzin
|
||||||
|
-- !! proceduru neupravujte, bude stejne pregenerovana pri startu pluginu pro pekarnu nebo Windows sluzby HDCDZApi !!
|
||||||
|
-- dopln<6C>k realizace skladov<6F>ch v<>dej<65>. Vol<6F> se na konci procesu realizace v<>dej<65>. Vstupn<70> parametr ID dokladu, v<>stup nen<65>.
|
||||||
|
|
||||||
|
|
||||||
|
IF (@IDDoklad IS NULL) -- jistota je jistota
|
||||||
|
RETURN
|
||||||
|
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@errMsg NVARCHAR(500),
|
||||||
|
@iTemp INT,
|
||||||
|
@bChyba BIT,
|
||||||
|
@iChyba INT
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@rada NVARCHAR(3),
|
||||||
|
@dpz TINYINT,
|
||||||
|
@idSklad NVARCHAR(30),
|
||||||
|
@radaPrev NVARCHAR(3),
|
||||||
|
@idSkladPrev NVARCHAR(30),
|
||||||
|
@sklMatHlavni NVARCHAR(30)=N'311',
|
||||||
|
@sklPekarna NVARCHAR(30)=N'211',
|
||||||
|
@sklTechnolog NVARCHAR(30),
|
||||||
|
@paletList NVARCHAR(100),
|
||||||
|
@sarze NVARCHAR(100),
|
||||||
|
@siloMouka SMALLINT,
|
||||||
|
@idPZ INT,
|
||||||
|
@idPZNew INT
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
IF OBJECT_ID(N'tempdb..#TabExtKom', N'U') IS NULL
|
||||||
|
CREATE TABLE #TabExtKom (Typ TINYINT, Poznamka NVARCHAR(255) )
|
||||||
|
|
||||||
|
|
||||||
|
IF OBJECT_ID(N'tempdb..#HDCTabDefiniceProV01', N'U') IS NOT NULL
|
||||||
|
SELECT TOP(1) @sklMatHlavni=HlavniSkladMat, @sklPekarna=SkladVyrobaPekarna, @sklTechnolog=TechnologickySklad FROM #HDCTabDefiniceProV01
|
||||||
|
IF (@sklMatHlavni IS NULL)
|
||||||
|
SELECT @sklMatHlavni=Cislo FROM dbo.TabStrom WHERE Nazev=N'Hlavn<EFBFBD> sklad - Materi<72>l'
|
||||||
|
IF (@sklTechnolog IS NULL)
|
||||||
|
SELECT @sklTechnolog=Cislo FROM dbo.TabStrom WHERE Nazev LIKE N'Technolog%ne<6E><65>%' AND CisloStr LIKE N'2%'
|
||||||
|
IF (@sklPekarna IS NULL)
|
||||||
|
SELECT @sklPekarna=Cislo FROM dbo.TabStrom WHERE Nazev LIKE N'V<EFBFBD>roba - Pek<65>rna'
|
||||||
|
DROP TABLE IF EXISTS #HDCTabDefiniceProV01
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
SELECT @rada=RadaDokladu, @idSklad=IDSklad, @dpz=DruhPohybuZbo, @idSkladPrev=IdSkladPrevodu, @radaPrev=TypPrevodky
|
||||||
|
FROM dbo.TabDokladyZbozi WHERE ID=@IDDoklad
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- pri prevodce na polozky nasledujici prijemky zapis sarzi/paletovy list/cislo sila u mouky
|
||||||
|
IF (@rada=N'231') AND (@idSklad=@sklMatHlavni) AND (@radaPrev=N'281') AND (@idSkladPrev=@sklPekarna)
|
||||||
|
BEGIN
|
||||||
|
DECLARE c CURSOR LOCAL FOR
|
||||||
|
SELECT p.ID, pe._Vyroba_Sarze, pe._Vyroba_PaletList, pe._Mouka_Silo
|
||||||
|
FROM dbo.TabPohybyZbozi p
|
||||||
|
INNER JOIN dbo.TabPohybyZbozi_EXT pe ON (pe.ID=p.ID)
|
||||||
|
INNER JOIN dbo.TabDokladyZbozi d ON (d.ID=p.IDDoklad)
|
||||||
|
WHERE p.IDDoklad=@IDDoklad
|
||||||
|
AND d.RadaDokladu=N'231'
|
||||||
|
OPEN c
|
||||||
|
WHILE (1=1)
|
||||||
|
BEGIN
|
||||||
|
FETCH NEXT FROM c INTO @idPZ, @sarze, @paletList, @siloMouka
|
||||||
|
IF (@@FETCH_STATUS<>0) BREAK
|
||||||
|
|
||||||
|
-- dohledej polozku "protilehle" prijemky
|
||||||
|
SET @idPZNew = (SELECT TOP(1) p.ID FROM dbo.TabPohybyZbozi p INNER JOIN dbo.TabDokladyZbozi d ON (d.ID=p.IDDoklad)
|
||||||
|
WHERE d.RadaDokladu=N'281' AND d.DruhPohybuZbo=0 AND p.IDOldPolozka=@idPZ)
|
||||||
|
IF (@idPZNew IS NOT NULL)
|
||||||
|
BEGIN
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM dbo.TabPohybyZbozi_EXT WHERE ID=@idPZNew)
|
||||||
|
INSERT dbo.TabPohybyZbozi_EXT (ID) VALUES (@idPZNew)
|
||||||
|
UPDATE dbo.TabPohybyZbozi_EXT SET _Vyroba_Sarze=@sarze, _Vyroba_PaletList=@paletList, _Mouka_Silo=@siloMouka WHERE ID=@idPZNew
|
||||||
|
END
|
||||||
|
END
|
||||||
|
CLOSE c
|
||||||
|
DEALLOCATE c
|
||||||
|
END -- vydejka/prevodka 231 z hlavniho skladu na pekarnu
|
||||||
|
|
||||||
67
_sql/ep_V03.sql
Normal file
67
_sql/ep_V03.sql
Normal file
@ -0,0 +1,67 @@
|
|||||||
|
SET NOCOUNT ON
|
||||||
|
DECLARE @GUID BINARY(16),@Id INT,@Popis NVARCHAR(255),@UP NVARCHAR(255),@Parametry NVARCHAR(255),@IdBrowse INT,@Poznamka NVARCHAR(MAX),@Autor NVARCHAR(255),@DatPorizeni DATETIME,@Zmenil NVARCHAR(255),@DatZmeny DATETIME,@ParamHe INT,@Typ INT,@BidNavBrowse INT,@TextNavBrowse INT,@ZobrUkonceni BIT,@VerejnaAkce BIT,@ObnovitPoUkonceni BIT,@eServer BIT, @ZobrazitEditorPar BIT, @ObsluznyPlugin NVARCHAR(255),
|
||||||
|
@BlokovaniEditoru SMALLINT,@TextBrowse INT,@CyklickyEditor BIT,@SelectoTvurceVlastnikId BIT,@VstupneID NVARCHAR(255),@PosunPoZaznamech INT,@TechnickyPopis NVARCHAR(MAX),@Napoveda NVARCHAR(255),@Hotkey INT,@NavaznaAkce INT,@NavaznaAkceGUID BINARY(16),@Skupina NVARCHAR(255),@NazevPodmenu NVARCHAR(255),@PoradiVPodmenu INT,@err NVARCHAR(2047),@IdExtKom INT,@GUIDFiltr BINARY(16),@IDFiltr INT,@ErrStr NVARCHAR(2047),@SkriptPredSpustenim NVARCHAR(MAX),@Automatizace BIT
|
||||||
|
|
||||||
|
|
||||||
|
SELECT @Id=9998, @Popis=N'Spec - realizace v<>dejky (p<>ed)', @UP=N'dbo.ep_V03', @Parametry=N'', @IdBrowse=990990
|
||||||
|
SELECT @Poznamka=N'CREATE PROCEDURE dbo.ep_V03
|
||||||
|
@IDDoklad INT=NULL
|
||||||
|
AS
|
||||||
|
|
||||||
|
-- doplnek realizace skladovych vydeju, vola se na zacatku transakce v prubehu procesu realizace vydeju
|
||||||
|
-- vstupni parametr @ID INT -- ID hlavicky realizovaneho dokladu; vystup neni
|
||||||
|
-- Pozadovana funkcnost: napr. doplneni vazby do vyroby a napocet NV
|
||||||
|
|
||||||
|
|
||||||
|
SET NOCOUNT ON
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@rada NVARCHAR(3),
|
||||||
|
@idSklad NVARCHAR(30)
|
||||||
|
|
||||||
|
|
||||||
|
SELECT @rada=RadaDokladu, @idSklad=IDSklad
|
||||||
|
FROM dbo.TabDokladyZbozi WHERE ID=@IDDoklad
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- pro reseni HDC Strakonice, moznost dalsi slepe procedury
|
||||||
|
IF OBJECT_ID(N''dbo.ep_V03_HDC1'', N''P'') IS NOT NULL
|
||||||
|
EXEC sp_executesql N''EXEC dbo.ep_V03_HDC1 @IDDoklad'', N''@IDDoklad INT'', @IDDoklad
|
||||||
|
|
||||||
|
-- pro reseni HDC Strakonice, moznost dalsi slepe procedury pro API
|
||||||
|
IF OBJECT_ID(N''dbo.ep_V03_HDCDZApi1'', N''P'') IS NOT NULL
|
||||||
|
EXEC sp_executesql N''EXEC dbo.ep_V03_HDCDZApi1 @IDDoklad'', N''@IDDoklad INT'', @IDDoklad
|
||||||
|
|
||||||
|
|
||||||
|
'
|
||||||
|
SELECT @Autor=N'Import HDC',@DatPorizeni='20240822 11:20:15.450',@Zmenil=NULL,@DatZmeny=NULL,@ParamHe=0,@Typ=0,@BidNavBrowse=NULL,@TextNavBrowse=NULL,@ZobrUkonceni=0,@VerejnaAkce=0
|
||||||
|
SELECT @NavaznaAkceGUID=CAST(NULL AS UNIQUEIDENTIFIER),@BlokovaniEditoru=NULL,@TextBrowse=990990,@CyklickyEditor=0,@SelectoTvurceVlastnikId=0,@VstupneID=NULL,@TechnickyPopis=NULL
|
||||||
|
SELECT @Napoveda=NULL,@Hotkey=0,@GUID=CAST(N'CA4BC316-F9EB-4A68-B6D5-ED93911426E2' AS UNIQUEIDENTIFIER),@Skupina=N'',@NazevPodmenu=N'',@PoradiVPodmenu=0,@GUIDFiltr=CAST(NULL AS UNIQUEIDENTIFIER)
|
||||||
|
SELECT @eServer=0,@ZobrazitEditorPar=1,@ObsluznyPlugin=N'',@PosunPoZaznamech=0,@ObnovitPoUkonceni=1,@SkriptPredSpustenim=NULL,@Automatizace=0
|
||||||
|
|
||||||
|
SET @NavaznaAkce = NULL
|
||||||
|
SET @IDFiltr = NULL
|
||||||
|
|
||||||
|
IF NOT EXISTS(SELECT * FROM dbo.TabExtKom WHERE [UP]=N'dbo.ep_V03')
|
||||||
|
INSERT dbo.TabExtKom ([GUID], Popis, [UP], Parametry, IdBrowse, Poznamka, Autor,
|
||||||
|
DatPorizeni, Zmenil, DatZmeny, ParamHe, Typ, BidNavBrowse, TextNavBrowse,
|
||||||
|
ZobrUkonceni, VerejnaAkce, BlokovaniEditoru, TextBrowse, CyklickyEditor,
|
||||||
|
SelectoTvurceVlastnikId, VstupneID, TechnickyPopis, Napoveda, Hotkey,
|
||||||
|
NavaznaAkce, Skupina, NazevPodmenu, PoradiVPodmenu, IDFiltr,
|
||||||
|
eServer, ZobrazitEditorPar, ObsluznyPlugin, PosunPoZaznamech,
|
||||||
|
ObnovitPoUkonceni, SkriptPredSpustenim, Automatizace)
|
||||||
|
VALUES (@GUID, @Popis, @UP, @Parametry, @IdBrowse, @Poznamka, @Autor, @DatPorizeni,
|
||||||
|
@Zmenil, @DatZmeny, @ParamHe, @Typ, @BidNavBrowse, @TextNavBrowse, @ZobrUkonceni,
|
||||||
|
@VerejnaAkce, @BlokovaniEditoru, @TextBrowse, @CyklickyEditor, @SelectoTvurceVlastnikId,
|
||||||
|
@VstupneID, @TechnickyPopis, @Napoveda, @Hotkey, @NavaznaAkce, @Skupina, @NazevPodmenu,
|
||||||
|
@PoradiVPodmenu, @IDFiltr, @eServer, @ZobrazitEditorPar, @ObsluznyPlugin, @PosunPoZaznamech,
|
||||||
|
@ObnovitPoUkonceni, @SkriptPredSpustenim, @Automatizace)
|
||||||
|
|
||||||
|
SET @IdExtKom=(SELECT Id FROM dbo.TabExtKom WHERE GUID=@GUID)
|
||||||
|
DELETE dbo.TabExtKomPar WHERE IdExtKom=@IdExtKom
|
||||||
|
|
||||||
|
|
||||||
|
IF OBJECT_ID(N'dbo.ep_V03', N'P') IS NULL
|
||||||
|
EXEC sp_executesql @Poznamka
|
||||||
|
|
||||||
103
_sql/ep_V03_HDC1.sql
Normal file
103
_sql/ep_V03_HDC1.sql
Normal file
@ -0,0 +1,103 @@
|
|||||||
|
-- dbo.ep_V03_HDC1
|
||||||
|
CREATE PROCEDURE dbo.ep_V03_HDC1
|
||||||
|
@IDDoklad INT
|
||||||
|
AS
|
||||||
|
|
||||||
|
|
||||||
|
-- HD Consulting Strakonice, T. Buzin
|
||||||
|
-- !! proceduru neupravujte, bude stejne pregenerovana pri startu pluginu pro pekarnu nebo Windows sluzby HDCDZApi !!
|
||||||
|
-- doplnek realizace skladov<6F>ch v<>deju, vola se na zacatku transakce v prubehu procesu realizace v<>deju
|
||||||
|
-- vstupni parametr @ID INT -- ID hlavicky realizovaneho dokladu; v<>stup neni
|
||||||
|
-- Pozadovana funkcnost: napr. doplneni vazby do vyroby a napocet NV.
|
||||||
|
|
||||||
|
|
||||||
|
SET NOCOUNT ON
|
||||||
|
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@errMsg NVARCHAR(500),
|
||||||
|
@iTemp INT
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@dpz TINYINT,
|
||||||
|
@rada NVARCHAR(3),
|
||||||
|
@idPZ INT,
|
||||||
|
@idSklad NVARCHAR(30),
|
||||||
|
@idSkladPrev NVARCHAR(30),
|
||||||
|
@radaPrev NVARCHAR(3),
|
||||||
|
@sklMatHlavni NVARCHAR(30)=N'311',
|
||||||
|
@sklPekarna NVARCHAR(30)=N'211',
|
||||||
|
@sklTechnolog NVARCHAR(30),
|
||||||
|
@paletList NVARCHAR(100),
|
||||||
|
@sarze NVARCHAR(100)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
IF OBJECT_ID(N'tempdb..#TabExtKom', N'U') IS NULL
|
||||||
|
CREATE TABLE #TabExtKom (Typ TINYINT, Poznamka NVARCHAR(255) )
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
IF OBJECT_ID(N'tempdb..#HDCTabDefiniceProV03', N'U') IS NOT NULL
|
||||||
|
SELECT TOP(1) @sklMatHlavni=HlavniSkladMat, @sklPekarna=SkladVyrobaPekarna, @sklTechnolog=TechnologickySklad FROM #HDCTabDefiniceProV03
|
||||||
|
IF (@sklMatHlavni IS NULL)
|
||||||
|
SELECT @sklMatHlavni=Cislo FROM dbo.TabStrom WHERE Nazev=N'Hlavn<EFBFBD> sklad - Materi<72>l'
|
||||||
|
IF (@sklTechnolog IS NULL)
|
||||||
|
SELECT @sklTechnolog=Cislo FROM dbo.TabStrom WHERE Nazev LIKE N'Technolog%ne<6E><65>%' AND CisloStr LIKE N'2%'
|
||||||
|
IF (@sklPekarna IS NULL)
|
||||||
|
SELECT @sklPekarna=Cislo FROM dbo.TabStrom WHERE Nazev LIKE N'V<EFBFBD>roba - Pek<65>rna'
|
||||||
|
DROP TABLE IF EXISTS #HDCTabDefiniceProV03
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
SELECT @rada=RadaDokladu, @idSklad=IDSklad, @dpz=DruhPohybuZbo, @idSkladPrev=IdSkladPrevodu, @radaPrev=TypPrevodky
|
||||||
|
FROM dbo.TabDokladyZbozi WHERE ID=@IDDoklad
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- vydejka/prevodka na sklad Pekarna
|
||||||
|
IF (@rada IN (N'231')) AND (@idSklad=@sklMatHlavni) AND (@idSkladPrev=@sklPekarna) AND (@radaPrev=N'281')
|
||||||
|
BEGIN
|
||||||
|
|
||||||
|
-- zapis VC na externi info
|
||||||
|
DECLARE p CURSOR LOCAL FOR
|
||||||
|
SELECT p.ID, vcs.Nazev1, vcp.Nazev
|
||||||
|
FROM dbo.TabPohybyZbozi p
|
||||||
|
INNER JOIN dbo.TabStavSkladu s ON (s.ID=p.IDZboSklad)
|
||||||
|
INNER JOIN dbo.TabKmenZbozi k ON (k.ID=s.IDKmenZbozi)
|
||||||
|
INNER JOIN dbo.TabVyrCP vcp ON (p.ID=vcp.IDPolozkaDokladu)
|
||||||
|
INNER JOIN dbo.TabVyrCS vcs ON (vcs.ID=vcp.IDVyrCis)
|
||||||
|
WHERE p.IDDoklad=@IDDoklad
|
||||||
|
AND k.Sluzba=0
|
||||||
|
ORDER BY p.Poradi
|
||||||
|
OPEN p
|
||||||
|
WHILE (1=1)
|
||||||
|
BEGIN
|
||||||
|
FETCH NEXT FROM p INTO @idPZ, @paletList, @sarze
|
||||||
|
IF (@@FETCH_STATUS<>0) BREAK
|
||||||
|
IF NOT EXISTS (SELECT 1 FROM dbo.TabPohybyZbozi_EXT WHERE ID=@idPZ)
|
||||||
|
INSERT dbo.TabPohybyZbozi_EXT (ID) VALUES (@idPZ)
|
||||||
|
UPDATE dbo.TabPohybyZbozi_EXT SET _Vyroba_Sarze=ISNULL(_Vyroba_Sarze, IIF(_Vyroba_Sarze IS NOT NULL, N',', N'') + @sarze) WHERE ID=@idPZ
|
||||||
|
UPDATE dbo.TabPohybyZbozi_EXT SET _Vyroba_PaletList=ISNULL(_Vyroba_PaletList, IIF(_Vyroba_PaletList IS NOT NULL, N',', N'') + @paletList) WHERE ID=@idPZ
|
||||||
|
END
|
||||||
|
CLOSE p
|
||||||
|
DEALLOCATE p
|
||||||
|
|
||||||
|
-- zapis do pomocne tabulky
|
||||||
|
INSERT dbo._hdc_PZ_PuvodniVC (IDPohybZbozi, IDDoklad, IDZboSklad, VyrCis, IDVyrCis, Mnozstvi, Sarze, PaletovyList, IDUmisteni)
|
||||||
|
SELECT p.ID, p.IDDoklad, p.IDZboSklad, vcp.Nazev, vcp.IDVyrCis, vcp.Mnozstvi, vcp.Nazev, vcs.Nazev1, p.IDUmisteni
|
||||||
|
FROM dbo.TabPohybyZbozi p
|
||||||
|
INNER JOIN dbo.TabVyrCP vcp ON (vcp.IDPolozkaDokladu=p.ID)
|
||||||
|
INNER JOIN dbo.TabVyrCS vcs ON (vcs.ID=vcp.IDVyrCis)
|
||||||
|
WHERE p.IDDoklad=@IDDoklad
|
||||||
|
ORDER BY p.Poradi, vcp.ID
|
||||||
|
-- odstran umisteni, delalo by problem pri vydeji
|
||||||
|
UPDATE dbo.TabPohybyZbozi SET IDUmisteni=NULL WHERE IDDoklad=@IDDoklad
|
||||||
|
|
||||||
|
-- smaz vyrobni cisla, jejich evidenci vede ProHolding
|
||||||
|
DELETE FROM dbo.TabVyrCP WHERE IDPolozkaDokladu IN (SELECT ID FROM dbo.TabPohybyZbozi WHERE IDDoklad=@IDDoklad)
|
||||||
|
SET @iTemp = ISNULL( (SELECT MAX(ID) FROM dbo.TabVyrCP), 0)
|
||||||
|
DBCC CHECKIDENT (TabVyrCP, RESEED, @iTemp)
|
||||||
|
END
|
||||||
|
|
||||||
1551
_sql/ep_Vyroba_Doklady_Micharna.sql
Normal file
1551
_sql/ep_Vyroba_Doklady_Micharna.sql
Normal file
File diff suppressed because it is too large
Load Diff
832
_sql/ep_Vyroba_Doklady_Micharna.sql.bak
Normal file
832
_sql/ep_Vyroba_Doklady_Micharna.sql.bak
Normal file
@ -0,0 +1,832 @@
|
|||||||
|
-- dbo.ep_Vyroba_Doklady_Micharna
|
||||||
|
CREATE PROCEDURE dbo.ep_Vyroba_Doklady_Micharna
|
||||||
|
@idJson INT=NULL
|
||||||
|
AS
|
||||||
|
|
||||||
|
-- !! proceduru neupravujte, bude stejne pregenerovana pri startu pluginu PluginHDCRTN !!
|
||||||
|
|
||||||
|
SET NOCOUNT ON
|
||||||
|
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@tranPred INT,
|
||||||
|
@cnt INT,
|
||||||
|
@errMsg NVARCHAR(500),
|
||||||
|
@bChyba BIT,
|
||||||
|
@iChyba INT,
|
||||||
|
@debugXml XML,
|
||||||
|
@aktDatum DATETIME,
|
||||||
|
@logTyp TINYINT,
|
||||||
|
@logText NVARCHAR(500),
|
||||||
|
@logInt INT,
|
||||||
|
@logStr NVARCHAR(255),
|
||||||
|
@log4Mail BIT=0
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@jsonString NVARCHAR(MAX),
|
||||||
|
@jsonString2 NVARCHAR(MAX),
|
||||||
|
@typDokum NVARCHAR(50),
|
||||||
|
@subtypDokum NVARCHAR(50),
|
||||||
|
@akce NVARCHAR(50)
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@cOrg INT,
|
||||||
|
@sklMat NVARCHAR(30),
|
||||||
|
@sklTechnicky NVARCHAR(30),
|
||||||
|
@sklPek NVARCHAR(30),
|
||||||
|
@radaTechVydej NVARCHAR(30)=N'222',
|
||||||
|
@radaDZVydejka NVARCHAR(3)=N'',
|
||||||
|
@radaDZPrevodV NVARCHAR(3)=N'',
|
||||||
|
@prevodka BIT=0,
|
||||||
|
@parZnak NVARCHAR(20)
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@idPHIdent INT,
|
||||||
|
@idPHIdentBak INT,
|
||||||
|
@idPHIdent2 INT,
|
||||||
|
@idPHObj INT,
|
||||||
|
@idPHObjPol INT
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@datPorizeni DATETIME,
|
||||||
|
@idVPr INT,
|
||||||
|
@radaVPr NVARCHAR(10),
|
||||||
|
@cisloPrikazu NVARCHAR(20),
|
||||||
|
@idVPrNizsi INT,
|
||||||
|
@radaVPrNizsi NVARCHAR(10),
|
||||||
|
@idVPrVyssi INT,
|
||||||
|
@radaVPrVyssi NVARCHAR(10),
|
||||||
|
@dilec INT,
|
||||||
|
@idZakazka INT,
|
||||||
|
@cisloZak NVARCHAR(30),
|
||||||
|
@casStart DATETIME,
|
||||||
|
@vyrobniDen DATETIME,
|
||||||
|
@smena TINYINT,
|
||||||
|
@casStartOld DATETIME,
|
||||||
|
@viskoz TINYINT,
|
||||||
|
@vodaLitry NUMERIC(12,3),
|
||||||
|
@moukaKgNorma NUMERIC(19,6),
|
||||||
|
@moukaKgFin NUMERIC(19,6),
|
||||||
|
@moukaSilo TINYINT,
|
||||||
|
@hmotTesta NUMERIC(19,6),
|
||||||
|
@idMzda INT,
|
||||||
|
@skCasSek INT,
|
||||||
|
@casKonec DATETIME,
|
||||||
|
@idSS INT,
|
||||||
|
@rDoklVyd NVARCHAR(3),
|
||||||
|
@idDZ INT,
|
||||||
|
@idDZDst INT,
|
||||||
|
@idPZ INT,
|
||||||
|
@datumDZ DATETIME,
|
||||||
|
@datReal DATETIME,
|
||||||
|
@menaDZ NVARCHAR(3),
|
||||||
|
@kurzDZ NUMERIC(19,6),
|
||||||
|
@kurzEDZ NUMERIC(19,6),
|
||||||
|
@dpz TINYINT,
|
||||||
|
@jednM INT,
|
||||||
|
@vstC TINYINT
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@idPrKVazby INT,
|
||||||
|
@doklPrV INT,
|
||||||
|
@altPrV NCHAR(1),
|
||||||
|
@oper NVARCHAR(4),
|
||||||
|
@pozice NVARCHAR(100),
|
||||||
|
@idKZ INT,
|
||||||
|
@nazev1 NVARCHAR(100),
|
||||||
|
@idVCK INT,
|
||||||
|
@idVCS INT,
|
||||||
|
@idVCP INT,
|
||||||
|
@sz NVARCHAR(3),
|
||||||
|
@rc NVARCHAR(30),
|
||||||
|
@idUmist INT,
|
||||||
|
@sarze NVARCHAR(30),
|
||||||
|
@paletList NVARCHAR(30),
|
||||||
|
@mnozDilec NUMERIC(19,6),
|
||||||
|
@mnoz NUMERIC(19,6),
|
||||||
|
@mnoz2 NUMERIC(19,6),
|
||||||
|
@mnozVyd NUMERIC(19,6),
|
||||||
|
@mnozReq NUMERIC(19,6),
|
||||||
|
@mnozNew NUMERIC(19,6)
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@idStartStopOp INT,
|
||||||
|
@idPracoviste INT,
|
||||||
|
@idPracovisteOld INT,
|
||||||
|
@idStroj INT,
|
||||||
|
@strojPec NVARCHAR(40),
|
||||||
|
@statusStroje NVARCHAR(50),
|
||||||
|
@idEvROp INT,
|
||||||
|
@idEvROpR INT,
|
||||||
|
@cisZam INT,
|
||||||
|
@idZam INT,
|
||||||
|
@doklPrP INT,
|
||||||
|
@altPrP NCHAR(1)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
DECLARE @TabPHObj TABLE (ID INT NOT NULL, IDPHIdent INT )
|
||||||
|
DECLARE @PrKVazby TABLE (ID INT NOT NULL, Sklad NVARCHAR(30) )
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- vytvor pomocnou tabulku
|
||||||
|
IF OBJECT_ID(N'tempdb..#TabJSONData', N'U') IS NOT NULL
|
||||||
|
DROP TABLE #TabJSONData
|
||||||
|
CREATE TABLE #TabJSONData (ID INT IDENTITY(1,1) NOT NULL, doc NVARCHAR(max))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
IF OBJECT_ID(N'tempdb..#TabDefiniceProMicharnu', N'U') IS NOT NULL
|
||||||
|
SELECT TOP(1) @sklMat=HlavniSkladMat, @sklPek=SkladVyrobaPekarna, @sklTechnicky=TechnologickySklad, @radaTechVydej=RadaTechnologickyVydej
|
||||||
|
FROM #TabDefiniceProMicharnu
|
||||||
|
IF (@sklMat IS NULL)
|
||||||
|
SELECT @sklMat=Cislo FROM dbo.TabStrom WHERE Nazev=N'Hlavn<EFBFBD> sklad - Materi<72>l'
|
||||||
|
IF (@sklTechnicky IS NULL)
|
||||||
|
SELECT @sklTechnicky=Cislo FROM dbo.TabStrom WHERE Nazev LIKE N'Technolog%ne<6E><65>%'
|
||||||
|
IF (@sklPek IS NULL)
|
||||||
|
SELECT @sklPek=Cislo FROM dbo.TabStrom WHERE Nazev LIKE N'V<EFBFBD>roba - Pek<65>rna'
|
||||||
|
IF (@sklTechnicky IS NULL) AND (@sklPek IS NOT NULL)
|
||||||
|
SET @sklTechnicky=@sklPek
|
||||||
|
DROP TABLE IF EXISTS #TabDefiniceProMicharnu
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
IF (@radaTechVydej IS NOT NULL)
|
||||||
|
SET @radaDZVydejka = @radaTechVydej
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
IF (@idJson IS NULL)
|
||||||
|
DECLARE j CURSOR LOCAL FOR
|
||||||
|
SELECT ID, JSONData, Akce
|
||||||
|
FROM dbo._hdc_ph_PrijataJsonData
|
||||||
|
WHERE DatZpracovani IS NULL
|
||||||
|
AND ISNULL(JSONData, N'')<>N''
|
||||||
|
ORDER BY DatPorizeni ASC
|
||||||
|
ELSE
|
||||||
|
DECLARE j CURSOR LOCAL FOR
|
||||||
|
SELECT ID, JSONData, Akce
|
||||||
|
FROM dbo._hdc_ph_PrijataJsonData
|
||||||
|
WHERE ID=@idJson
|
||||||
|
OPEN j
|
||||||
|
WHILE (1=1)
|
||||||
|
BEGIN
|
||||||
|
FETCH NEXT FROM j INTO @idJson, @jsonString, @akce
|
||||||
|
IF (@@FETCH_STATUS<>0) BREAK
|
||||||
|
|
||||||
|
IF (ISJSON(@jsonString)=0)
|
||||||
|
CONTINUE
|
||||||
|
|
||||||
|
IF ISNULL( (SELECT COUNT(ID) FROM dbo._hdc_ph_Log WHERE IdJsonData=@idJson), 0)>=3
|
||||||
|
BEGIN
|
||||||
|
IF EXISTS(SELECT 1 FROM dbo._hdc_ph_PrijataJsonData WHERE ID=@idJson AND ISNULL(PosledniChyba,N'')=N'')
|
||||||
|
UPDATE dbo._hdc_ph_PrijataJsonData SET PosledniChyba=(SELECT TOP(1) LogText FROM dbo._hdc_ph_Log WHERE IdJsonData=@idJson ORDER BY DatPorizeni DESC) WHERE ID=@idJson
|
||||||
|
CONTINUE
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
SET @logTyp = 0
|
||||||
|
SET @logInt = NULL
|
||||||
|
SET @logStr = N''
|
||||||
|
SET @log4Mail = 0
|
||||||
|
SET @logText = N''
|
||||||
|
|
||||||
|
|
||||||
|
BEGIN TRY
|
||||||
|
SET @tranPred = @@TRANCOUNT
|
||||||
|
IF (@tranPred=0)
|
||||||
|
BEGIN TRAN
|
||||||
|
|
||||||
|
-- BEGIN: SPOTREBA/ODPIS
|
||||||
|
IF (@akce=N'vyroba_spotreba')
|
||||||
|
BEGIN
|
||||||
|
DELETE FROM @PrKVazby
|
||||||
|
|
||||||
|
DELETE FROM #TabJSONData
|
||||||
|
INSERT #TabJSONData (doc) SELECT @jsonString
|
||||||
|
|
||||||
|
SELECT @typDokum=u2.typ, @subtypDokum=u2.subtyp
|
||||||
|
FROM #TabJSONData d
|
||||||
|
CROSS APPLY OPENJSON (d.doc, '$')
|
||||||
|
WITH ([data] NVARCHAR(MAX) AS JSON) AS u
|
||||||
|
CROSS APPLY OPENJSON ([data])
|
||||||
|
WITH (typ NVARCHAR(50), subtyp NVARCHAR(50)) AS u2
|
||||||
|
|
||||||
|
-- SPOTREBA PLUS UKONCENI OPERACE MICHANI ----------------------------------------------------
|
||||||
|
IF (@typDokum='vyroba')
|
||||||
|
BEGIN
|
||||||
|
SET @vodaLitry = 0
|
||||||
|
SET @moukaKgNorma = 0
|
||||||
|
SET @moukaKgFin = 0
|
||||||
|
SET @moukaSilo = 0
|
||||||
|
|
||||||
|
SELECT @idStroj=u3.heliosId, @idPHIdent=u2.datazoneId
|
||||||
|
FROM #TabJSONData d
|
||||||
|
CROSS APPLY OPENJSON (d.doc, '$')
|
||||||
|
WITH ([data] NVARCHAR(MAX) AS JSON) AS u
|
||||||
|
CROSS APPLY OPENJSON ([data])
|
||||||
|
WITH (datazoneId INT, stroj NVARCHAR(MAX) AS JSON) AS u2
|
||||||
|
CROSS APPLY OPENJSON (stroj)
|
||||||
|
WITH (heliosId INT) u3
|
||||||
|
|
||||||
|
SELECT @idVPr=u3.heliosId, @casStart=u3.zacatek, @casKonec=u3.konec, @viskoz=u3.viskozita, @moukaSilo=u3.silo
|
||||||
|
FROM #TabJSONData d
|
||||||
|
CROSS APPLY OPENJSON (d.doc, '$')
|
||||||
|
WITH ([data] NVARCHAR(MAX) AS JSON) AS u
|
||||||
|
CROSS APPLY OPENJSON ([data])
|
||||||
|
WITH (typ NVARCHAR(50), prikaz NVARCHAR(MAX) AS JSON) AS u2
|
||||||
|
CROSS APPLY OPENJSON (prikaz)
|
||||||
|
WITH (heliosId INT, datazoneId INT, skupzbo NVARCHAR(3), regcis NVARCHAR(30), zacatek DATETIME, konec DATETIME, viskozita TINYINT, silo TINYINT) u3
|
||||||
|
|
||||||
|
SET @idPHIdentBak = @idPHIdent
|
||||||
|
SELECT @vyrobniDen=Datum, @smena=Smena FROM dbo.ef_GetDatumASmenu(@casStart)
|
||||||
|
|
||||||
|
SELECT @idStartStopOp=ID FROM dbo._TabVyroba_OperaceStartStop WHERE IDPrikaz=@idVPr AND IDPHIdent=@idPHIdent
|
||||||
|
|
||||||
|
SELECT @dilec=IdTabKmen, @radaVPr=Rada, @idZakazka=IDZakazka, @mnozDilec=kusy_zad FROM dbo.TabPrikaz WHERE ID=@idVPr
|
||||||
|
SELECT @cisloZak=CisloZakazky FROM dbo.TabZakazka WHERE ID=@idZakazka
|
||||||
|
IF (@radaDZVydejka IS NULL)
|
||||||
|
SET @radaDZVydejka = ISNULL( (SELECT RadaDokl_GenerRezVyd_Mat FROM dbo.TabRadyPrikazu WHERE Rada=@radaVPr), @radaDZVydejka)
|
||||||
|
-- SET @sklMat = ISNULL( (SELECT VydejMatPol_SkladProGenHlavDZ FROM dbo.TabRadyPrikazu WHERE Rada=@radaVPr), @sklMat)
|
||||||
|
|
||||||
|
-- povol evidenci a odvod vice ks nez je na prikazu
|
||||||
|
UPDATE dbo.TabRadyPrikazu SET NekontrolMnozEvidMezd=1 WHERE Rada=@radaVPr AND NekontrolMnozEvidMezd=0
|
||||||
|
UPDATE dbo.TabRadyPrikazu SET NekontrolMnozOdvedFinal=1 WHERE Rada=@radaVPr AND NekontrolMnozOdvedFinal=0
|
||||||
|
|
||||||
|
|
||||||
|
SET @idDZ = (SELECT IDDoklad FROM dbo._hdc_ph_PrijataJsonData WHERE ID=@idJson)
|
||||||
|
IF (@idDZ IS NULL) -- @idDZ uz existuje ? Ne, udelej vydejku na prikaz
|
||||||
|
BEGIN
|
||||||
|
|
||||||
|
SELECT @jsonString2=u2.vydej
|
||||||
|
FROM #TabJSONData d
|
||||||
|
CROSS APPLY OPENJSON (d.doc, '$')
|
||||||
|
WITH (akce NVARCHAR(50), [data] NVARCHAR(MAX) AS JSON) AS u
|
||||||
|
CROSS APPLY OPENJSON ([data])
|
||||||
|
WITH ( vydej NVARCHAR(MAX) AS JSON) AS u2
|
||||||
|
|
||||||
|
DELETE FROM #TabJSONData
|
||||||
|
INSERT #TabJSONData (doc) SELECT @jsonString2
|
||||||
|
DECLARE p CURSOR LOCAL FOR
|
||||||
|
SELECT u.nazev, u.skupzbo, u.regcis, u.sarze, u.paletovylist, u.mnozstvi, u.mnozstviVychozi, u.datazoneId
|
||||||
|
FROM #TabJSONData d
|
||||||
|
CROSS APPLY OPENJSON (d.doc, '$')
|
||||||
|
WITH ( nazev NVARCHAR(100), skupzbo NVARCHAR(3), regcis NVARCHAR(30), sarze NVARCHAR(30), paletovyList NVARCHAR(30), mnozstvi NUMERIC(19,6), mnozstviVychozi NUMERIC(19,6), datazoneId INT) AS u
|
||||||
|
OPEN p
|
||||||
|
WHILE (1=1)
|
||||||
|
BEGIN
|
||||||
|
FETCH NEXT FROM p INTO @nazev1, @sz, @rc, @sarze, @paletList, @mnoz, @mnoz2, @idPHIdent
|
||||||
|
IF (@@FETCH_STATUS<>0) BREAK
|
||||||
|
|
||||||
|
SET @paletList = ISNULL(@paletList, N'')
|
||||||
|
IF (@sz=N'101') AND (@rc=N'001000')
|
||||||
|
SET @vodaLitry = @mnoz
|
||||||
|
IF (@sz=N'101') AND (@nazev1 LIKE N'%mouka%')
|
||||||
|
BEGIN
|
||||||
|
SET @moukaKgFin = @mnoz
|
||||||
|
SET @moukaKgNorma = @mnoz2
|
||||||
|
END
|
||||||
|
|
||||||
|
IF (@idDZ IS NULL)
|
||||||
|
BEGIN
|
||||||
|
SET @dpz = 4
|
||||||
|
EXEC dbo.hp_InsertHlavickyOZ @ident=@idDZ OUT, @Sklad=@sklTechnicky, @DruhPohybu=@dpz, @RadaDokladu=@radaDZVydejka, @CisloOrg=0
|
||||||
|
IF (@idDZ IS NOT NULL)
|
||||||
|
BEGIN
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM dbo.TabDokladyZbozi_EXT WHERE ID=@idDZ)
|
||||||
|
INSERT dbo.TabDokladyZbozi_EXT (ID) VALUES (@idDZ)
|
||||||
|
UPDATE dbo.TabDokladyZbozi_EXT SET _HDCAPI_PHident=@idJson WHERE ID=@idDZ
|
||||||
|
|
||||||
|
SELECT @datumDZ=DatPorizeni, @menaDZ=Mena, @kurzDZ=Kurz, @kurzEDZ=KurzEuro, @jednM=JednotkaMeny, @vstC=VstupniCena
|
||||||
|
FROM dbo.TabDokladyZbozi WHERE ID=@idDZ
|
||||||
|
UPDATE dbo.TabDokladyZbozi SET IDPrikaz=@idVPr, BlokovaniEditoru=0 WHERE ID=@idDZ
|
||||||
|
IF (@cisloZak IS NOT NULL)
|
||||||
|
UPDATE dbo.TabDokladyZbozi SET CisloZakazky=@cisloZak WHERE ID=@idDZ
|
||||||
|
END
|
||||||
|
END
|
||||||
|
|
||||||
|
IF (@idDZ IS NOT NULL)
|
||||||
|
BEGIN
|
||||||
|
SET @idKZ = (SELECT ID FROM dbo.TabKmenZbozi WHERE Nazev1 NOT LIKE N'%Voda%' AND SkupZbo=@sz AND RegCis=@rc AND (Material=1 OR Dilec=1) AND Sluzba=0)
|
||||||
|
IF (@idKZ IS NOT NULL)
|
||||||
|
BEGIN
|
||||||
|
-- najdi vazbu vc. kontroly jestli polozka neni rezijni material
|
||||||
|
SET @idPrKVazby = (SELECT ID FROM dbo.TabPrKVazby WHERE IDPrikaz=@idVPr AND vyssi=@dilec AND nizsi=@idKZ AND IDOdchylkyDo IS NULL AND RezijniMat=0)
|
||||||
|
|
||||||
|
-- pokud neni material v pozadavcich prikazu, pridej ho (neni v TPV)
|
||||||
|
IF (@idPrKVazby IS NULL) AND (@mnoz>0)
|
||||||
|
BEGIN
|
||||||
|
EXEC @idPrKVazby=dbo.hp_NewPozadavek_TabPrKVazby @IDPrikaz=@idVPr, @IDKmenZbozi=@idKZ, @Mnozstvi=@mnoz, @Mnoz_zad=@mnoz, @VychoziSklad=@sklMat
|
||||||
|
END
|
||||||
|
|
||||||
|
-- pridej do vydejky
|
||||||
|
IF (@idPrKVazby IS NOT NULL)
|
||||||
|
BEGIN
|
||||||
|
INSERT @PrKVazby (ID, Sklad) SELECT ID, Sklad FROM dbo.TabPrKVazby WHERE ID=@idPrKVazby
|
||||||
|
UPDATE dbo.TabPrKVazby SET Sklad=@sklTechnicky WHERE ID=@idPrKVazby
|
||||||
|
|
||||||
|
SET @idSS = (SELECT ID FROM dbo.TabStavSkladu WHERE IDKmenZbozi=@idKZ AND IDSklad=@sklTechnicky)
|
||||||
|
IF (@idSS IS NULL)
|
||||||
|
EXEC dbo.hp_InsertStavSkladu @IDKmen=@idKZ, @IDSklad=@sklTechnicky, @IDZboSklad=@idSS OUT
|
||||||
|
IF (@idSS IS NOT NULL)
|
||||||
|
BEGIN
|
||||||
|
-- mnoz = mnozstvi realne spotrebovane / mnoz2 = mnozstvi vychozi normovane
|
||||||
|
/*
|
||||||
|
UPDATE dbo.TabPrKVazby SET mnozstvi=@mnoz, mnoz_zad=@mnoz*@mnozDilec WHERE ID=@idPrKVazby AND mnozstvi<>@mnoz
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
SELECT @mnozReq=mnoz_zad, @doklPrV=Doklad FROM dbo.TabPrKVazby WHERE ID=@idPrKVazby
|
||||||
|
SET @mnozVyd = ISNULL( (SELECT SUM(pz.Mnozstvi) FROM dbo.TabPohybyZbozi pz INNER JOIN dbo.TabDokladyZbozi dz ON (dz.ID=pz.IDDoklad)
|
||||||
|
WHERE dz.DruhPohybuZbo=@dpz AND dz.RadaDokladu=@radaDZVydejka AND pz.IDPrikaz=@idVPr AND pz.TypVyrobnihoDokladu=0), 0)
|
||||||
|
SET @mnozNew = @mnozReq - @mnozVyd - @mnoz
|
||||||
|
IF (@mnozNew<=0)
|
||||||
|
BEGIN
|
||||||
|
SET @mnozNew = @mnozVyd + @mnoz
|
||||||
|
UPDATE dbo.TabPrKVazby SET mnoz_zad = @mnozNew WHERE ID=@idPrKVazby
|
||||||
|
END
|
||||||
|
*/
|
||||||
|
|
||||||
|
EXEC dbo.hp_InsertPolozkyOZ @ident=@idPZ OUT, @IDDoklad=@idDZ, @DruhPohybu=@dpz, @CisloOrg=0, @IDZboSklad=@idSS, @Mena=@menaDZ, @Kurz=@kurzDZ,
|
||||||
|
@JednotkaMeny=@jednM, @KurzEuro=@kurzEDZ, @SazbaSD=NULL, @SazbaDPH=NULL, @ZakazanoDPH=0, @VstupniCena=@vstC, @Mnozstvi=@mnoz
|
||||||
|
IF (@idPZ IS NOT NULL)
|
||||||
|
BEGIN
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM dbo.TabPohybyZbozi_EXT WHERE ID=@idPZ)
|
||||||
|
INSERT dbo.TabPohybyZbozi_EXT (ID) VALUES (@idPZ)
|
||||||
|
|
||||||
|
IF (@sz=N'101') AND (@nazev1 LIKE N'%mouka%') AND (@moukaSilo IS NOT NULL)
|
||||||
|
BEGIN
|
||||||
|
UPDATE dbo.TabPohybyZbozi_EXT SET _Mouka_Silo=@moukaSilo WHERE ID=@idPZ
|
||||||
|
/*
|
||||||
|
SET @idUmist = (SELECT ID FROM dbo.TabUmisteni WHERE Kod=CONVERT(nvarchar,@moukaSilo) AND IDSklad=@sklTechnicky)
|
||||||
|
IF (@idUmist IS NOT NULL)
|
||||||
|
UPDATE dbo.TabPohybyZbozi SET IdUmisteni=@idUmist WHERE ID=@idPZ
|
||||||
|
*/
|
||||||
|
END
|
||||||
|
|
||||||
|
INSERT dbo._TabVyroba_OperaceStartStopVydej (IDHlava, IDKmenZbozi, Mnozstvi, MnozstviPuvodni, IDPohybZbozi)
|
||||||
|
SELECT @idStartStopOp, @idKZ, @mnoz, @mnoz2, @idPZ
|
||||||
|
|
||||||
|
UPDATE dbo.TabPohybyZbozi SET IDPrikaz=@idVPr, TypVyrobnihoDokladu=1, DokladPrikazu=@doklPrV WHERE ID=@idPZ
|
||||||
|
UPDATE dbo.TabPohybyZbozi_EXT SET _HDCAPI_PHident=@idPHIdent WHERE ID=@idPZ
|
||||||
|
|
||||||
|
IF (ISNULL(@sarze,N'')=N'')
|
||||||
|
SET @sarze = (SELECT _Prevod_PosledniSarze FROM dbo.TabStavSkladu_EXT WHERE ID=@idSS)
|
||||||
|
|
||||||
|
UPDATE dbo.TabPohybyZbozi_EXT SET _Vyroba_PrikazMnoz=@mnoz2, _Vyroba_Sarze=@sarze, _Vyroba_PaletList=@paletList WHERE ID=@idPZ
|
||||||
|
END -- @idPZ IS NOT NULL
|
||||||
|
END -- @idSS IS NOT NULL
|
||||||
|
END -- @idPrKVazby IS NOT NULL
|
||||||
|
END -- @idKZ IS NOT NULL
|
||||||
|
END -- @idDZ IS NOT NULL
|
||||||
|
|
||||||
|
END
|
||||||
|
CLOSE p
|
||||||
|
DEALLOCATE p
|
||||||
|
|
||||||
|
IF (@idDZ IS NOT NULL)
|
||||||
|
BEGIN
|
||||||
|
SET @hmotTesta = ISNULL( (SELECT SUM(p.Mnozstvi) FROM dbo.TabPohybyZbozi p INNER JOIN dbo.TabStavSkladu s ON (s.ID=p.IDZboSklad)
|
||||||
|
INNER JOIN dbo.TabKmenZbozi k ON (k.ID=s.IDKmenZbozi) WHERE p.IDDoklad=@idDZ AND k.Sluzba=0), 0)
|
||||||
|
IF (@hmotTesta>0)
|
||||||
|
BEGIN
|
||||||
|
SET @hmotTesta = ROUND(@hmotTesta, 2)
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM dbo.TabDokladyZbozi_EXT WHERE ID=@idDZ)
|
||||||
|
INSERT dbo.TabDokladyZbozi_EXT (ID) VALUES (@idDZ)
|
||||||
|
UPDATE dbo.TabDokladyZbozi_EXT SET _Vyroba_HmotTesta=@hmotTesta WHERE ID=@idDZ
|
||||||
|
END
|
||||||
|
EXEC dbo.hp_VypCenOZPolozek_IDDokladu @idDZ, 0
|
||||||
|
UPDATE dbo.TabDokladyZbozi SET BlokovaniEditoru=NULL WHERE ID=@idDZ
|
||||||
|
END
|
||||||
|
END -- @idDZ uz existuje ?
|
||||||
|
|
||||||
|
-- konec operace
|
||||||
|
SET @idPHIdent = @idPHIdentBak
|
||||||
|
IF (@idStartStopOp IS NOT NULL)
|
||||||
|
BEGIN
|
||||||
|
IF (@idDZ IS NOT NULL)
|
||||||
|
UPDATE dbo._TabVyroba_OperaceStartStop SET IDDokladOZ=@idDZ WHERE ID=@idStartStopOp
|
||||||
|
SELECT @idEvROp=IDEvidRozpracOper FROM dbo._TabVyroba_OperaceStartStop WHERE ID=@idStartStopOp
|
||||||
|
IF (@idEvROp IS NOT NULL)
|
||||||
|
BEGIN
|
||||||
|
SELECT @idPracovisteOld=IDPracoviste, @idZam=IDZamestnance FROM dbo.TabEvidRozpracOper WHERE ID=@idEvROp
|
||||||
|
IF (@idZam IS NULL)
|
||||||
|
BEGIN
|
||||||
|
IF (ISNULL( (SELECT COUNT(ID) FROM dbo.TabCisZam), 0)=1)
|
||||||
|
SELECT TOP(1) @idZam=ID FROM dbo.TabCisZam
|
||||||
|
IF (@idZam IS NOT NULL)
|
||||||
|
UPDATE dbo.TabEvidRozpracOper SET IDZamestnance=@idZam WHERE ID=@idEvROp
|
||||||
|
END
|
||||||
|
UPDATE dbo._hdc_ph_PrijataJsonData SET CisloZam=(SELECT Cislo FROM dbo.TabCisZam WHERE ID=@idZam) WHERE ID=@idJson AND CisloZam IS NULL
|
||||||
|
|
||||||
|
SET @skCasSek = DATEDIFF(s, @casStart, @casKonec)
|
||||||
|
|
||||||
|
UPDATE dbo.TabEvidRozpracOperR SET Mnoz_odv=1,
|
||||||
|
Sk_cas=CASE Sk_Cas_T WHEN 0 THEN @skCasSek WHEN 1 THEN (@skCasSek/60.0) WHEN 2 THEN (@skCasSek/3600.0) END,
|
||||||
|
Sk_cas_Obsluhy=CASE Sk_Cas_Obsluhy_T WHEN 0 THEN @skCasSek WHEN 1 THEN (@skCasSek/60.0) WHEN 2 THEN (@skCasSek/3600.0) END
|
||||||
|
WHERE IDEvidRozpracOper=@idEvROp
|
||||||
|
UPDATE dbo.TabEvidRozpracOper SET CasUkonceni=@casKonec, CelkovyCas_T=0, CelkovyCas=DATEDIFF(s, @casStart, @casKonec) WHERE ID=@idEvROp
|
||||||
|
EXEC dbo.hp_EvidRozpracOper_AktualizaceCasuOper @IDEvidRozpracOper=@idEvROp, @CelkovyCas_S=@skCasSek, @KVO=1
|
||||||
|
|
||||||
|
IF (@idPracovisteOld IS NOT NULL)
|
||||||
|
EXEC dbo.hp_EvidRozpracOper_Uzavreni @IDEvidRozpracOper=@idEvROp, @GenerovatEvidenciOperaci=1
|
||||||
|
ELSE
|
||||||
|
EXEC dbo.hp_EvidRozpracOper_Uzavreni @IDEvidRozpracOper=@idEvROp, @GenerovatEvidenciOperaci=0
|
||||||
|
SET @idMzda=NULL
|
||||||
|
IF (1=(SELECT COUNT(ID) FROM dbo.TabEvidRozpracOperR WHERE IDEvidRozpracOper=@idEvROp))
|
||||||
|
SET @idMzda = (SELECT TOP(1) m.ID FROM dbo.TabPrikazMzdyAZmetky m INNER JOIN dbo.TabEvidRozpracOperR er ON (er.ID=m.IDEvidRozpracOperR)
|
||||||
|
WHERE er.IDEvidRozpracOper=@idEvROp)
|
||||||
|
UPDATE dbo._TabVyroba_OperaceStartStop SET CasKonec=@casKonec, Ukonceno=1, IDMzda=@idMzda WHERE ID=@idStartStopOp
|
||||||
|
UPDATE dbo._hdc_ph_PrijataJsonData SET IDMzda=@idMzda WHERE ID=@idJson
|
||||||
|
END
|
||||||
|
END
|
||||||
|
|
||||||
|
MERGE dbo.TabPrKVazby AS T
|
||||||
|
USING @PrKVazby AS S ON (T.ID=S.ID)
|
||||||
|
WHEN MATCHED THEN UPDATE SET T.Sklad=S.Sklad;
|
||||||
|
|
||||||
|
-- zapis pro pocitani spotreby testa
|
||||||
|
INSERT dbo._TabVyroba_TestoVyroba (IdPHIdent, IDPrikaz, IDDokladVydejMat, IDKmenZbozi, SkupZbo, RegCis, DatPriprava, VyrobniDen, Smena, DatVypousteni,
|
||||||
|
IDStrojPek, Viskozita, VodaLitry, MoukaHmot, MoukaSilo)
|
||||||
|
SELECT @idPHIdent, @idVPr, @idDZ, @dilec, SkupZbo, RegCis, @casStart, @vyrobniDen, @smena, @casKonec,
|
||||||
|
@idStroj, @viskoz, @vodaLitry, @moukaKgFin, @moukaSilo FROM dbo.TabKmenZbozi WHERE ID=@dilec
|
||||||
|
|
||||||
|
UPDATE dbo._hdc_ph_PrijataJsonData SET DatZpracovani=GETDATE(), IDDoklad=@idDZ WHERE ID=@idJson
|
||||||
|
|
||||||
|
IF OBJECT_ID(N'tempdb..#TabJSONData', N'U') IS NOT NULL
|
||||||
|
DROP TABLE #TabJSONData
|
||||||
|
|
||||||
|
END -- typ spotreba
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- ODPIS -----------------------------------------------------------------
|
||||||
|
IF (@typDokum='odpis')
|
||||||
|
BEGIN
|
||||||
|
SET @sklMat = N'211' -- odpis ze skladu Pekarna nebo z 311 - sklad Material ???????
|
||||||
|
SET @radaDZVydejka = N'242'
|
||||||
|
SET @dpz=4
|
||||||
|
|
||||||
|
SELECT @jsonString2=u2.vydej
|
||||||
|
FROM #TabJSONData d
|
||||||
|
CROSS APPLY OPENJSON (d.doc, '$')
|
||||||
|
WITH (akce NVARCHAR(50), [data] NVARCHAR(MAX) AS JSON) AS u
|
||||||
|
CROSS APPLY OPENJSON ([data])
|
||||||
|
WITH ( vydej NVARCHAR(MAX) AS JSON) AS u2
|
||||||
|
|
||||||
|
DELETE FROM #TabJSONData
|
||||||
|
INSERT #TabJSONData (doc) SELECT @jsonString2
|
||||||
|
DECLARE p CURSOR LOCAL FOR
|
||||||
|
SELECT u.skupzbo, u.regcis, u.sarze, u.paletovylist, u.mnozstvi, u.datazoneId
|
||||||
|
FROM #TabJSONData d
|
||||||
|
CROSS APPLY OPENJSON (d.doc, '$')
|
||||||
|
WITH ( skupzbo NVARCHAR(3), regcis NVARCHAR(30), sarze NVARCHAR(30), paletovyList NVARCHAR(30), mnozstvi NUMERIC(19,6), datazoneId INT) AS u
|
||||||
|
OPEN p
|
||||||
|
WHILE (1=1)
|
||||||
|
BEGIN
|
||||||
|
FETCH NEXT FROM p INTO @sz, @rc, @sarze, @paletList, @mnoz, @idPHIdent
|
||||||
|
IF (@@FETCH_STATUS<>0) BREAK
|
||||||
|
|
||||||
|
SET @paletList = ISNULL(@paletList, N'')
|
||||||
|
SET @sarze = ISNULL(@sarze, N'')
|
||||||
|
|
||||||
|
IF (@idDZ IS NULL)
|
||||||
|
BEGIN
|
||||||
|
EXEC dbo.hp_InsertHlavickyOZ @ident=@idDZ OUT, @Sklad=@sklMat, @DruhPohybu=@dpz, @RadaDokladu=@radaDZVydejka, @CisloOrg=0
|
||||||
|
SELECT @datumDZ=DatPorizeni, @menaDZ=Mena, @kurzDZ=Kurz, @kurzEDZ=KurzEuro, @jednM=JednotkaMeny, @vstC=VstupniCena, @parZnak=ParovaciZnak
|
||||||
|
FROM dbo.TabDokladyZbozi WHERE ID=@idDZ
|
||||||
|
UPDATE dbo.TabDokladyZbozi SET BlokovaniEditoru=0 WHERE ID=@idDZ
|
||||||
|
END
|
||||||
|
IF (@idDZ IS NOT NULL)
|
||||||
|
BEGIN
|
||||||
|
SET @idKZ = (SELECT ID FROM dbo.TabKmenZbozi WHERE SkupZbo=@sz AND RegCis=@rc)
|
||||||
|
IF (@idKZ IS NOT NULL)
|
||||||
|
BEGIN
|
||||||
|
SET @idSS = (SELECT ID FROM dbo.TabStavSkladu WHERE IDKmenZbozi=@idKZ AND IDSklad=@sklMat)
|
||||||
|
IF (@idSS IS NULL)
|
||||||
|
EXEC dbo.hp_InsertStavSkladu @IDKmen=@idKZ, @IDSklad=@sklMat, @IDZboSklad=@idSS OUT
|
||||||
|
IF (@idSS IS NOT NULL)
|
||||||
|
BEGIN
|
||||||
|
EXEC dbo.hp_InsertPolozkyOZ @ident=@idPZ OUT, @IDDoklad=@idDZ, @DruhPohybu=@dpz, @CisloOrg=0, @IDZboSklad=@idSS, @Mena=@menaDZ, @Kurz=@kurzDZ,
|
||||||
|
@JednotkaMeny=@jednM, @KurzEuro=@kurzEDZ, @SazbaSD=NULL, @SazbaDPH=NULL, @ZakazanoDPH=0, @VstupniCena=@vstC, @Mnozstvi=@mnoz
|
||||||
|
IF (@idPZ IS NOT NULL)
|
||||||
|
BEGIN
|
||||||
|
UPDATE dbo._hdc_ph_PrijataJsonData SET IdPHIdent=@idPHIdent WHERE ID=@idJson
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM dbo.TabPohybyZbozi_EXT WHERE ID=@idPZ)
|
||||||
|
INSERT dbo.TabPohybyZbozi_EXT (ID) VALUES (@idPZ)
|
||||||
|
|
||||||
|
IF (ISNULL(@sarze,N'')=N'')
|
||||||
|
SET @sarze = (SELECT _Prevod_PosledniSarze FROM dbo.TabStavSkladu_EXT WHERE ID=@idSS)
|
||||||
|
UPDATE dbo.TabPohybyZbozi_EXT SET _HDCAPI_PHident=@idPHIdent, _Vyroba_Sarze=@sarze WHERE ID=@idPZ
|
||||||
|
|
||||||
|
IF (@paletList<>N'')
|
||||||
|
BEGIN
|
||||||
|
SET @idVCK = (SELECT ID FROM dbo.TabVyrCK WHERE IDKmenZbozi=@idKZ AND Nazev1=@paletList)
|
||||||
|
IF (@idVCK IS NULL)
|
||||||
|
EXEC dbo.hp_OZInsertVyrCK @IDVyrCK=@idVCK OUT, @IDKmenZbozi=@idKZ, @Nazev1=@paletList, @Selectem=0
|
||||||
|
SET @idVCS = (SELECT ID FROM dbo.TabVyrCS WHERE IDVyrCK=@idVCK AND IDStavSkladu=@idSS AND Nazev1=@paletList)
|
||||||
|
IF (@idVCS IS NULL)
|
||||||
|
EXEC dbo.hp_OZInsertVyrCS @IDVyrCS=@idVCS OUT, @IDVyrCK=@idVCK, @IDZboSklad=@idSS
|
||||||
|
INSERT dbo.TabVyrCP (IDPolozkaDokladu, IDVyrCis, Nazev, Mnozstvi) SELECT @idPZ, @idVCS, @sarze, @mnoz
|
||||||
|
END
|
||||||
|
|
||||||
|
END -- @idPZ IS NOT NULL
|
||||||
|
END -- @idSS IS NOT NULL
|
||||||
|
END -- @idKZ IS NOT NULL
|
||||||
|
END -- @idDZ IS NOT NULL
|
||||||
|
|
||||||
|
END
|
||||||
|
CLOSE p
|
||||||
|
DEALLOCATE p
|
||||||
|
|
||||||
|
IF (@idDZ IS NOT NULL)
|
||||||
|
BEGIN
|
||||||
|
EXEC dbo.hp_VypCenOZPolozek_IDDokladu @idDZ, 0
|
||||||
|
UPDATE dbo.TabDokladyZbozi SET BlokovaniEditoru=NULL WHERE ID=@idDZ
|
||||||
|
|
||||||
|
|
||||||
|
-- musim odepsat i z technologickeho skladu
|
||||||
|
EXEC dbo.hp_InsertHlavickyOZ @ident=@idDZDst OUT, @Sklad=@sklTechnicky, @DruhPohybu=@dpz, @RadaDokladu=@radaDZVydejka,
|
||||||
|
@Mena=@menaDZ, @CisloOrg=0, @DatumPorizeni=@datumDZ
|
||||||
|
IF (@idDZDst IS NOT NULL)
|
||||||
|
BEGIN
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM dbo.TabDokladyZbozi_EXT WHERE ID=@idDZDst)
|
||||||
|
INSERT dbo.TabDokladyZbozi_EXT (ID) VALUES (@idDZDst)
|
||||||
|
UPDATE dbo.TabDokladyZbozi_EXT SET _Vyroba_IDPuvodniDoklad=@idDZ WHERE ID=@idDZDst
|
||||||
|
SELECT @datReal=DatRealizace FROM dbo.TabDokladyZbozi WHERE ID=@idDZ
|
||||||
|
EXEC dbo.hp_generuj_navazny_doklad @IDDokladDst=@idDZDst, @IDDokladSrc=@idDZ, @CisloOrgCil=0, @MUCil=NULL, @MenaCil=@menaDZ,
|
||||||
|
@KurzCil=NULL, @JednotkaMenyCil=NULL, @KurzEuroCil=NULL, @CisloZakCil=NULL, @NOkruhCil=NULL,
|
||||||
|
@StredNakladCil=NULL, @StredVynosCil=NULL, @FormaDopravyCil=NULL, @VozidloCil=NULL, @ObjednavkaCil=NULL,
|
||||||
|
@PopisDodavkyCil=NULL, @NavaznyDobropisCil=NULL, @ZamestnanecCil=NULL, @DodFakCil=NULL, @Nasobek=1,
|
||||||
|
@SlevaCil=NULL, @VytvaretDokladovouVazbu=0, @VytvaretPolozkovouVazbu=0, @ChybaSkladana=@errMsg OUT,
|
||||||
|
@KopirovaniDokladu=1
|
||||||
|
IF EXISTS(SELECT 1 FROM dbo.TabPohybyZbozi WHERE IDDoklad=@idDZDst) AND EXISTS(SELECT 1 FROM dbo.TabDokladyZbozi WHERE Realizovano=1 AND ID=@idDZ)
|
||||||
|
EXEC dbo.hp_Realizuj_Vydej @ID=@idDZDst, @DatumRealizace=@datReal, @Uzivatel=0, @Hlidat=0, @BylaChyba=@bChyba OUT, @RealMnoz=1, @RealFin=1
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
UPDATE dbo._hdc_ph_PrijataJsonData SET DatZpracovani=GETDATE(), IDDoklad=@idDZ WHERE ID=@idJson
|
||||||
|
END
|
||||||
|
|
||||||
|
IF OBJECT_ID(N'tempdb..#TabJSONData', N'U') IS NOT NULL
|
||||||
|
DROP TABLE #TabJSONData
|
||||||
|
|
||||||
|
END -- typ odpis
|
||||||
|
|
||||||
|
END -- akce: vyroba_spotreba
|
||||||
|
-- END: SPOTREBA/ODPIS
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- BEGIN: OBJEDNAVKA
|
||||||
|
IF (@akce=N'objednavka')
|
||||||
|
BEGIN
|
||||||
|
-- smaz pomocnou tabulku
|
||||||
|
DELETE FROM #TabJSONData
|
||||||
|
INSERT #TabJSONData (doc) SELECT @jsonString
|
||||||
|
|
||||||
|
DELETE FROM @TabPHObj
|
||||||
|
|
||||||
|
DECLARE p CURSOR LOCAL FOR
|
||||||
|
SELECT u2.datazoneId, u3.datazoneId, u2.paletovyList, u2.created, u2.skupzbo, u2.regcis, u3.sarze, u3.mnozstvi, u2.typ, u2.subtyp
|
||||||
|
FROM #TabJSONData d
|
||||||
|
CROSS APPLY OPENJSON (d.doc, '$')
|
||||||
|
WITH ([data] NVARCHAR(MAX) AS JSON) AS u
|
||||||
|
CROSS APPLY OPENJSON ([data])
|
||||||
|
WITH (typ NVARCHAR(50), subtyp NVARCHAR(50), datazoneId INT, skupzbo NVARCHAR(3), regcis NVARCHAR(30), paletovyList NVARCHAR(50), created DATETIME, items NVARCHAR(MAX) AS JSON) AS u2
|
||||||
|
CROSS APPLY OPENJSON (items)
|
||||||
|
WITH ( datazoneId INT, heliosId INT, sarze NVARCHAR(30), mnozstvi NUMERIC(19,6) ) AS u3
|
||||||
|
OPEN p
|
||||||
|
WHILE (1=1)
|
||||||
|
BEGIN
|
||||||
|
FETCH NEXT FROM p INTO @idPHIdent, @idPHIdent2, @paletList, @datPorizeni, @sz, @rc, @sarze, @mnoz, @typDokum, @subtypDokum
|
||||||
|
IF (@@FETCH_STATUS<>0) BREAK
|
||||||
|
INSERT dbo._TabVyroba_Objednavky (IDPrijataDataJson, IdPHIdent, IdPHIdent2, SkupZbo, RegCis, PaletovyList, Sarze, Mnozstvi, DatPorizeni)
|
||||||
|
SELECT @idJson, @idPHIdent, @idPHIdent2, @sz, @rc, @paletList, @sarze, @mnoz, @datPorizeni
|
||||||
|
SET @idPHObj = SCOPE_IDENTITY()
|
||||||
|
INSERT @TabPHObj (ID, IDPHIdent) VALUES (@idPHObj, @idPHIdent)
|
||||||
|
IF (@typDokum='micharna') AND (@subtypDokum='nocni')
|
||||||
|
UPDATE dbo._TabVyroba_Objednavky SET NocniObjednavka=1 WHERE ID=@idPHObj
|
||||||
|
END
|
||||||
|
CLOSE p
|
||||||
|
DEALLOCATE p
|
||||||
|
|
||||||
|
IF (@typDokum='micharna') AND (@subtypDokum='nocni') AND EXISTS (SELECT 1 FROM @TabPHObj)
|
||||||
|
BEGIN
|
||||||
|
SET @idDZ = NULL
|
||||||
|
SET @prevodka = 1
|
||||||
|
SET @radaDZPrevodV = N'231'
|
||||||
|
SET @dpz = 4
|
||||||
|
|
||||||
|
DECLARE p CURSOR LOCAL FOR
|
||||||
|
SELECT ID, IDPHIdent FROM @TabPHObj
|
||||||
|
OPEN p
|
||||||
|
WHILE (1=1)
|
||||||
|
BEGIN
|
||||||
|
FETCH NEXT FROM p INTO @idPHObj, @idPHIdent
|
||||||
|
IF (@@FETCH_STATUS<>0) BREAK
|
||||||
|
|
||||||
|
IF (@idDZ IS NULL)
|
||||||
|
BEGIN
|
||||||
|
EXEC dbo.hp_InsertHlavickyOZ @ident=@idDZ OUT, @Sklad=@sklMat, @DruhPohybu=@dpz, @RadaDokladu=@radaDZPrevodV, @CisloOrg=0
|
||||||
|
UPDATE dbo.TabDokladyZbozi SET DruhPohybuPrevod=0, TypPrevodky=N'281', IdSkladPrevodu=@sklPek, PrevodRealizovat=1 WHERE ID=@idDZ
|
||||||
|
SELECT @menaDZ=Mena, @kurzDZ=Kurz, @kurzEDZ=KurzEuro, @jednM=JednotkaMeny, @vstC=VstupniCena, @parZnak=ParovaciZnak FROM dbo.TabDokladyZbozi WHERE ID=@idDZ
|
||||||
|
UPDATE dbo.TabDokladyZbozi SET BlokovaniEditoru=0 WHERE ID=@idDZ
|
||||||
|
END
|
||||||
|
IF (@idDZ IS NOT NULL)
|
||||||
|
BEGIN
|
||||||
|
SELECT @sz=SkupZbo, @rc=RegCis, @paletList=PaletovyList, @sarze=Sarze FROM dbo._TabVyroba_Objednavky WHERE ID=@idPHObj
|
||||||
|
SET @sarze = ISNULL(@sarze, N'')
|
||||||
|
SET @idKZ = (SELECT ID FROM dbo.TabKmenZbozi WHERE SkupZbo=@sz AND RegCis=@rc)
|
||||||
|
IF (@idKZ IS NOT NULL)
|
||||||
|
BEGIN
|
||||||
|
SET @idSS = (SELECT ID FROM dbo.TabStavSkladu WHERE IDKmenZbozi=@idKZ AND IDSklad=@sklMat)
|
||||||
|
IF (@idSS IS NULL)
|
||||||
|
EXEC dbo.hp_InsertStavSkladu @IDKmen=@idKZ, @IDSklad=@sklMat, @IDZboSklad=@idSS OUT
|
||||||
|
IF (@idSS IS NOT NULL)
|
||||||
|
BEGIN
|
||||||
|
EXEC dbo.hp_InsertPolozkyOZ @ident=@idPZ OUT, @IDDoklad=@idDZ, @DruhPohybu=@dpz, @CisloOrg=0, @IDZboSklad=@idSS, @Mena=@menaDZ, @Kurz=@kurzDZ,
|
||||||
|
@JednotkaMeny=@jednM, @KurzEuro=@kurzEDZ, @SazbaSD=NULL, @SazbaDPH=NULL, @ZakazanoDPH=0, @VstupniCena=@vstC, @Mnozstvi=@mnoz
|
||||||
|
IF (@idPZ IS NOT NULL)
|
||||||
|
BEGIN
|
||||||
|
UPDATE dbo.TabPohybyZbozi_EXT SET _HDCAPI_PHident=@idPHIdent WHERE ID=@idPZ
|
||||||
|
IF (@@ROWCOUNT=0)
|
||||||
|
INSERT dbo.TabPohybyZbozi_EXT (ID, _HDCAPI_PHident) SELECT @idPZ, @idPHIdent
|
||||||
|
|
||||||
|
IF (@sarze<>N'')
|
||||||
|
BEGIN
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM dbo.TabKmenZbozi_EXT WHERE ID=@idKZ)
|
||||||
|
INSERT dbo.TabKmenZbozi_EXT (ID) SELECT @idKZ
|
||||||
|
UPDATE dbo.TabKmenZbozi_EXT SET _Prevod_PosledniSarze=@sarze WHERE ID=@idKZ
|
||||||
|
END
|
||||||
|
|
||||||
|
SET @idVCP = NULL
|
||||||
|
IF (@paletList<>N'')
|
||||||
|
BEGIN
|
||||||
|
SET @idVCK = (SELECT ID FROM dbo.TabVyrCK WHERE IDKmenZbozi=@idKZ AND Nazev1=@paletList)
|
||||||
|
IF (@idVCK IS NULL)
|
||||||
|
EXEC dbo.hp_OZInsertVyrCK @IDVyrCK=@idVCK OUT, @IDKmenZbozi=@idKZ, @Nazev1=@paletList, @Selectem=0
|
||||||
|
SET @idVCS = (SELECT ID FROM dbo.TabVyrCS WHERE IDVyrCK=@idVCK AND IDStavSkladu=@idSS AND Nazev1=@paletList)
|
||||||
|
IF (@idVCS IS NULL)
|
||||||
|
EXEC dbo.hp_OZInsertVyrCS @IDVyrCS=@idVCS OUT, @IDVyrCK=@idVCK, @IDZboSklad=@idSS
|
||||||
|
INSERT dbo.TabVyrCP (IDPolozkaDokladu, IDVyrCis, Nazev, Mnozstvi) SELECT @idPZ, @idVCS, @sarze, @mnoz
|
||||||
|
SET @idVCP = SCOPE_IDENTITY()
|
||||||
|
END
|
||||||
|
INSERT dbo._TabVyroba_Objednavky_Pol (IDHlava, IDDokladOZ, IDPohybOZ, IDVyrCP, Mnozstvi, Sarze)
|
||||||
|
SELECT @idPHObj, @idDZ, @idPZ, @idVCP, @mnoz, @paletList
|
||||||
|
SET @idPHObjPol = SCOPE_IDENTITY()
|
||||||
|
|
||||||
|
END -- @idPZ IS NOT NULL
|
||||||
|
END -- @idSS IS NOT NULL
|
||||||
|
END -- @idKZ IS NOT NULL
|
||||||
|
END -- @idDZ IS NOT NULL
|
||||||
|
|
||||||
|
END
|
||||||
|
CLOSE p
|
||||||
|
DEALLOCATE p
|
||||||
|
|
||||||
|
IF (@idDZ IS NOT NULL)
|
||||||
|
BEGIN
|
||||||
|
UPDATE dbo.TabDokladyZbozi SET BlokovaniEditoru=NULL WHERE ID=@idDZ
|
||||||
|
SET @logTyp=3
|
||||||
|
SET @logInt=@idDZ
|
||||||
|
SET @logStr = @parZnak
|
||||||
|
SET @log4Mail = 1
|
||||||
|
SET @logText = N'Nelze realizovat v<>dejka no<6E>n<EFBFBD> p<>evodky'
|
||||||
|
|
||||||
|
SET @aktDatum = GETDATE()
|
||||||
|
EXEC dbo.hp_Realizuj_Vydej @ID=@idDZ, @DatumRealizace=@aktDatum, @Uzivatel=0, @Hlidat=0, @BylaChyba=@bChyba OUT
|
||||||
|
IF (@bChyba=0)
|
||||||
|
BEGIN
|
||||||
|
SET @logTyp=0
|
||||||
|
SET @logInt=0
|
||||||
|
SET @logStr = N''
|
||||||
|
SET @log4Mail = 0
|
||||||
|
SET @logText = N''
|
||||||
|
END
|
||||||
|
END
|
||||||
|
END -- @subtypDokum='nocni'
|
||||||
|
|
||||||
|
|
||||||
|
UPDATE dbo._hdc_ph_PrijataJsonData SET DatZpracovani=GETDATE(), Blokovano=0 WHERE ID=@idJson
|
||||||
|
|
||||||
|
END -- akce: objednavka
|
||||||
|
-- END: OBJEDNAVKA
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- BEGIN: ZAHAJENI OPERACE
|
||||||
|
IF (@akce=N'vyroba_zacatek')
|
||||||
|
BEGIN
|
||||||
|
-- smaz pomocnou tabulku
|
||||||
|
DELETE FROM #TabJSONData
|
||||||
|
INSERT #TabJSONData (doc) SELECT @jsonString
|
||||||
|
|
||||||
|
IF (1=ISNULL( (SELECT COUNT(ID) FROM dbo.TabCisZam), 0))
|
||||||
|
UPDATE dbo._hdc_ph_PrijataJsonData SET CisloZam=(SELECT TOP(1)Cislo FROM dbo.TabCisZam) WHERE ID=@idJson AND CisloZam IS NULL
|
||||||
|
ELSE
|
||||||
|
UPDATE dbo._hdc_ph_PrijataJsonData SET CisloZam=999999 WHERE ID=@idJson AND CisloZam IS NULL
|
||||||
|
|
||||||
|
SET @cisZam = NULL
|
||||||
|
SET @idZam = NULL
|
||||||
|
|
||||||
|
SELECT @typDokum=u2.typ, @idVPr=u3.heliosId, @idPHIdent=u2.datazoneId, @idPracoviste=u4.idprac, @idStroj=u4.heliosId, @statusStroje=u3.[status],
|
||||||
|
@casStart=u3.zacatek, @sz=u3.skupzbo, @rc=u3.regcis, @idPHIdent2=u4.datazoneId
|
||||||
|
FROM #TabJSONData d
|
||||||
|
CROSS APPLY OPENJSON (d.doc, '$')
|
||||||
|
WITH ([data] NVARCHAR(MAX) AS JSON) AS u
|
||||||
|
CROSS APPLY OPENJSON ([data])
|
||||||
|
WITH ( typ NVARCHAR(50), prikaz NVARCHAR(MAX) AS JSON, datazoneId INT, stroj NVARCHAR(MAX) AS JSON) AS u2
|
||||||
|
CROSS APPLY OPENJSON (prikaz)
|
||||||
|
WITH ( heliosId INT, datazoneId INT, skupzbo NVARCHAR(3), regcis NVARCHAR(30), [status] NVARCHAR(20), zacatek DATETIME, konec DATETIME ) AS u3
|
||||||
|
CROSS APPLY OPENJSON (stroj)
|
||||||
|
WITH ( heliosId INT, datazoneId INT, idprac INT, kod NVARCHAR(20) ) AS u4
|
||||||
|
|
||||||
|
IF (@cisZam IS NULL)
|
||||||
|
SELECT @cisZam=CisloZam FROM dbo._hdc_ph_PrijataJsonData WHERE ID=@idJson
|
||||||
|
IF (@cisZam IS NOT NULL)
|
||||||
|
SELECT @idZam=ID FROM dbo.TabCisZam WHERE Cislo=@cisZam
|
||||||
|
|
||||||
|
|
||||||
|
IF (@idVPr IS NOT NULL) AND (@idPracoviste IS NOT NULL)
|
||||||
|
BEGIN
|
||||||
|
-- INSERT dbo._hdc_ph_Log (Typ, LogText, IntValue) SELECT 1, N'Zpracovavam PrijataJsonData jako Vyroba_zacatek', @idJson
|
||||||
|
SET @doklPrP = NULL
|
||||||
|
SET @altPrP = NULL
|
||||||
|
|
||||||
|
SELECT @cisloPrikazu = RadaPrikaz FROM dbo.TabPrikaz WHERE ID=@idVPr
|
||||||
|
|
||||||
|
SET @idStartStopOp = (SELECT ID FROM dbo._TabVyroba_OperaceStartStop WHERE IDPrijataDataJson=@idJson AND IdPHIdent=@idPHIdent)
|
||||||
|
IF (@idStartStopOp IS NULL)
|
||||||
|
BEGIN
|
||||||
|
INSERT dbo._TabVyroba_OperaceStartStop (IDPrijataDataJson, IdPHIdent, IdPHIdent2, IDPrikaz, SkupZbo, RegCis, IDStroj, IDPracoviste, CasStart)
|
||||||
|
SELECT @idJson, @idPHIdent, @idPHIdent2, @idVPr, @sz, @rc, @idStroj, @idPracoviste, @casStart
|
||||||
|
SET @idStartStopOp = SCOPE_IDENTITY()
|
||||||
|
END
|
||||||
|
|
||||||
|
IF EXISTS (SELECT 1 FROM dbo._TabVyroba_OperaceStartStop WHERE IDPrijataDataJson=@idJson AND IDEvidRozpracOper IS NULL)
|
||||||
|
BEGIN
|
||||||
|
SELECT @strojPec = Nazev FROM dbo.TabCisStroju WHERE ID=@idStroj
|
||||||
|
|
||||||
|
SET @doklPrP = NULL
|
||||||
|
IF (@sz='701')
|
||||||
|
SELECT TOP(1) @doklPrP=Doklad, @altPrP=Alt, @idPracoviste=pracoviste FROM dbo.TabPrPostup
|
||||||
|
WHERE IDOdchylkyDo IS NULL AND IDPrikaz=@idVPr AND nazev=N'M<EFBFBD>ch<EFBFBD>n<EFBFBD>'
|
||||||
|
|
||||||
|
IF (@doklPrP IS NOT NULL)
|
||||||
|
BEGIN
|
||||||
|
INSERT dbo.TabEvidRozpracOper (IDZamestnance, IDPracoviste, IDStroje, CasZahajeni, Poznamka)
|
||||||
|
SELECT @idZam, @idPracoviste, NULL, @casStart, N'M<EFBFBD>ch<EFBFBD>n<EFBFBD> pro stroj ' + ISNULL(@strojPec, N'') + N' *** p<><70>kaz ' + ISNULL(@cisloPrikazu, N'')
|
||||||
|
SET @idEvROp = SCOPE_IDENTITY()
|
||||||
|
INSERT dbo.TabEvidRozpracOperR (IDEvidRozpracOper, IDPrikaz, DokladPrPostup, AltPrPostup, Mnoz_odv) SELECT @idEvROp, @idVPr, @doklPrP, @altPrP, 1
|
||||||
|
UPDATE dbo._TabVyroba_OperaceStartStop SET IDEvidRozpracOper=@idEvROp, DokladPrP=@doklPrP, AltPrP=@altPrP WHERE ID=@idStartStopOp
|
||||||
|
UPDATE dbo._hdc_ph_PrijataJsonData SET DatZpracovani=GETDATE(), Blokovano=0, IDEvidRozpOp=@idEvROp WHERE ID=@idJson
|
||||||
|
END
|
||||||
|
END
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
END -- akce: vyroba_zacatek
|
||||||
|
-- END: ZAHAJENI OPERACE
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
IF (@tranPred=0) AND (@@TRANCOUNT>0)
|
||||||
|
COMMIT TRAN
|
||||||
|
END TRY
|
||||||
|
BEGIN CATCH
|
||||||
|
IF (@tranPred=0) AND (@@TRANCOUNT>0)
|
||||||
|
ROLLBACK TRAN
|
||||||
|
SET @errMsg = ERROR_PROCEDURE() + N'/r.' + CONVERT(nvarchar, ERROR_LINE()) + N' >> ' + ERROR_MESSAGE()
|
||||||
|
|
||||||
|
UPDATE dbo._hdc_ph_PrijataJsonData SET PosledniChyba=@errMsg WHERE ID=@idJson
|
||||||
|
|
||||||
|
IF (@logTyp>0)
|
||||||
|
INSERT dbo._hdc_ph_Log (Typ, LogText, IntValue, StrValue, IdJsonData, ForMail)
|
||||||
|
SELECT @logTyp, ISNULL(@logText, N'') + NCHAR(13)+NCHAR(10) + @errMsg, @logInt, @logStr, @idJson, @log4Mail
|
||||||
|
ELSE
|
||||||
|
INSERT dbo._hdc_ph_Log (Typ, LogText, IdJsonData, ForMail) SELECT 1, N'Chyba zpracovani PrijataJsonData: ' + @errMsg, @idJson, 1
|
||||||
|
END CATCH
|
||||||
|
SET @logTyp=0
|
||||||
|
|
||||||
|
END
|
||||||
|
CLOSE j
|
||||||
|
DEALLOCATE j
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- pro jistotu
|
||||||
|
IF OBJECT_ID(N'tempdb..#TabJSONData', N'U') IS NOT NULL
|
||||||
|
DROP TABLE #TabJSONData
|
||||||
162
_sql/ep_Vyroba_GenSouhrnnyVydej.sql
Normal file
162
_sql/ep_Vyroba_GenSouhrnnyVydej.sql
Normal file
@ -0,0 +1,162 @@
|
|||||||
|
-- dbo.ep_Vyroba_GenSouhrnnyVydej
|
||||||
|
CREATE PROCEDURE dbo.ep_Vyroba_GenSouhrnnyVydej
|
||||||
|
@datum DATETIME=NULL,
|
||||||
|
@radaVydej NVARCHAR(3)=NULL,
|
||||||
|
@idSklad NVARCHAR(30)=NULL,
|
||||||
|
@errorMsg NVARCHAR(500)=N'' OUT
|
||||||
|
AS
|
||||||
|
|
||||||
|
|
||||||
|
-- HD Consulting Strakonice, T. Buzin
|
||||||
|
-- generuje souhrnnou vydejku (z vydejek prikazu, storna, rucnich korekci zaslanych z terminalu od PH) do jedne vydejky za dany den
|
||||||
|
-- data z technologickeho/pomocneho skladu, vydejka na sklad Pekarna 211 (lze ovlivnit parametrem idSklad)
|
||||||
|
|
||||||
|
-- pokud neni @datum zadane, bere se vcerejsek
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
SET NOCOUNT ON
|
||||||
|
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@errMsg NVARCHAR(500),
|
||||||
|
@tranPred INT,
|
||||||
|
@debugXml XML,
|
||||||
|
@iTemp INT,
|
||||||
|
@bTemp BIT
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@idObd INT,
|
||||||
|
@datumOd DATETIME,
|
||||||
|
@datumDo DATETIME,
|
||||||
|
@sklMatHlavni NVARCHAR(30)=N'311',
|
||||||
|
@sklPekarna NVARCHAR(30)=N'211',
|
||||||
|
@sklTechnolog NVARCHAR(30),
|
||||||
|
@idDZ INT,
|
||||||
|
@idPZ INT,
|
||||||
|
@idSS INT,
|
||||||
|
@idKZ INT,
|
||||||
|
@mnoz NUMERIC(19,6),
|
||||||
|
@cOrg INT=0,
|
||||||
|
@dzMena NUMERIC(19,6),
|
||||||
|
@dpz TINYINT=4, -- vydej v evid.cene
|
||||||
|
@vstC TINYINT,
|
||||||
|
@jednM INT,
|
||||||
|
@dzKurz NUMERIC(19,6),
|
||||||
|
@dzKurzE NUMERIC(19,6)
|
||||||
|
|
||||||
|
DECLARE @vydeje TABLE (SkupZbo NVARCHAR(3) NOT NULL, RegCis NVARCHAR(30) NOT NULL, IDKmenZbozi INT, IDPohybZbozi INT, IDPrikaz INT, Mnozstvi NUMERIC(19,6) NOT NULL DEFAULT 0.0,
|
||||||
|
PRIMARY KEY (SkupZbo,RegCis) )
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
IF OBJECT_ID(N'tempdb..#TabExtKom', N'U') IS NULL
|
||||||
|
CREATE TABLE #TabExtKom (Typ TINYINT, Poznamka NVARCHAR(255) )
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
SET @sklTechnolog=(SELECT TOP(1) Cislo FROM dbo.TabStrom WHERE Nazev LIKE N'Technolog%ne<6E><65>%' AND CisloStr LIKE N'2%')
|
||||||
|
IF (@sklTechnolog IS NULL)
|
||||||
|
SET @sklTechnolog = N'261'
|
||||||
|
SET @sklPekarna=(SELECT TOP(1) Cislo FROM dbo.TabStrom WHERE Nazev LIKE N'V<EFBFBD>roba - Pek<65>rna')
|
||||||
|
IF (@sklPekarna IS NULL)
|
||||||
|
SET @sklPekarna = N'211'
|
||||||
|
|
||||||
|
|
||||||
|
IF (@idSklad IS NULL)
|
||||||
|
SET @idSklad = @sklPekarna
|
||||||
|
|
||||||
|
|
||||||
|
IF (@datum IS NULL)
|
||||||
|
SET @datum = DATEADD(second, -1, dbo.hf_TruncDate(GETDATE())) -- vcerejsi pulnoc
|
||||||
|
SET @datumOd = dbo.hf_TruncDate(@datum) -- 00:00:00 daneho dne
|
||||||
|
SET @datumDo = DATEADD(second, -1, DATEADD(day, 1, @datumOd)) -- 23:59:59 daneho dne
|
||||||
|
|
||||||
|
EXEC @idObd = dbo.hp_GetObdobiDleDatumu @Datum=@datumOd, @JakyDatum=0, @HlasitUzavreno=0
|
||||||
|
|
||||||
|
|
||||||
|
IF (@radaVydej IS NULL)
|
||||||
|
SET @radaVydej = (SELECT TOP(1) RadaDokladu FROM dbo.TabDruhDokZbo WHERE DruhPohybuZbo=4 AND Nazev LIKE N'%eba PEK'
|
||||||
|
AND ID NOT IN (SELECT d.IDDruhDZ FROM dbo.TabDruhDokZboDef d WHERE d.IdObdobi=@idObd AND d.Blokovano=1) )
|
||||||
|
IF (@radaVydej IS NULL)
|
||||||
|
SET @radaVydej = (SELECT TOP(1) RadaDokladu FROM dbo.TabDruhDokZbo WHERE DruhPohybuZbo=4 AND Nazev LIKE N'%eba PEK')
|
||||||
|
IF (@radaVydej IS NULL)
|
||||||
|
SET @radaVydej = N'223' -- vyrobni spotreba PEK
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
INSERT @vydeje (SkupZbo, RegCis, IDKmenZbozi, IDPohybZbozi, IDPrikaz, Mnozstvi)
|
||||||
|
SELECT p.SkupZbo, p.RegCis, k.ID, p.ID, ISNULL(p.IDPrikaz, d.IDPrikaz), p.MnozstviDruhove
|
||||||
|
FROM dbo.TabPohybyZbozi p
|
||||||
|
INNER JOIN dbo.TabDokladyZbozi d ON (d.ID=p.IDDoklad)
|
||||||
|
INNER JOIN dbo.TabStavSkladu s ON (s.ID=p.IDZboSklad)
|
||||||
|
INNER JOIN dbo.TabKmenZbozi k ON (k.ID=s.IDKmenZbozi)
|
||||||
|
WHERE d.DatPorizeni BETWEEN @datumOd AND @datumDo
|
||||||
|
AND d.RadaDokladu IN (@radaVydej, N'229', N'292') -- standardne by melo byt: 223 vydej spotreba PEK, 229 Storno vydej spotreba, 292 Prijem vyrovnani do normy
|
||||||
|
AND d.DruhPohybuZbo IN (0,1,3,4)
|
||||||
|
AND s.IDSklad=@sklTechnolog
|
||||||
|
AND p.Mnozstvi>0
|
||||||
|
AND k.Sluzba=0
|
||||||
|
ORDER BY d.ParovaciZnak, p.Poradi
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
MERGE @vydeje AS T
|
||||||
|
USING dbo.TabKmenZbozi AS S ON (S.SkupZbo=T.SkupZbo AND S.RegCis=T.RegCis)
|
||||||
|
WHEN MATCHED AND T.IDKmenZbozi IS NULL THEN UPDATE SET T.IDKmenZbozi=S.ID;
|
||||||
|
SET @debugXml=(SELECT * FROM @vydeje FOR XML AUTO)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
BEGIN TRY
|
||||||
|
SET @tranPred = @@TRANCOUNT
|
||||||
|
IF (@tranPred=0)
|
||||||
|
BEGIN TRAN
|
||||||
|
|
||||||
|
|
||||||
|
IF EXISTS (SELECT 1 FROM @vydeje WHERE Mnozstvi<>0 AND IDKmenZbozi IS NOT NULL)
|
||||||
|
BEGIN
|
||||||
|
EXEC dbo.hp_InsertHlavickyOZ @ident=@idDZ OUT, @Sklad=@idSklad, @DruhPohybuZbo=@dpz, @RadaDokladu=@radaVydej, @CisloOrg=@cOrg, @DatumPorizeni=@datumDo
|
||||||
|
IF (@idDZ IS NOT NULL)
|
||||||
|
BEGIN
|
||||||
|
SELECT @dzMena=Mena, @dzKurz=Kurz, @dzKurzE=KurzEuro, @vstC=VstupniCena, @jednM=JednotkaMeny FROM dbo.TabDokladyZbozi WHERE ID=@idDZ
|
||||||
|
|
||||||
|
DECLARE p CURSOR LOCAL FOR
|
||||||
|
SELECT DISTINCT(IDKmenZbozi), SUM(Mnozstvi)
|
||||||
|
FROM @vydeje
|
||||||
|
WHERE IDKmenZbozi IS NOT NULL
|
||||||
|
GROUP BY IDKmenZbozi
|
||||||
|
OPEN p
|
||||||
|
WHILE (1=1)
|
||||||
|
BEGIN
|
||||||
|
FETCH NEXT FROM p INTO @idKZ, @mnoz
|
||||||
|
IF (@@FETCH_STATUS<>0) BREAK
|
||||||
|
|
||||||
|
SET @idSS = (SELECT ID FROM dbo.TabStavSkladu WHERE IDSklad=@sklPekarna AND IDKmenZbozi=@idKZ)
|
||||||
|
IF (@idSS IS NULL)
|
||||||
|
EXEC dbo.hp_InsertStavSkladu @IDKmen=@idKZ, @IDSklad=@sklPekarna, @IDZboSklad=@idSS OUT
|
||||||
|
IF (@idSS IS NOT NULL)
|
||||||
|
BEGIN
|
||||||
|
EXEC dbo.hp_InsertPolozkyOZ @Ident=@idPZ OUT, @IDDoklad=@idDZ, @DruhPohybu=@dpz, @CisloOrg=@cOrg, @IDZboSklad=@idSS, @Mena=@dzMena,
|
||||||
|
@Kurz=@dzKurz, @KurzEuro=@dzKurzE, @JednotkaMeny=@jednM, @SazbaSD=NULL, @SazbaDPH=NULL, @ZakazanoDPH=0,
|
||||||
|
@VstupniCena=@vstC, @PovolitDuplicitu=1, @PovolitBlokovane=1, @Mnozstvi=@mnoz
|
||||||
|
END -- @idSS IS NOT NULL
|
||||||
|
END
|
||||||
|
CLOSE p
|
||||||
|
DEALLOCATE p
|
||||||
|
END -- @idDZ IS NOT NULL
|
||||||
|
END -- mam neco v tabulici @vydeje
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
IF (@tranPred=0) AND (@@TRANCOUNT>0)
|
||||||
|
COMMIT TRAN
|
||||||
|
END TRY
|
||||||
|
|
||||||
|
BEGIN CATCH
|
||||||
|
IF (@tranPred=0) AND (@@TRANCOUNT>0)
|
||||||
|
ROLLBACK TRAN
|
||||||
|
SET @errMsg = ERROR_MESSAGE() + N' / ' + ERROR_PROCEDURE() + N' / r. ' + CONVERT(nvarchar, ERROR_LINE())
|
||||||
|
END CATCH
|
||||||
|
|
||||||
10
_sql/ep_Vyroba_GenerujPalety.sql
Normal file
10
_sql/ep_Vyroba_GenerujPalety.sql
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
-- dbo.ep_Vyroba_GenerujPalety
|
||||||
|
CREATE PROCEDURE dbo.ep_Vyroba_GenerujPalety
|
||||||
|
@idPrikaz INT=NULL,
|
||||||
|
@pocetStitku INT=0,
|
||||||
|
@pocetPaletListu INT=0,
|
||||||
|
@paletaStart NVARCHAR(25)=NULL,
|
||||||
|
@sarze NVARCHAR(15)=NULL
|
||||||
|
AS
|
||||||
|
|
||||||
|
SET NOCOUNT ON
|
||||||
101
_sql/ep_Vyroba_PrijemNestandard.sql
Normal file
101
_sql/ep_Vyroba_PrijemNestandard.sql
Normal file
@ -0,0 +1,101 @@
|
|||||||
|
-- dbo.ep_Vyroba_PrijemNestandard
|
||||||
|
CREATE PROCEDURE dbo.ep_Vyroba_PrijemNestandard
|
||||||
|
AS
|
||||||
|
|
||||||
|
-- !! proceduru neupravujte, bude stejne pregenerovana pri startu pluginu PluginHDCRTN !!
|
||||||
|
|
||||||
|
SET NOCOUNT ON
|
||||||
|
|
||||||
|
IF OBJECT_ID(N'tempdb..#TabPrijemNestandard', N'U') IS NULL
|
||||||
|
RETURN
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@sklad NVARCHAR(30)=N'211',
|
||||||
|
@radaPrijem NVARCHAR(3)='270',
|
||||||
|
@vstC TINYINT,
|
||||||
|
@dpz TINYINT=0,
|
||||||
|
@jednM INT,
|
||||||
|
@dzMena NVARCHAR(3),
|
||||||
|
@dzKurz NUMERIC(19,6),
|
||||||
|
@dzKurzE NUMERIC(19,6),
|
||||||
|
@idDZ INT,
|
||||||
|
@idPZ INT,
|
||||||
|
@idStav INT,
|
||||||
|
@mjEvid NVARCHAR(10),
|
||||||
|
@mnoz NUMERIC(19,6),
|
||||||
|
@mnozKS NUMERIC(19,6),
|
||||||
|
@ksVKA NUMERIC(19,6),
|
||||||
|
@idVCK INT,
|
||||||
|
@idVCS INT,
|
||||||
|
@idVCP INT
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@idKmen INT,
|
||||||
|
@pocetKA SMALLINT,
|
||||||
|
@paletList NVARCHAR(50),
|
||||||
|
@sarze NVARCHAR(50),
|
||||||
|
@datVyroby DATETIME,
|
||||||
|
@datExpirace DATETIME,
|
||||||
|
@smena TINYINT,
|
||||||
|
@idStroj INT
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
SELECT TOP(1) @idKmen=IDKmen,
|
||||||
|
@mnoz=MnozstviKg,
|
||||||
|
@paletList=PaletovyList,
|
||||||
|
@sarze=Sarze,
|
||||||
|
@datVyroby=DatumVyroby,
|
||||||
|
@datExpirace=DatumExpirace,
|
||||||
|
@smena=Smena,
|
||||||
|
@idStroj=IDStroje
|
||||||
|
FROM #TabPrijemNestandard
|
||||||
|
|
||||||
|
|
||||||
|
IF (@idKmen IS NULL) OR (@mnoz<=0)
|
||||||
|
RETURN
|
||||||
|
|
||||||
|
|
||||||
|
SET @paletList = ISNULL(@paletList, N'')
|
||||||
|
SET @sarze = ISNULL(@sarze, N'')
|
||||||
|
|
||||||
|
|
||||||
|
SELECT @mjEvid=MJEvidence FROM dbo.TabKmenZbozi WHERE ID=@idKmen
|
||||||
|
SET @ksVKA = 1
|
||||||
|
IF (@mjEvid=N'KA')
|
||||||
|
SET @ksVKA = ISNULL( (SELECT PocetOdvozene FROM dbo.TabMJZbozi WHERE KodMJ1=N'KA' AND KodMJ2=N'Ks' AND IDKmenZbozi=@idKmen), 0)
|
||||||
|
|
||||||
|
|
||||||
|
SET @idStav = (SELECT ID FROM dbo.TabStavSkladu WHERE IDSklad=@sklad AND IDKmenZbozi=@idKmen)
|
||||||
|
IF (@idStav IS NULL)
|
||||||
|
EXEC dbo.hp_InsertStavSkladu @IDKmen=@idKmen, @IDSklad=@sklad, @IDZboSklad=@idStav OUT
|
||||||
|
|
||||||
|
IF (@idStav IS NOT NULL)
|
||||||
|
BEGIN
|
||||||
|
EXEC dbo.hp_InsertHlavickyOZ @ident=@idDZ OUT, @Sklad=@sklad, @DruhPohybu=@dpz, @RadaDokladu=@radaPrijem, @CisloOrg=0
|
||||||
|
SELECT @dzMena=Mena, @dzKurz=Kurz, @dzKurzE=KurzEuro, @jednM=JednotkaMeny, @vstC=VstupniCena FROM dbo.TabDokladyZbozi WHERE ID=@idDZ
|
||||||
|
IF (@idDZ IS NOT NULL)
|
||||||
|
BEGIN
|
||||||
|
-- SET @mnoz = @pocetKA
|
||||||
|
EXEC dbo.hp_InsertPolozkyOZ @ident=@idPZ OUT, @IDDoklad=@idDZ, @DruhPohybu=@dpz, @CisloOrg=0, @IDZboSklad=@idStav, @Mena=@dzMena, @Kurz=@dzKurz,
|
||||||
|
@JednotkaMeny=@jednM, @KurzEuro=@dzKurzE, @SazbaSD=NULL, @SazbaDPH=NULL, @ZakazanoDPH=0, @VstupniCena=@vstC, @Mnozstvi=@mnoz
|
||||||
|
IF (@idPZ IS NOT NULL) AND (@sarze<>N'')
|
||||||
|
BEGIN
|
||||||
|
UPDATE dbo.TabPohybyZbozi SET Poznamka=N'P<EFBFBD><EFBFBD>jem nestandard' WHERE ID=@idPZ
|
||||||
|
SET @idVCK = (SELECT ID FROM dbo.TabVyrCK WHERE IDKmenZbozi=@idKmen AND Nazev1=@paletList)
|
||||||
|
IF (@idVCK IS NULL)
|
||||||
|
EXEC dbo.hp_OZInsertVyrCK @IDVyrCK=@idVCK OUT, @IDKmenZbozi=@idKmen, @Nazev1=@paletList, @Selectem=0, @DatVyroby=@datVyroby, @DatExpirace=@datExpirace, @Poznamka=N'Nestandard'
|
||||||
|
SET @idVCS = (SELECT ID FROM dbo.TabVyrCS WHERE IDVyrCK=@idVCK AND IDStavSkladu=@idStav AND Nazev1=@paletList)
|
||||||
|
IF (@idVCS IS NULL)
|
||||||
|
EXEC dbo.hp_OZInsertVyrCS @IDVyrCS=@idVCS OUT, @IDVyrCK=@idVCK, @IDZboSklad=@idStav
|
||||||
|
INSERT dbo.TabVyrCP (IDPolozkaDokladu, IDVyrCis, Nazev, Mnozstvi, DatExpirace) SELECT @idPZ, @idVCS, @sarze, @mnoz, @datExpirace
|
||||||
|
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM dbo._TabVyroba_Palety WHERE Typ=5 AND CisloPalety=@paletList AND Sarze=@sarze)
|
||||||
|
INSERT dbo._TabVyroba_Palety (Typ, CisloPalety, Sarze, DatZahajeni, DatUkonceni, Mnozstvi, MnozstviKA, IDKmen)
|
||||||
|
SELECT 5, @paletList, @sarze, GETDATE(), GETDATE(), @pocetKA*@ksVKA, @pocetKA, @idKmen
|
||||||
|
END
|
||||||
|
END
|
||||||
|
END
|
||||||
116
_sql/ep_Vyroba_VyrobaMimoPlan.sql
Normal file
116
_sql/ep_Vyroba_VyrobaMimoPlan.sql
Normal file
@ -0,0 +1,116 @@
|
|||||||
|
-- dbo.ep_Vyroba_VyrobaMimoPlan
|
||||||
|
CREATE PROCEDURE dbo.ep_Vyroba_VyrobaMimoPlan
|
||||||
|
@IDKmen INT=NULL,
|
||||||
|
@IDStroj INT=NULL,
|
||||||
|
@IDZamest INT=NULL
|
||||||
|
AS
|
||||||
|
|
||||||
|
-- !! proceduru neupravujte, bude stejne pregenerovana pri startu pluginu PluginHDCRTN !!
|
||||||
|
|
||||||
|
SET NOCOUNT ON
|
||||||
|
|
||||||
|
IF ((@IDKmen IS NULL) OR (@IDStroj IS NULL)) AND OBJECT_ID(N'tempdb..#TabVyrobaMimoPlan', N'U') IS NULL
|
||||||
|
RETURN
|
||||||
|
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@errMsg NVARCHAR(500),
|
||||||
|
@tranPred INT
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@idEvROp INT,
|
||||||
|
@uroven INT,
|
||||||
|
@maxUroven INT,
|
||||||
|
@iChyba INT,
|
||||||
|
@mamPolotovar BIT,
|
||||||
|
@idPlan INT,
|
||||||
|
@IDPracoviste INT,
|
||||||
|
@idVPr INT,
|
||||||
|
@prpD INT,
|
||||||
|
@szKmen NVARCHAR(3),
|
||||||
|
@prpA NCHAR(1)=N'A',
|
||||||
|
@mn NUMERIC(19,6),
|
||||||
|
@mj NVARCHAR(10),
|
||||||
|
@szVyr NVARCHAR(3),
|
||||||
|
@rcVyr NVARCHAR(30)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
IF (@IDKmen IS NULL)
|
||||||
|
DECLARE v CURSOR LOCAL FOR
|
||||||
|
SELECT IDKmen, IDStroj, IDZamest FROM #TabVyrobaMimoPlan ORDER BY ID
|
||||||
|
ELSE
|
||||||
|
DECLARE v CURSOR LOCAL FOR
|
||||||
|
SELECT @IDKmen, @IDStroj, @IDZamest
|
||||||
|
OPEN v
|
||||||
|
WHILE (1=1)
|
||||||
|
BEGIN
|
||||||
|
FETCH NEXT FROM v INTO @IDKmen, @IDStroj, @IDZamest
|
||||||
|
IF (@@FETCH_STATUS<>0) BREAK
|
||||||
|
|
||||||
|
IF (@IDZamest IS NULL)
|
||||||
|
SELECT TOP(1) ID FROM dbo.TabCisZam
|
||||||
|
SELECT @szVyr=SkupZbo, @rcVyr=RegCis, @mj=MJEvidence FROM dbo.TabKmenZbozi WHERE ID=@IDKmen
|
||||||
|
SET @mn = ISNULL( (SELECT PocetHlavni FROM dbo.TabMJZbozi WHERE IDKmenZbozi=@IDKmen AND KodMJ1=N'KA' AND KodMJ2='Pal'), 1)
|
||||||
|
IF (@mn=0)
|
||||||
|
SET @mn = 1
|
||||||
|
SELECT @IDPracoviste=IDPrac FROM dbo.TabCisStroju WHERE ID=@IDStroj
|
||||||
|
|
||||||
|
EXEC @idPlan=dbo.hp_NewVyrobniPlan @IDDilce=@IDKmen, @mnozstvi=@mn, @Poznamka=N'V<EFBFBD>roba mimo pl<70>n', @ZdrojPozadavku=0
|
||||||
|
IF (@idPlan>0)
|
||||||
|
BEGIN
|
||||||
|
UPDATE dbo.TabPlan SET Datum=dbo.hf_TruncDate(GETDATE()) WHERE ID=@idPlan
|
||||||
|
|
||||||
|
IF OBJECT_ID(N'tempdb..#TabPomSeznamVyrPlanuProZaplanovani', N'U') IS NULL
|
||||||
|
CREATE TABLE #TabPomSeznamVyrPlanuProZaplanovani (ID INT NOT NULL)
|
||||||
|
IF OBJECT_ID(N'tempdb..#TabGenVyrPrikazy', N'U') IS NULL
|
||||||
|
CREATE TABLE #TabGenVyrPrikazy (ID INT NOT NULL, UrovenVnoreni INT NULL)
|
||||||
|
INSERT #TabPomSeznamVyrPlanuProZaplanovani (ID) SELECT @idPlan
|
||||||
|
EXEC dbo.hp_VyrPlan_ZaplanujSeznam @GenPlanovaneVyroby=0
|
||||||
|
|
||||||
|
IF EXISTS (SELECT 1 FROM #TabGenVyrPrikazy)
|
||||||
|
BEGIN
|
||||||
|
UPDATE t SET t.UrovenVnoreni=s.UrovenVnoreni FROM #TabGenVyrPrikazy t, dbo.TabPrikaz s WHERE s.ID=t.ID
|
||||||
|
SET @maxUroven=(SELECT MAX(UrovenVnoreni) FROM #TabGenVyrPrikazy)
|
||||||
|
|
||||||
|
DECLARE c CURSOR LOCAL FOR
|
||||||
|
SELECT ID, UrovenVnoreni FROM #TabGenVyrPrikazy
|
||||||
|
OPEN c
|
||||||
|
WHILE (1=1)
|
||||||
|
BEGIN
|
||||||
|
FETCH NEXT FROM c INTO @idVPr, @uroven
|
||||||
|
IF (@@FETCH_STATUS<>0) BREAK
|
||||||
|
|
||||||
|
SELECT @idKmen=p.IDTabKmen, @szKmen=k.SkupZbo FROM dbo.TabPrikaz p INNER JOIN dbo.TabKmenZbozi k ON (k.ID=p.IDTabKmen) WHERE p.ID=@idVPr
|
||||||
|
SET @mamPolotovar=0
|
||||||
|
|
||||||
|
IF EXISTS (SELECT 1 FROM dbo.TabPrKVazby v INNER JOIN dbo.TabKmenZbozi n ON (v.nizsi=n.ID)
|
||||||
|
WHERE v.IDOdchylkyDo IS NULL AND v.IDPrikaz=@idVPr AND n.SkupZbo LIKE N'7%' AND n.SkupZbo<>N'701')
|
||||||
|
SET @mamPolotovar=1
|
||||||
|
|
||||||
|
IF (@szKmen NOT IN (N'701')) AND (@mamPolotovar=0)
|
||||||
|
UPDATE dbo.TabPrPostup SET pracoviste=@IDPracoviste, IDStroje=@IDStroj WHERE IDOdchylkyDo IS NULL AND Nazev LIKE N'Pe<EFBFBD>e%' AND IDPrikaz=@idVPr
|
||||||
|
|
||||||
|
EXEC @iChyba=dbo.hp_ZadaniPrikazuDoVyroby @IDPrikaz=@idVPr, @OnlyPredzpracovani=0
|
||||||
|
/*
|
||||||
|
IF (@iChyba=0) AND (@szKmen NOT IN (N'701'))
|
||||||
|
BEGIN
|
||||||
|
EXEC @idEvROp=dbo.ep_Vyroba_InsertEvidRozpracOper @IDZamestnance=@idZamest, @IDPracoviste=@IDPracoviste, @IDStroje=@IDStroj
|
||||||
|
IF (@idEvROp>0)
|
||||||
|
BEGIN
|
||||||
|
SELECT TOP(1) @prpD=Doklad, @prpA=Alt FROM dbo.TabPrPostup WHERE IDOdchylkyDo IS NULL AND IDPrikaz=@idVPr
|
||||||
|
EXEC dbo.ep_Vyroba_InsertEvidRozpracOperPol @IdEvidRozpOper=@idEvROp, @IdPrikaz=@idVPr, @doklPrPost=@prpD, @altPrPost=@prpA
|
||||||
|
END
|
||||||
|
END
|
||||||
|
*/
|
||||||
|
END
|
||||||
|
CLOSE c
|
||||||
|
DEALLOCATE c
|
||||||
|
END
|
||||||
|
END
|
||||||
|
|
||||||
|
END
|
||||||
|
CLOSE v
|
||||||
|
DEALLOCATE v
|
||||||
49
_sql/ep_Vyroba_ZapisCCP1.sql
Normal file
49
_sql/ep_Vyroba_ZapisCCP1.sql
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
-- dbo.ep_Vyroba_ZapisCCP1
|
||||||
|
CREATE PROCEDURE dbo.ep_Vyroba_ZapisCCP1
|
||||||
|
AS
|
||||||
|
|
||||||
|
-- !! proceduru neupravujte, bude stejne pregenerovana pri startu pluginu PluginHDCRTN !!
|
||||||
|
|
||||||
|
SET NOCOUNT ON
|
||||||
|
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@id INT,
|
||||||
|
@idVPr INT,
|
||||||
|
@idKZ INT,
|
||||||
|
@idStroj INT,
|
||||||
|
@smena TINYINT,
|
||||||
|
@dat DATETIME=GETDATE(),
|
||||||
|
@teplota NUMERIC(15,2),
|
||||||
|
@rychlost NUMERIC(15,2),
|
||||||
|
@hmotnost NUMERIC(15,2),
|
||||||
|
@delka NUMERIC(15,2),
|
||||||
|
@prumer NUMERIC(15,2),
|
||||||
|
@naprava NVARCHAR(255)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
IF OBJECT_ID(N'tempdb..#InsertCCP1Zaznamy', N'U') IS NULL
|
||||||
|
RETURN
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
DECLARE c CURSOR LOCAL FOR
|
||||||
|
SELECT IDStroj, IDPrikaz, Smena, Teplota, Rychlost, Hmotnost, Delka, Prumer, NapravneOpatreni
|
||||||
|
FROM #InsertCCP1Zaznamy
|
||||||
|
ORDER BY ID
|
||||||
|
OPEN c
|
||||||
|
WHILE (1=1)
|
||||||
|
BEGIN
|
||||||
|
FETCH NEXT FROM c INTO @idStroj, @idVPr, @smena, @teplota, @rychlost, @hmotnost, @delka, @prumer, @naprava
|
||||||
|
IF (@@FETCH_STATUS<>0) BREAK
|
||||||
|
|
||||||
|
SELECT @idKZ=IDTabKmen FROM dbo.TabPrikaz WHERE ID=@idVPr
|
||||||
|
|
||||||
|
INSERT dbo._TabVyroba_KontrolyCCP1 (IDStroj, Smena, Teplota, Rychlost, Hmotnost, Delka, Prumer, IDKmenZbozi, NapravneOpatreni)
|
||||||
|
SELECT @idStroj, @smena, @teplota, @rychlost, @hmotnost, @delka, @prumer, @idKZ, @naprava
|
||||||
|
|
||||||
|
END
|
||||||
|
CLOSE c
|
||||||
|
DEALLOCATE c
|
||||||
36
_sql/parseIntervalToHours.sql
Normal file
36
_sql/parseIntervalToHours.sql
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
DROP TABLE IF EXISTS #tempPeceni
|
||||||
|
|
||||||
|
CREATE TABLE #tempPeceni
|
||||||
|
(
|
||||||
|
EventID VARCHAR(8) NOT NULL,
|
||||||
|
StartDateTime DATETIME NOT NULL,
|
||||||
|
EndDateTime DATETIME NOT NULL
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
INSERT INTO #tempPeceni
|
||||||
|
VALUES
|
||||||
|
('peceni', 'september 17, 2023 7:0:00', 'september 18, 2023 02:26:18');
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
select hr.ld AS CasDavky,
|
||||||
|
60 - case when e.startdatetime > hr.ld then datepart(minute, e.startdatetime) else 0 end
|
||||||
|
+ case when e.enddatetime < hr.ud then datepart(minute, e.enddatetime)-60 else 0 end as allocatedminutes
|
||||||
|
from #tempPeceni as e
|
||||||
|
cross apply
|
||||||
|
(
|
||||||
|
select
|
||||||
|
dateadd(hour, datepart(hour,e.startdatetime)+t.rn-1, cast(cast(e.startdatetime as date) as datetime)) as ld,
|
||||||
|
dateadd(hour, datepart(hour,e.startdatetime)+t.rn, cast(cast(e.startdatetime as date) as datetime)) as ud,
|
||||||
|
rn
|
||||||
|
from
|
||||||
|
(
|
||||||
|
-- a tally, max 100 rows .. max 100 hours duration
|
||||||
|
select top (1+datediff(hour,e.startdatetime,dateadd(minute, -1, e.enddatetime))) row_number() over(order by @@spid) as rn
|
||||||
|
from (values(1),(1),(1),(1),(1),(1),(1),(1),(1),(1)) as a(n)
|
||||||
|
cross join (values(1),(1),(1),(1),(1),(1),(1),(1),(1),(1)) as b(n)
|
||||||
|
) as t
|
||||||
|
) as hr;
|
||||||
10
_sql/spec_Clear.sql
Normal file
10
_sql/spec_Clear.sql
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
DROP TRIGGER IF EXISTS dbo.ET_TabVyroba_Objednavky_IU
|
||||||
|
DROP TRIGGER IF EXISTS dbo.ET_TabVyroba_Objednavky_Pol_D
|
||||||
|
DROP TRIGGER IF EXISTS dbo.ET_TabPohybyZbozi_HDC_IU
|
||||||
|
DROP TRIGGER IF EXISTS dbo.ET_TabPohybyZbozi_HDC_D
|
||||||
|
DROP TRIGGER IF EXISTS dbo.ET_TabVyrCP_HDC_IU
|
||||||
|
DROP TRIGGER IF EXISTS dbo.ET_TabVyrCP_HDC_D
|
||||||
|
DROP TRIGGER IF EXISTS dbo.ET_TabVyroba_Palety_IU
|
||||||
|
DROP TRIGGER IF EXISTS dbo.ET_TabVyroba_Palety_D
|
||||||
|
DROP TRIGGER IF EXISTS dbo.ET_TabVyroba_PaletyUkonceni_D
|
||||||
|
DROP TRIGGER IF EXISTS dbo.ET_TabVyroba_VydejMatSarze_IU
|
||||||
103
_sql/tbl__TabVyrobaObjednavky.sql
Normal file
103
_sql/tbl__TabVyrobaObjednavky.sql
Normal file
@ -0,0 +1,103 @@
|
|||||||
|
IF OBJECT_ID(N'dbo._TabVyroba_Objednavky', N'U') IS NULL
|
||||||
|
CREATE TABLE dbo._TabVyroba_Objednavky (
|
||||||
|
ID int IDENTITY(1, 1) NOT NULL,
|
||||||
|
IDPrijataDataJson int NULL,
|
||||||
|
IdPHIdent bigint NULL,
|
||||||
|
IdPHIdent2 bigint NULL,
|
||||||
|
PHOznaceni nvarchar(50) COLLATE Czech_CI_AS NULL,
|
||||||
|
IDDokladOZ INT,
|
||||||
|
Poznamka nvarchar(255) COLLATE Czech_CI_AS NULL,
|
||||||
|
SkupZbo nvarchar(3) COLLATE Czech_CI_AS NULL,
|
||||||
|
RegCis nvarchar(30) COLLATE Czech_CI_AS NULL,
|
||||||
|
IDKmenZbozi int NULL,
|
||||||
|
Mnozstvi numeric(19, 6) DEFAULT 0.0 NOT NULL,
|
||||||
|
MnozKVydeji numeric(19, 6) DEFAULT 0.0 NOT NULL,
|
||||||
|
PaletovyList nvarchar(50) COLLATE Czech_CI_AS NULL,
|
||||||
|
Sarze nvarchar(30) COLLATE Czech_CI_AS NULL,
|
||||||
|
NocniObjednavka BIT NOT NULL DEFAULT 0,
|
||||||
|
Storno BIT NOT NULL DEFAULT 0,
|
||||||
|
Vratka BIT NOT NULL DEFAULT 0,
|
||||||
|
Splneno BIT NOT NULL DEFAULT 0,
|
||||||
|
PocetPohybuOZ SMALLINT NOT NULL DEFAULT 0,
|
||||||
|
Blokovano bit DEFAULT 0 NOT NULL,
|
||||||
|
DatPorizeni datetime DEFAULT getdate() NOT NULL,
|
||||||
|
Autor NVARCHAR(80) NOT NULL DEFAULT SUSER_SNAME(),
|
||||||
|
DatZpracovani datetime NULL,
|
||||||
|
CONSTRAINT PK__TabVyroba_Objednavky PRIMARY KEY CLUSTERED (ID DESC) WITH ( PAD_INDEX = OFF, IGNORE_DUP_KEY = OFF, STATISTICS_NORECOMPUTE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
|
)
|
||||||
|
|
||||||
|
DROP INDEX IF EXISTS EI_TabVyroba_Objednavky_IdPrijataDataJson ON dbo._TabVyroba_Objednavky
|
||||||
|
CREATE NONCLUSTERED INDEX EI_TabVyroba_Objednavky_IdPrijataDataJson ON dbo._TabVyroba_Objednavky (IDPrijataDataJson)
|
||||||
|
WITH ( PAD_INDEX = OFF, DROP_EXISTING = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
|
|
||||||
|
DROP INDEX IF EXISTS EI_TabVyroba_Objednavky_idPH ON dbo._TabVyroba_Objednavky
|
||||||
|
CREATE NONCLUSTERED INDEX EI_TabVyroba_Objednavky_idPH ON dbo._TabVyroba_Objednavky (IdPHIdent)
|
||||||
|
WITH ( PAD_INDEX = OFF, DROP_EXISTING = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* 10.11.2023 */
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_Objednavky', N'IDDokladOZ') IS NULL ALTER TABLE dbo._TabVyroba_Objednavky ADD IDDokladOZ INT NULL
|
||||||
|
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_Objednavky', N'IDPohybOZ') IS NOT NULL ALTER TABLE dbo._TabVyroba_Objednavky DROP COLUMN IDPohybOZ
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_Objednavky', N'DatReportuPH') IS NOT NULL ALTER TABLE dbo._TabVyroba_Objednavky DROP COLUMN DatReportuPH
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_Objednavky', N'PocetPohybuOZ') IS NULL ALTER TABLE dbo._TabVyroba_Objednavky ADD PocetPohybuOZ SMALLINT NOT NULL DEFAULT 0
|
||||||
|
|
||||||
|
|
||||||
|
/* 12.11.2023 */
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_Objednavky', N'Storno') IS NULL ALTER TABLE dbo._TabVyroba_Objednavky ADD Storno BIT NOT NULL DEFAULT 0
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_Objednavky', N'Vratka') IS NULL ALTER TABLE dbo._TabVyroba_Objednavky ADD Vratka BIT NOT NULL DEFAULT 0
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_Objednavky', N'Autor') IS NULL ALTER TABLE dbo._TabVyroba_Objednavky ADD Autor NVARCHAR(80) NOT NULL DEFAULT SUSER_SNAME()
|
||||||
|
|
||||||
|
/* 14.11.2023 */
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_Objednavky', N'NocniObjednavka') IS NULL ALTER TABLE dbo._TabVyroba_Objednavky ADD NocniObjednavka BIT NOT NULL DEFAULT 0
|
||||||
|
|
||||||
|
/* 23.11.2023 */
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_Objednavky', N'Splneno') IS NULL ALTER TABLE dbo._TabVyroba_Objednavky ADD Splneno BIT NOT NULL DEFAULT 0
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_Objednavky', N'MnozKVydeji') IS NULL ALTER TABLE dbo._TabVyroba_Objednavky ADD MnozKVydeji NUMERIC(19,6) NOT NULL DEFAULT 0.0
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
IF OBJECT_ID(N'dbo._TabVyroba_Objednavky_Pol', N'U') IS NULL
|
||||||
|
CREATE TABLE dbo._TabVyroba_Objednavky_Pol (
|
||||||
|
ID INT IDENTITY(1, 1) NOT NULL,
|
||||||
|
IDHlava INT NULL,
|
||||||
|
IDDokladOZ INT NULL,
|
||||||
|
IDPohybOZ INT NULL,
|
||||||
|
IDVyrCP INT NULL,
|
||||||
|
SkupZbo NVARCHAR(3),
|
||||||
|
RegCis NVARCHAR(100),
|
||||||
|
Mnozstvi numeric(19, 6) DEFAULT 0.0 NOT NULL,
|
||||||
|
Sarze NVARCHAR(100) NULL,
|
||||||
|
PaletovyList NVARCHAR(100) NULL,
|
||||||
|
DatPorizeni datetime DEFAULT getdate() NOT NULL,
|
||||||
|
CONSTRAINT PK__TabVyroba_Objednavky_Pol PRIMARY KEY CLUSTERED (ID DESC) WITH ( PAD_INDEX = OFF, IGNORE_DUP_KEY = OFF, STATISTICS_NORECOMPUTE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
DROP INDEX IF EXISTS EI_TabVyroba_Objednavky_Pol_idHlava ON dbo._TabVyroba_Objednavky_Pol
|
||||||
|
CREATE NONCLUSTERED INDEX EI_TabVyroba_Objednavky_Pol_idHlava ON dbo._TabVyroba_Objednavky_Pol (IDHlava)
|
||||||
|
WITH ( PAD_INDEX = OFF, DROP_EXISTING = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
|
|
||||||
|
DROP INDEX IF EXISTS EI_TabVyroba_Objednavky_Pol_idPZ ON dbo._TabVyroba_Objednavky_Pol
|
||||||
|
CREATE NONCLUSTERED INDEX EI_TabVyroba_Objednavky_Pol_idPZ ON dbo._TabVyroba_Objednavky_Pol (IDPohybOZ)
|
||||||
|
WITH ( PAD_INDEX = OFF, DROP_EXISTING = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
|
|
||||||
|
DROP INDEX IF EXISTS EI_TabVyroba_Objednavky_Pol_idDZ ON dbo._TabVyroba_Objednavky_Pol
|
||||||
|
CREATE NONCLUSTERED INDEX EI_TabVyroba_Objednavky_Pol_idDZ ON dbo._TabVyroba_Objednavky_Pol (IDDokladOZ)
|
||||||
|
WITH ( PAD_INDEX = OFF, DROP_EXISTING = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* 13.11.2023 */
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_Objednavky_Pol', N'IDVyrCP') IS NULL ALTER TABLE dbo._TabVyroba_Objednavky_Pol ADD IDVyrCP INT NULL
|
||||||
|
|
||||||
|
/* 9.9.2024 */
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_Objednavky_Pol', N'Sarze') IS NULL ALTER TABLE dbo._TabVyroba_Objednavky_Pol ADD Sarze NVARCHAR(100) NULL
|
||||||
|
|
||||||
|
/* 17.9.2024 */
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_Objednavky_Pol', N'PaletovyList') IS NULL ALTER TABLE dbo._TabVyroba_Objednavky_Pol ADD PaletovyList NVARCHAR(100) NULL
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_Objednavky_Pol', N'SkupZbo') IS NULL ALTER TABLE dbo._TabVyroba_Objednavky_Pol ADD SkupZbo NVARCHAR(3) NULL
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_Objednavky_Pol', N'RegCis') IS NULL ALTER TABLE dbo._TabVyroba_Objednavky_Pol ADD RegCis NVARCHAR(30) NULL
|
||||||
52
_sql/tbl__TabVyrobaOperaceStartStop.sql
Normal file
52
_sql/tbl__TabVyrobaOperaceStartStop.sql
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
IF OBJECT_ID(N'dbo._TabVyroba_OperaceStartStop', N'U') IS NULL
|
||||||
|
CREATE TABLE dbo._TabVyroba_OperaceStartStop (
|
||||||
|
ID int IDENTITY(1, 1) NOT NULL,
|
||||||
|
IDPrijataDataJson int NOT NULL,
|
||||||
|
IdPHIdent bigint NULL,
|
||||||
|
IdPHIdent2 bigint NULL,
|
||||||
|
IDPrikaz int NULL,
|
||||||
|
Nazev NVARCHAR(50) NULL,
|
||||||
|
DokladPrP int NULL,
|
||||||
|
AltPrP nchar(1) COLLATE Czech_CI_AS NULL,
|
||||||
|
SkupZbo nvarchar(3) COLLATE Czech_CI_AS NULL,
|
||||||
|
RegCis nvarchar(30) COLLATE Czech_CI_AS NULL,
|
||||||
|
IDKmenZbozi int NULL,
|
||||||
|
IDStroj int NULL,
|
||||||
|
IDPracoviste int NULL,
|
||||||
|
CasStart datetime NULL,
|
||||||
|
CasKonec datetime NULL,
|
||||||
|
IDDokladOZ INT NULL,
|
||||||
|
CONSTRAINT PK___TabVyrobaOperaceStartStop PRIMARY KEY CLUSTERED (ID DESC)
|
||||||
|
WITH (PAD_INDEX = OFF, IGNORE_DUP_KEY = OFF, STATISTICS_NORECOMPUTE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
DROP INDEX IF EXISTS EI_TabVyroba_OperaceStartStop_IdPrijataDataJson ON dbo._TabVyroba_OperaceStartStop
|
||||||
|
CREATE NONCLUSTERED INDEX EI_TabVyroba_OperaceStartStop_IdPrijataDataJson ON dbo._TabVyroba_OperaceStartStop (IDPrijataDataJson)
|
||||||
|
WITH (PAD_INDEX = OFF, DROP_EXISTING = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
|
|
||||||
|
DROP INDEX IF EXISTS EI_TabVyroba_OperaceStartStop_Prikaz ON dbo._TabVyroba_OperaceStartStop
|
||||||
|
CREATE NONCLUSTERED INDEX EI_TabVyroba_OperaceStartStop_Prikaz ON dbo._TabVyroba_OperaceStartStop (IDPrikaz)
|
||||||
|
WITH (PAD_INDEX = OFF, DROP_EXISTING = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
|
|
||||||
|
DROP INDEX IF EXISTS EI_TabVyroba_OperaceStartStop_Stroj ON dbo._TabVyroba_OperaceStartStop
|
||||||
|
CREATE NONCLUSTERED INDEX EI_TabVyroba_OperaceStartStop_Stroj ON dbo._TabVyroba_OperaceStartStop (IDStroj)
|
||||||
|
WITH (PAD_INDEX = OFF, DROP_EXISTING = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* 26.10.2023 */
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_OperaceStartStop', N'PosledniChyba') IS NULL ALTER TABLE dbo._TabVyroba_OperaceStartStop ADD PosledniChyba NVARCHAR(255) NULL
|
||||||
|
|
||||||
|
|
||||||
|
/* 28.10.2023 */
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_OperaceStartStop', N'IDMzda') IS NULL ALTER TABLE dbo._TabVyroba_OperaceStartStop ADD IDMzda INT NULL
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_OperaceStartStop', N'IDEvidRozpracOper') IS NULL ALTER TABLE dbo._TabVyroba_OperaceStartStop ADD IDEvidRozpracOper INT NULL
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_OperaceStartStop', N'Ukonceno') IS NULL ALTER TABLE dbo._TabVyroba_OperaceStartStop ADD Ukonceno BIT NOT NULL DEFAULT 0
|
||||||
|
|
||||||
|
/* 13.10.2023 */
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_OperaceStartStop', N'IDDokladOZ') IS NULL ALTER TABLE dbo._TabVyroba_OperaceStartStop ADD IDDokladOZ INT NULL
|
||||||
|
|
||||||
|
/* 7.10.2024 */
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_OperaceStartStop', N'Nazev') IS NULL ALTER TABLE dbo._TabVyroba_OperaceStartStop ADD Nazev NVARCHAR(50) NULL
|
||||||
|
|
||||||
25
_sql/tbl__TabVyrobaOperaceStartStopVydej.sql
Normal file
25
_sql/tbl__TabVyrobaOperaceStartStopVydej.sql
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
IF OBJECT_ID(N'dbo._TabVyroba_OperaceStartStopVydej', N'U') IS NULL
|
||||||
|
CREATE TABLE dbo._TabVyroba_OperaceStartStopVydej (
|
||||||
|
ID int IDENTITY(1, 1) NOT NULL,
|
||||||
|
IDHlava int NOT NULL,
|
||||||
|
IDKmenZbozi int NOT NULL,
|
||||||
|
Mnozstvi numeric(19, 6) DEFAULT 0.0 NOT NULL,
|
||||||
|
MnozstviPuvodni numeric(19, 6) DEFAULT 0.0 NOT NULL,
|
||||||
|
IDPohybZbozi int NOT NULL,
|
||||||
|
CONSTRAINT PK__TabVyroba_OperaceStartStopVydej PRIMARY KEY CLUSTERED (ID DESC)
|
||||||
|
WITH (PAD_INDEX = OFF, IGNORE_DUP_KEY = OFF, STATISTICS_NORECOMPUTE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
DROP INDEX IF EXISTS EI__TabVyroba_OperaceStartStopVydej_IDHlava ON dbo._TabVyroba_OperaceStartStopVydej
|
||||||
|
CREATE NONCLUSTERED INDEX EI__TabVyroba_OperaceStartStopVydej_IDHlava ON dbo._TabVyroba_OperaceStartStopVydej (IDHlava)
|
||||||
|
WITH (PAD_INDEX = OFF, DROP_EXISTING = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
|
|
||||||
|
DROP INDEX IF EXISTS EI__TabVyroba_OperaceStartStopVydej_IDKmen ON dbo._TabVyroba_OperaceStartStopVydej
|
||||||
|
CREATE NONCLUSTERED INDEX EI__TabVyroba_OperaceStartStopVydej_IDKmen ON dbo._TabVyroba_OperaceStartStopVydej (IDKmenZbozi)
|
||||||
|
WITH (PAD_INDEX = OFF, DROP_EXISTING = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
|
|
||||||
|
DROP INDEX IF EXISTS EI__TabVyroba_OperaceStartStopVydej_PohybOZ ON dbo._TabVyroba_OperaceStartStopVydej
|
||||||
|
CREATE NONCLUSTERED INDEX EI__TabVyroba_OperaceStartStopVydej_PohybOZ ON dbo._TabVyroba_OperaceStartStopVydej (IDPohybZbozi)
|
||||||
|
WITH (PAD_INDEX = OFF, DROP_EXISTING = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
82
_sql/tbl__TabVyrobaPalety.sql
Normal file
82
_sql/tbl__TabVyrobaPalety.sql
Normal file
@ -0,0 +1,82 @@
|
|||||||
|
IF OBJECT_ID(N'dbo._TabVyroba_Palety', N'U') IS NULL
|
||||||
|
CREATE TABLE dbo._TabVyroba_Palety (
|
||||||
|
ID int IDENTITY(1, 1) NOT NULL,
|
||||||
|
Typ tinyint DEFAULT 0 NOT NULL,
|
||||||
|
CisloPalety nvarchar(50) NOT NULL,
|
||||||
|
Sarze nvarchar(30) NULL,
|
||||||
|
CisloOrg int NULL,
|
||||||
|
IDPrikaz int NULL,
|
||||||
|
IDKmen int NULL,
|
||||||
|
IDStroj int NULL,
|
||||||
|
IDVyrCisPrikaz int NULL,
|
||||||
|
IDPlanRozpis INT NULL,
|
||||||
|
DatPlan datetime NULL,
|
||||||
|
HodinaPlan smallint NULL,
|
||||||
|
DatZahajeni datetime NULL,
|
||||||
|
DatUkonceni datetime NULL,
|
||||||
|
Mnozstvi int DEFAULT 0 NOT NULL,
|
||||||
|
MnozstviKA smallint DEFAULT 0 NOT NULL,
|
||||||
|
MnozstviPlneKA smallint DEFAULT 0 NOT NULL,
|
||||||
|
MnoztviPosledniKA smallint DEFAULT 0 NOT NULL,
|
||||||
|
KusuVKA smallint DEFAULT 0 NOT NULL,
|
||||||
|
JSONDataStart nvarchar(max) NULL,
|
||||||
|
JSONStartResp nvarchar(max) NULL,
|
||||||
|
JSONDataKonec nvarchar(max) NULL,
|
||||||
|
JSONKonecResp nvarchar(max) NULL,
|
||||||
|
DatPorizeni datetime DEFAULT getdate() NOT NULL,
|
||||||
|
JeCislo AS CONVERT([bit],case when isnumeric([CisloPalety])=(1) then (1) else (0) end),
|
||||||
|
CONSTRAINT PK__TabVyroba_Palety PRIMARY KEY CLUSTERED (ID DESC) WITH (PAD_INDEX = OFF, IGNORE_DUP_KEY = OFF, STATISTICS_NORECOMPUTE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* 25.11.2023 */
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_Palety', N'IDKmen') IS NULL ALTER TABLE dbo._TabVyroba_Palety ADD IDKmen INT NULL
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_Palety', N'IDVyrCisPrikaz') IS NULL ALTER TABLE dbo._TabVyroba_Palety ADD IDVyrCisPrikaz INT NULL
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_Palety', N'KusuVKA') IS NULL ALTER TABLE dbo._TabVyroba_Palety ADD KusuVKA SMALLINT DEFAULT 0 NOT NULL
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_Palety', N'DatExpirace') IS NULL ALTER TABLE dbo._TabVyroba_Palety ADD DatExpirace DATETIME NULL
|
||||||
|
|
||||||
|
|
||||||
|
/* 29.10.2024 */
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_Palety', N'IDPlanRozpis') IS NULL ALTER TABLE dbo._TabVyroba_Palety ADD IDPlanRozpis INT NULL
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_Palety', N'DatPlan') IS NULL ALTER TABLE dbo._TabVyroba_Palety ADD DatPlan DATETIME NULL
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_Palety', N'HodinaPlan') IS NULL ALTER TABLE dbo._TabVyroba_Palety ADD HodinaPlan TINYINT NULL
|
||||||
|
|
||||||
|
/* 7.12.2024 */
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_Palety', N'JSONDataStart') IS NULL ALTER TABLE dbo._TabVyroba_Palety ADD JSONDataStart NVARCHAR(max) NULL
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_Palety', N'JSONDataKonec') IS NULL ALTER TABLE dbo._TabVyroba_Palety ADD JSONDataKonec NVARCHAR(max) NULL
|
||||||
|
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_Palety', N'JSONStartResp') IS NULL ALTER TABLE dbo._TabVyroba_Palety ADD JSONStartResp NVARCHAR(max) NULL
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_Palety', N'JSONKonecResp') IS NULL ALTER TABLE dbo._TabVyroba_Palety ADD JSONKonecResp NVARCHAR(max) NULL
|
||||||
|
|
||||||
|
IF EXISTS (SELECT 1 FROM sys.extended_properties WHERE [name]='MS_Description' AND major_id=OBJECT_ID(N'dbo._TabVyroba_Palety', N'U'))
|
||||||
|
EXEC sp_dropextendedproperty @name='MS_Description', @level0type='schema', @level0name='dbo', @level1type='table', @level1name='_TabVyroba_Palety', @level2type='column', @level2name='Typ'
|
||||||
|
EXEC sp_addextendedproperty @name='MS_Description', @value=N'0-nedefinovano
|
||||||
|
1-vyrobek pekarna (vlastni)
|
||||||
|
2-vyrobek pekarna (externi)
|
||||||
|
3-material
|
||||||
|
4-zbozi
|
||||||
|
5-nestandard', @level0type='schema', @level0name='dbo', @level1type='table', @level1name='_TabVyroba_Palety', @level2type='column', @level2name='Typ'
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
DROP INDEX IF EXISTS EI__TabVyroba_Palety_Typ ON dbo._TabVyroba_Palety
|
||||||
|
CREATE NONCLUSTERED INDEX EI__TabVyroba_Palety_Typ ON dbo._TabVyroba_Palety (Typ)
|
||||||
|
WITH ( PAD_INDEX = OFF, DROP_EXISTING = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
|
|
||||||
|
|
||||||
|
DROP INDEX IF EXISTS EI__TabVyroba_Palety_IdPrikaz ON dbo._TabVyroba_Palety
|
||||||
|
CREATE NONCLUSTERED INDEX EI__TabVyroba_Palety_IdPrikaz ON dbo._TabVyroba_Palety (IDPrikaz)
|
||||||
|
WITH ( PAD_INDEX = OFF, DROP_EXISTING = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
|
|
||||||
|
|
||||||
|
DROP INDEX IF EXISTS EI__TabVyroba_Palety_IdStroj ON dbo._TabVyroba_Palety
|
||||||
|
CREATE NONCLUSTERED INDEX EI__TabVyroba_Palety_IdStroj ON dbo._TabVyroba_Palety (IDStroj)
|
||||||
|
WITH ( PAD_INDEX = OFF, DROP_EXISTING = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
|
|
||||||
|
|
||||||
|
DROP INDEX IF EXISTS EI__TabVyroba_Palety_CisloOrg ON dbo._TabVyroba_Palety
|
||||||
|
CREATE NONCLUSTERED INDEX EI__TabVyroba_Palety_CisloOrg ON dbo._TabVyroba_Palety (CisloOrg)
|
||||||
|
WITH ( PAD_INDEX = OFF, DROP_EXISTING = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
|
|
||||||
22
_sql/tbl__TabVyrobaPaletyPohybOZ.sql
Normal file
22
_sql/tbl__TabVyrobaPaletyPohybOZ.sql
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
IF OBJECT_ID(N'dbo._TabVyroba_PaletyPohybOZ', N'U') IS NULL
|
||||||
|
CREATE TABLE dbo._TabVyroba_PaletyPohybOZ (
|
||||||
|
ID int IDENTITY(1, 1) NOT NULL,
|
||||||
|
IDPalety int NOT NULL,
|
||||||
|
IDPohybOZ int NOT NULL,
|
||||||
|
Sarze nvarchar(30) COLLATE Czech_CI_AS NULL,
|
||||||
|
Mnozstvi int NULL,
|
||||||
|
MnozstviKA smallint NULL,
|
||||||
|
CONSTRAINT PK_TabVyroba_PaletyPohybOZ PRIMARY KEY CLUSTERED (ID DESC)
|
||||||
|
WITH (
|
||||||
|
PAD_INDEX = OFF, IGNORE_DUP_KEY = OFF, STATISTICS_NORECOMPUTE = OFF,
|
||||||
|
ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
DROP INDEX IF EXISTS EI_TabVyroba_PaletyPohybOZ_Paleta ON dbo._TabVyroba_PaletyPohybOZ
|
||||||
|
CREATE NONCLUSTERED INDEX EI_TabVyroba_PaletyPohybOZ_Paleta ON dbo._TabVyroba_PaletyPohybOZ (IDPalety)
|
||||||
|
WITH ( PAD_INDEX = OFF, DROP_EXISTING = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
|
|
||||||
|
DROP INDEX IF EXISTS EI_TabVyroba_PaletyPohybOZ_PohybZbozi ON dbo._TabVyroba_PaletyPohybOZ
|
||||||
|
CREATE NONCLUSTERED INDEX EI_TabVyroba_PaletyPohybOZ_PohybZbozi ON dbo._TabVyroba_PaletyPohybOZ (IDPohybOZ)
|
||||||
|
WITH ( PAD_INDEX = OFF, DROP_EXISTING = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
37
_sql/tbl__TabVyrobaPaletyUkonceni.sql
Normal file
37
_sql/tbl__TabVyrobaPaletyUkonceni.sql
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
IF OBJECT_ID(N'dbo._TabVyroba_PaletyUkonceni', N'U') IS NULL
|
||||||
|
CREATE TABLE dbo._TabVyroba_PaletyUkonceni (
|
||||||
|
ID int IDENTITY(1, 1) NOT NULL,
|
||||||
|
IDPalety INT,
|
||||||
|
IDPrikaz INT,
|
||||||
|
IDMzda INT,
|
||||||
|
IDMezd NVARCHAR(max) NULL,
|
||||||
|
PocetKs NUMERIC(19,6) DEFAULT 0.0 NOT NULL,
|
||||||
|
PocetKA NUMERIC(19,6) DEFAULT 0.0 NOT NULL,
|
||||||
|
NeuplnaPalPocetKA NUMERIC(19,6) DEFAULT 0.0 NOT NULL,
|
||||||
|
NeuplnaPalKsVPoslKA NUMERIC(19,6) DEFAULT 0.0 NOT NULL,
|
||||||
|
ErrMsg NVARCHAR(255) NULL,
|
||||||
|
Autor nvarchar(80) DEFAULT suser_sname() NOT NULL,
|
||||||
|
DatPorizeni datetime DEFAULT getdate() NOT NULL,
|
||||||
|
PRIMARY KEY (ID DESC)
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
/* 20.3.2024 */
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_PaletyUkonceni', N'IDPrikaz') IS NULL ALTER TABLE dbo._TabVyroba_PaletyUkonceni ADD IDPrikaz INT NULL
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_PaletyUkonceni', N'IDMzda') IS NULL ALTER TABLE dbo._TabVyroba_PaletyUkonceni ADD IDMzda INT NULL
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
DROP INDEX IF EXISTS EI__TabVyroba_PaletyUkonceni_IDPalety ON dbo._TabVyroba_PaletyUkonceni
|
||||||
|
CREATE NONCLUSTERED INDEX EI__TabVyroba_PaletyUkonceni_IDPalety ON dbo._TabVyroba_PaletyUkonceni (IDPalety)
|
||||||
|
WITH ( PAD_INDEX = OFF, DROP_EXISTING = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
|
|
||||||
|
DROP INDEX IF EXISTS EI__TabVyroba_PaletyUkonceni_IDPrikaz ON dbo._TabVyroba_PaletyUkonceni
|
||||||
|
CREATE NONCLUSTERED INDEX EI__TabVyroba_PaletyUkonceni_IDPrikaz ON dbo._TabVyroba_PaletyUkonceni (IDPrikaz)
|
||||||
|
WITH ( PAD_INDEX = OFF, DROP_EXISTING = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
|
|
||||||
|
/* 8.10.2024 */
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_PaletyUkonceni', N'IDMezd') IS NULL ALTER TABLE dbo._TabVyroba_PaletyUkonceni ADD IDMezd NVARCHAR(MAX) NULL
|
||||||
|
|
||||||
|
/* 10.12.2024 */
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_PaletyUkonceni', N'ErrMsg') IS NULL ALTER TABLE dbo._TabVyroba_PaletyUkonceni ADD ErrMsg NVARCHAR(255) NULL
|
||||||
32
_sql/tbl__TabVyrobaStrojCinnost.sql
Normal file
32
_sql/tbl__TabVyrobaStrojCinnost.sql
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
IF OBJECT_ID(N'dbo._TabVyroba_StrojCinnost', N'U') IS NULL
|
||||||
|
CREATE TABLE dbo._TabVyroba_StrojCinnost
|
||||||
|
(ID INT IDENTITY(1,1) NOT NULL,
|
||||||
|
IDStroje INT NOT NULL,
|
||||||
|
Datum DATETIME NOT NULL DEFAULT CONVERT(datetime, CONVERT(int, CONVERT(float, GETDATE()))),
|
||||||
|
Smena TINYINT NOT NULL DEFAULT 1,
|
||||||
|
Cinnost NVARCHAR(50) NOT NULL,
|
||||||
|
IdCinnost INT, -- pro budouci pouziti
|
||||||
|
DatKonec DATETIME NULL,
|
||||||
|
DatPorizeni DATETIME NOT NULL DEFAULT GETDATE(),
|
||||||
|
PRIMARY KEY (ID DESC)
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* 12.12.2023 */
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_StrojCinnost', N'DatKonec') IS NULL ALTER TABLE dbo._TabVyroba_StrojCinnost ADD DatKonec DATETIME NULL
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
DECLARE @currDat DATETIME=GETDATE()
|
||||||
|
IF (COL_LENGTH(N'dbo.TabPrikazMzdyAZmetky_EXT', N'_TestoViskozita') IS NULL)
|
||||||
|
EXEC dbo.hp_ImportUzivAtr @Externi=1, @NazevTabulkySys=N'TabPrikazMzdyAZmetky', @NazevAtrSys=N'_TestoViskozita', @Skupina=NULL, @NazevAtrVer=N'Viskozita t<>sta',
|
||||||
|
@NazevAtrVerZkr=N'Viskozita', @TypAtr=N'NUMERIC', @MaskaAtr=NULL, @VerejnyAtr=N'N', @SirkaSloupceAtr=10, @SumovatAtr=N'N', @TiskAtr=N'A', @ProcPruhAtr=0, @Kopirovat=1,
|
||||||
|
@KonverzeAtr=NULL, @ExtEd_Poradi=1, @ExtEd_Zalozka=NULL, @ExtEd_BrowseID=NULL, @ExtEd_Atr=NULL, @ExtEd_PrimaEditace=1, @DatPorizeni=@currDat, @DatZmeny=NULL,
|
||||||
|
@TypAtrSQL=N'NUMERIC', @ExtEd_BrowseID_DPSN=NULL, @Poznamka=NULL, @Definice=NULL, @Podminka=NULL
|
||||||
|
IF (COL_LENGTH(N'dbo.TabPrikazMzdyAZmetky_EXT', N'_TestoViskozita2') IS NULL)
|
||||||
|
EXEC dbo.hp_ImportUzivAtr @Externi=1, @NazevTabulkySys=N'TabPrikazMzdyAZmetky', @NazevAtrSys=N'_TestoViskozita2', @Skupina=NULL, @NazevAtrVer=N'Viskozita t<>sta 2',
|
||||||
|
@NazevAtrVerZkr=N'Viskozita 2', @TypAtr=N'NUMERIC', @MaskaAtr=NULL, @VerejnyAtr=N'N', @SirkaSloupceAtr=10, @SumovatAtr=N'N', @TiskAtr=N'A', @ProcPruhAtr=0, @Kopirovat=1,
|
||||||
|
@KonverzeAtr=NULL, @ExtEd_Poradi=2, @ExtEd_Zalozka=NULL, @ExtEd_BrowseID=NULL, @ExtEd_Atr=NULL, @ExtEd_PrimaEditace=1, @DatPorizeni=@currDat, @DatZmeny=NULL,
|
||||||
|
@TypAtrSQL=N'NUMERIC', @ExtEd_BrowseID_DPSN=NULL, @Poznamka=NULL, @Definice=NULL, @Podminka=NULL
|
||||||
26
_sql/tbl__TabVyrobaVydejMatSarze.sql
Normal file
26
_sql/tbl__TabVyrobaVydejMatSarze.sql
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
IF OBJECT_ID(N'dbo._TabVyroba_VydejMatSarze', N'U') IS NULL
|
||||||
|
CREATE TABLE dbo._TabVyroba_VydejMatSarze (
|
||||||
|
ID INT IDENTITY(1,1) NOT NULL,
|
||||||
|
IDPohybZbozi INT,
|
||||||
|
Sarze NVARCHAR(100) NOT NULL,
|
||||||
|
Mnozstvi NUMERIC(19,6) DEFAULT 0.0 NOT NULL,
|
||||||
|
Autor nvarchar(80) DEFAULT suser_sname() NOT NULL,
|
||||||
|
DatPorizeni datetime DEFAULT getdate() NOT NULL,
|
||||||
|
PRIMARY KEY (ID DESC)
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* 14.5.2024 */
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_VydejMatSarze', N'IDKmenZbozi') IS NULL ALTER TABLE dbo._TabVyroba_VydejMatSarze ADD IDKmenZbozi INT NULL
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
DROP INDEX IF EXISTS EI__TabVyroba_VydejMatSarze_IDPohybZbozi ON dbo._TabVyroba_VydejMatSarze
|
||||||
|
CREATE NONCLUSTERED INDEX EI__TabVyroba_VydejMatSarze_IDPohybZbozi ON dbo._TabVyroba_VydejMatSarze (IDPohybZbozi)
|
||||||
|
WITH ( PAD_INDEX = OFF, DROP_EXISTING = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
|
|
||||||
|
|
||||||
|
DROP INDEX IF EXISTS EI__TabVyroba_VydejMatSarze_IDKmenZbozi ON dbo._TabVyroba_VydejMatSarze
|
||||||
|
CREATE NONCLUSTERED INDEX EI__TabVyroba_VydejMatSarze_IDKmenZbozi ON dbo._TabVyroba_VydejMatSarze (IDKmenZbozi)
|
||||||
|
WITH ( PAD_INDEX = OFF, DROP_EXISTING = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
38
_sql/tbl__TabVyroba_CCP1.sql
Normal file
38
_sql/tbl__TabVyroba_CCP1.sql
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
IF OBJECT_ID(N'dbo._TabVyroba_KontrolyCCP1', N'U') IS NULL
|
||||||
|
CREATE TABLE dbo._TabVyroba_KontrolyCCP1 (
|
||||||
|
ID int IDENTITY(1, 1) NOT NULL,
|
||||||
|
IDStroj int NULL,
|
||||||
|
Smena tinyint NULL,
|
||||||
|
Teplota numeric(8, 2) NULL,
|
||||||
|
Rychlost numeric(15, 2) NULL,
|
||||||
|
Hmotnost numeric(19, 6) NULL,
|
||||||
|
Delka numeric(19, 6) NULL,
|
||||||
|
Prumer numeric(19, 6) NULL,
|
||||||
|
OdpovidaPredpisu bit DEFAULT 0 NULL,
|
||||||
|
IDKmenZbozi int NOT NULL,
|
||||||
|
NapravneOpatreni nvarchar(255) COLLATE Czech_CI_AS NULL,
|
||||||
|
Uzavreno bit DEFAULT 0 NULL,
|
||||||
|
Autor nvarchar(100) COLLATE Czech_CI_AS DEFAULT suser_sname() NOT NULL,
|
||||||
|
Zmenil nvarchar(100) COLLATE Czech_CI_AS NULL,
|
||||||
|
DatPorizeni datetime DEFAULT getdate() NOT NULL,
|
||||||
|
DatPorizeni_X AS CONVERT([datetime],CONVERT([int],CONVERT([float],[DatPorizeni]))),
|
||||||
|
DatPorizeni_D AS datepart(day,[DatPorizeni]),
|
||||||
|
DatPorizeni_M AS datepart(month,[DatPorizeni]),
|
||||||
|
DatPorizeni_Y AS datepart(year,[DatPorizeni]),
|
||||||
|
DatPorizeni_W AS datepart(week,[DatPorizeni]),
|
||||||
|
DatZmeny datetime NULL,
|
||||||
|
VyrobniDen date NULL,
|
||||||
|
CONSTRAINT PK__TabVyroba_KontrolyCCP1 PRIMARY KEY CLUSTERED (ID DESC) WITH (PAD_INDEX = OFF, IGNORE_DUP_KEY = OFF, STATISTICS_NORECOMPUTE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM sys.indexes WHERE object_id=OBJECT_ID('dbo._TabVyroba_KontrolyCCP1') AND name=N'EI__TabVyroba_KontrolyCCP1_Kmen')
|
||||||
|
CREATE NONCLUSTERED INDEX EI__TabVyroba_KontrolyCCP1_Kmen ON dbo._TabVyroba_KontrolyCCP1 (IDKmenZbozi)
|
||||||
|
WITH ( PAD_INDEX = OFF, DROP_EXISTING = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
|
|
||||||
|
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM sys.indexes WHERE object_id=OBJECT_ID('dbo._TabVyroba_KontrolyCCP1') AND name=N'EI__TabVyroba_KontrolyCCP1_Stroj')
|
||||||
|
CREATE NONCLUSTERED INDEX EI__TabVyroba_KontrolyCCP1_Stroj ON dbo._TabVyroba_KontrolyCCP1 (IDStroj)
|
||||||
|
WITH ( PAD_INDEX = OFF, DROP_EXISTING = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
|
|
||||||
16
_sql/tbl__TabVyroba_OdpadPek.sql
Normal file
16
_sql/tbl__TabVyroba_OdpadPek.sql
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
IF OBJECT_ID(N'dbo._TabVyroba_OdpadPekarna', N'U') IS NULL
|
||||||
|
CREATE TABLE dbo._TabVyroba_OdpadPekarna (
|
||||||
|
ID int IDENTITY(1, 1) NOT NULL, IDStroje int NOT NULL, Datum datetime NOT NULL, Smena tinyint NOT NULL, OdpadSuchy numeric(19, 6) DEFAULT 0 NOT NULL,
|
||||||
|
OdpadMokry numeric(19, 6) DEFAULT 0 NOT NULL, Poznamka nvarchar(500) COLLATE Czech_CI_AS NULL, Datum_X AS CONVERT([datetime],CONVERT([int],CONVERT([float],[Datum]))),
|
||||||
|
Datum_D AS datepart(day,[Datum]), Datum_W AS datepart(week,[Datum]), Datum_M AS datepart(month,[Datum]), Datum_Q AS datepart(quarter,[Datum]), Datum_Y AS datepart(year,[Datum]),
|
||||||
|
Autor nvarchar(80) COLLATE Czech_CI_AS DEFAULT suser_sname() NOT NULL,
|
||||||
|
DatPorizeni datetime DEFAULT getdate() NOT NULL,
|
||||||
|
Zmenil nvarchar(80) COLLATE Czech_CI_AS NULL,
|
||||||
|
DatZmeny datetime NULL,
|
||||||
|
CONSTRAINT PK_TabVyroba_OdpadPekarna PRIMARY KEY CLUSTERED (ID DESC) WITH ( PAD_INDEX = OFF, IGNORE_DUP_KEY = OFF, STATISTICS_NORECOMPUTE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM sys.indexes WHERE object_id=OBJECT_ID('dbo._TabVyroba_OdpadPekarna') AND name=N'EI_TabVyroba_OdpadPekarna_Stroj')
|
||||||
|
CREATE NONCLUSTERED INDEX EI_TabVyroba_OdpadPekarna_Stroj ON dbo._TabVyroba_OdpadPekarna (IDStroje)
|
||||||
|
WITH ( PAD_INDEX = OFF, DROP_EXISTING = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
38
_sql/tbl__TabVyroba_TestoSpotreba.sql
Normal file
38
_sql/tbl__TabVyroba_TestoSpotreba.sql
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
IF OBJECT_ID(N'dbo._TabVyroba_TestoSpotreba', N'U') IS NULL
|
||||||
|
CREATE TABLE dbo._TabVyroba_TestoSpotreba (
|
||||||
|
ID int IDENTITY(1, 1) NOT NULL,
|
||||||
|
IDHlava int NULL,
|
||||||
|
IDPrikaz int NULL,
|
||||||
|
IDPrPostup INT,
|
||||||
|
IDDoklad int NULL,
|
||||||
|
Mnozstvi numeric(19, 6) DEFAULT 0.0 NOT NULL,
|
||||||
|
DokladPrP int NULL,
|
||||||
|
AltPrP nchar(1) COLLATE Czech_CI_AS NULL,
|
||||||
|
PaletovyList nvarchar(50) NULL,
|
||||||
|
Sarze nvarchar(30) NULL,
|
||||||
|
DeviceID nvarchar(50) COLLATE Czech_CI_AS NULL,
|
||||||
|
DatPorizeni datetime DEFAULT getdate() NOT NULL,
|
||||||
|
CONSTRAINT PK__TabVyroba_TestoSpotreba PRIMARY KEY CLUSTERED (ID DESC) WITH ( PAD_INDEX = OFF, IGNORE_DUP_KEY = OFF, STATISTICS_NORECOMPUTE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* 20.3.2024 */
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_TestoSpotreba', N'IDHlava') IS NOT NULL ALTER TABLE dbo._TabVyroba_TestoSpotreba ALTER COLUMN IDHlava INT NULL
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_TestoSpotreba', N'IDPrikaz') IS NOT NULL ALTER TABLE dbo._TabVyroba_TestoSpotreba ALTER COLUMN IDPrikaz INT NULL
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_TestoSpotreba', N'IDPrikaz') IS NULL ALTER TABLE dbo._TabVyroba_TestoSpotreba ADD IDPrikaz INT NULL
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_TestoSpotreba', N'IDPrPostup') IS NULL ALTER TABLE dbo._TabVyroba_TestoSpotreba ADD IDPrPostup INT NULL
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_TestoSpotreba', N'IDDoklad') IS NULL ALTER TABLE dbo._TabVyroba_TestoSpotreba ADD IDDoklad INT NULL
|
||||||
|
|
||||||
|
|
||||||
|
DROP INDEX IF EXISTS EI_TabVyroba_TestoSpotreba_IDHlava ON dbo._TabVyroba_TestoSpotreba
|
||||||
|
CREATE NONCLUSTERED INDEX EI_TabVyroba_TestoSpotreba_IDHlava ON dbo._TabVyroba_TestoSpotreba (IDHlava)
|
||||||
|
WITH ( PAD_INDEX = OFF, DROP_EXISTING = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
|
|
||||||
|
DROP INDEX IF EXISTS EI_TabVyroba_TestoSpotreba_IDPrikaz ON dbo._TabVyroba_TestoSpotreba
|
||||||
|
CREATE NONCLUSTERED INDEX EI_TabVyroba_TestoSpotreba_IDPrikaz ON dbo._TabVyroba_TestoSpotreba (IDPrikaz)
|
||||||
|
WITH ( PAD_INDEX = OFF, DROP_EXISTING = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
|
|
||||||
|
DROP INDEX IF EXISTS EI_TabVyroba_TestoSpotreba_IDPrPostup ON dbo._TabVyroba_TestoSpotreba
|
||||||
|
CREATE NONCLUSTERED INDEX EI_TabVyroba_TestoSpotreba_IDPrPostup ON dbo._TabVyroba_TestoSpotreba (IDPrPostup)
|
||||||
|
WITH ( PAD_INDEX = OFF, DROP_EXISTING = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
73
_sql/tbl__TabVyroba_TestoVyroba.sql
Normal file
73
_sql/tbl__TabVyroba_TestoVyroba.sql
Normal file
@ -0,0 +1,73 @@
|
|||||||
|
IF OBJECT_ID(N'dbo._TabVyroba_TestoVyroba', N'U') IS NULL
|
||||||
|
CREATE TABLE dbo._TabVyroba_TestoVyroba (
|
||||||
|
ID int IDENTITY(1, 1) NOT NULL,
|
||||||
|
IdPHIdent int NULL,
|
||||||
|
IDPrikaz int NULL,
|
||||||
|
IDDokladVydejMat int NULL,
|
||||||
|
IDStrojPek INT NULL,
|
||||||
|
IDKmenZbozi int NULL,
|
||||||
|
SkupZbo NVARCHAR(3) NULL,
|
||||||
|
RegCis NVARCHAR(30) NULL,
|
||||||
|
MoukaHmot NUMERIC(10,2) NOT NULL DEFAULT 0.0,
|
||||||
|
MoukaSilo TINYINT NULL,
|
||||||
|
VodaLitry NUMERIC(10,2) NOT NULL DEFAULT 0.0,
|
||||||
|
VodaPridavek NUMERIC(10,2) NOT NULL DEFAULT 0.0,
|
||||||
|
Viskozita TINYINT NOT NULL DEFAULT 0,
|
||||||
|
Viskozita2 TINYINT NOT NULL DEFAULT 0,
|
||||||
|
DatPriprava DATETIME NULL,
|
||||||
|
VyrobniDen DATETIME,
|
||||||
|
Smena TINYINT,
|
||||||
|
DatVypousteni DATETIME NULL,
|
||||||
|
Spotrebovano numeric(10, 6) DEFAULT 0.0 NOT NULL,
|
||||||
|
DatPorizeni datetime DEFAULT getdate() NOT NULL,
|
||||||
|
DatPorizeni_H AS datepart(hour,[DatPorizeni]),
|
||||||
|
DatPorizeni_N AS datepart(minute,[DatPorizeni]),
|
||||||
|
DatPorizeni_D AS datepart(day,[DatPorizeni]),
|
||||||
|
DatPorizeni_T AS datepart(week,[DatPorizeni]),
|
||||||
|
DatPorizeni_M AS datepart(month,[DatPorizeni]),
|
||||||
|
DatPorizeni_Q AS datepart(quarter,[DatPorizeni]),
|
||||||
|
DatPorizeni_Y AS datepart(year,[DatPorizeni]),
|
||||||
|
DatPriprava_X AS CONVERT(datetime, CONVERT(int, CONVERT(float, DatPriprava))),
|
||||||
|
CONSTRAINT PK__TabVyroba_TestoVyroba PRIMARY KEY CLUSTERED (ID DESC) WITH ( PAD_INDEX = OFF, IGNORE_DUP_KEY = OFF, STATISTICS_NORECOMPUTE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
/* 10.12.2023 */
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_TestoVyroba', N'IDStrojPek') IS NULL ALTER TABLE dbo._TabVyroba_TestoVyroba ADD IDStrojPek INT NULL
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_TestoVyroba', N'MoukaHmot') IS NULL ALTER TABLE dbo._TabVyroba_TestoVyroba ADD MoukaHmot NUMERIC(10,2) NOT NULL DEFAULT 0.0
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_TestoVyroba', N'MoukaSilo') IS NULL ALTER TABLE dbo._TabVyroba_TestoVyroba ADD MoukaSilo TINYINT NULL
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_TestoVyroba', N'VodaLitry') IS NULL ALTER TABLE dbo._TabVyroba_TestoVyroba ADD VodaLitry NUMERIC(10,2) NOT NULL DEFAULT 0.0
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_TestoVyroba', N'VodaPridavek') IS NULL ALTER TABLE dbo._TabVyroba_TestoVyroba ADD VodaPridavek NUMERIC(10,2) NOT NULL DEFAULT 0.0
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_TestoVyroba', N'Viskozita') IS NULL ALTER TABLE dbo._TabVyroba_TestoVyroba ADD Viskozita TINYINT NULL
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_TestoVyroba', N'Viskozita2') IS NULL ALTER TABLE dbo._TabVyroba_TestoVyroba ADD Viskozita2 TINYINT NULL
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_TestoVyroba', N'DatPriprava') IS NULL ALTER TABLE dbo._TabVyroba_TestoVyroba ADD DatPriprava DATETIME NULL
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_TestoVyroba', N'DatVypousteni') IS NULL ALTER TABLE dbo._TabVyroba_TestoVyroba ADD DatVypousteni DATETIME NULL
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_TestoVyroba', N'DatPriprava_X') IS NULL ALTER TABLE dbo._TabVyroba_TestoVyroba ADD DatPriprava_X AS CONVERT(datetime, CONVERT(int, CONVERT(float, DatPriprava)))
|
||||||
|
|
||||||
|
/* 11.12.2023 */
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_TestoVyroba', N'VyrobniDen') IS NULL ALTER TABLE dbo._TabVyroba_TestoVyroba ADD VyrobniDen DATETIME
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_TestoVyroba', N'Smena') IS NULL ALTER TABLE dbo._TabVyroba_TestoVyroba ADD Smena TINYINT
|
||||||
|
|
||||||
|
/* 20.3.2024 */
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_TestoVyroba', N'IDPrikaz') IS NULL ALTER TABLE dbo._TabVyroba_TestoVyroba ADD IDPrikaz INT NULL
|
||||||
|
IF COL_LENGTH(N'dbo._TabVyroba_TestoVyroba', N'IDDokladVydejMat') IS NULL ALTER TABLE dbo._TabVyroba_TestoVyroba ADD IDDokladVydejMat INT NULL
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
DROP INDEX IF EXISTS EI_TabVyroba_TestoVyroba_IdPH ON dbo._TabVyroba_TestoVyroba
|
||||||
|
CREATE NONCLUSTERED INDEX EI_TabVyroba_TestoVyroba_IdPH ON dbo._TabVyroba_TestoVyroba (IdPHIdent)
|
||||||
|
WITH ( PAD_INDEX = OFF, DROP_EXISTING = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
|
|
||||||
|
DROP INDEX IF EXISTS EI_TabVyroba_TestoVyroba_IdKmen ON dbo._TabVyroba_TestoVyroba
|
||||||
|
CREATE NONCLUSTERED INDEX EI_TabVyroba_TestoVyroba_IdKmen ON dbo._TabVyroba_TestoVyroba (IDKmenZbozi)
|
||||||
|
WITH ( PAD_INDEX = OFF, DROP_EXISTING = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
|
|
||||||
|
DROP INDEX IF EXISTS EI_TabVyroba_TestoVyroba_IdStroj ON dbo._TabVyroba_TestoVyroba
|
||||||
|
DROP INDEX IF EXISTS EI_TabVyroba_TestoVyroba_IdStrojPek ON dbo._TabVyroba_TestoVyroba
|
||||||
|
CREATE NONCLUSTERED INDEX EI_TabVyroba_TestoVyroba_IdStrojPek ON dbo._TabVyroba_TestoVyroba (IDStrojPek)
|
||||||
|
WITH ( PAD_INDEX = OFF, DROP_EXISTING = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
|
|
||||||
|
DROP INDEX IF EXISTS EI_TabVyroba_TestoVyroba_MoukaSilo ON dbo._TabVyroba_TestoVyroba
|
||||||
|
CREATE NONCLUSTERED INDEX EI_TabVyroba_TestoVyroba_MoukaSilo ON dbo._TabVyroba_TestoVyroba (MoukaSilo)
|
||||||
|
WITH ( PAD_INDEX = OFF, DROP_EXISTING = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
53
_sql/tbl__TabVyroba_Vzorky.sql
Normal file
53
_sql/tbl__TabVyroba_Vzorky.sql
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
IF OBJECT_ID(N'dbo._TabVyroba_Vzorky', N'U') IS NULL
|
||||||
|
CREATE TABLE dbo._TabVyroba_Vzorky (
|
||||||
|
ID int IDENTITY(1, 1) NOT NULL,
|
||||||
|
IDArchiv int NOT NULL,
|
||||||
|
IDStroj int NOT NULL,
|
||||||
|
IDKmenZbozi int NOT NULL,
|
||||||
|
CisloZamMistr int NULL,
|
||||||
|
KArchivaci bit DEFAULT 0 NULL,
|
||||||
|
Ukonceno bit DEFAULT 0 NULL,
|
||||||
|
Vyrazeno bit DEFAULT 0 NULL,
|
||||||
|
Autor nvarchar(128) COLLATE Czech_CI_AS DEFAULT suser_sname() NOT NULL,
|
||||||
|
DatPorizeni datetime DEFAULT getdate() NOT NULL,
|
||||||
|
DatPorizeni_X AS CONVERT([datetime],CONVERT([int],CONVERT([float],[DatPorizeni]))),
|
||||||
|
DatPorizeni_D AS datepart(day,[DatPorizeni]),
|
||||||
|
DatPorizeni_M AS datepart(month,[DatPorizeni]),
|
||||||
|
DatPorizeni_Q AS datepart(quarter,[DatPorizeni]),
|
||||||
|
DatPorizeni_T AS datepart(week,[DatPorizeni]),
|
||||||
|
DatPorizeni_Y AS datepart(year,[DatPorizeni]),
|
||||||
|
CONSTRAINT PK__TabVyroba_Vzorky PRIMARY KEY CLUSTERED (ID DESC) WITH ( PAD_INDEX = OFF, IGNORE_DUP_KEY = OFF, STATISTICS_NORECOMPUTE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM sys.indexes WHERE object_id=OBJECT_ID('dbo._TabVyroba_Vzorky') AND name=N'EI__TabVyroba_Vzorky_Archiv')
|
||||||
|
CREATE NONCLUSTERED INDEX EI__TabVyroba_Vzorky_Archiv ON dbo._TabVyroba_Vzorky (IDArchiv)
|
||||||
|
WITH ( PAD_INDEX = OFF, DROP_EXISTING = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
IF OBJECT_ID(N'dbo._TabVyroba_VzorkyArchiv', N'U') IS NULL
|
||||||
|
CREATE TABLE dbo._TabVyroba_VzorkyArchiv (
|
||||||
|
ID int IDENTITY(1, 1) NOT NULL,
|
||||||
|
Archiv nvarchar(50) COLLATE Czech_CI_AS DEFAULT N'' NOT NULL,
|
||||||
|
Autor nvarchar(128) COLLATE Czech_CI_AS DEFAULT suser_sname() NOT NULL,
|
||||||
|
DatPorizeni datetime DEFAULT getdate() NOT NULL,
|
||||||
|
DatPorizeni_X AS CONVERT([datetime],CONVERT([int],CONVERT([float],[DatPorizeni]))),
|
||||||
|
DatPorizeni_D AS datepart(day,[DatPorizeni]),
|
||||||
|
DatPorizeni_M AS datepart(month,[DatPorizeni]),
|
||||||
|
DatPorizeni_Q AS datepart(quarter,[DatPorizeni]),
|
||||||
|
DatPorizeni_T AS datepart(week,[DatPorizeni]),
|
||||||
|
DatPorizeni_Y AS datepart(year,[DatPorizeni]),
|
||||||
|
DatUkonceni datetime NULL,
|
||||||
|
DatUkonceni_X AS CONVERT([datetime],CONVERT([int],CONVERT([float],[DatUkonceni]))),
|
||||||
|
DatUkonceni_D AS datepart(day,[DatUkonceni]),
|
||||||
|
DatUkonceni_M AS datepart(month,[DatUkonceni]),
|
||||||
|
DatUkonceni_T AS datepart(week,[DatUkonceni]),
|
||||||
|
DatUkonceni_Y AS datepart(year,[DatUkonceni]),
|
||||||
|
DatUkonceni_Q AS datepart(quarter,[DatUkonceni]),
|
||||||
|
CONSTRAINT PK__TabVyroba_VzorkyArchiv PRIMARY KEY CLUSTERED (ID DESC) WITH ( PAD_INDEX = OFF, IGNORE_DUP_KEY = OFF, STATISTICS_NORECOMPUTE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
|
)
|
||||||
|
|
||||||
43
_sql/tbl__hdc_PZ_PuvodniVC.sql
Normal file
43
_sql/tbl__hdc_PZ_PuvodniVC.sql
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
IF OBJECT_ID(N'dbo._hdc_PZ_PuvodniVC', N'U') IS NULL
|
||||||
|
CREATE TABLE dbo._hdc_PZ_PuvodniVC (
|
||||||
|
ID int IDENTITY(1, 1) NOT NULL,
|
||||||
|
IDPohybZbozi int NOT NULL,
|
||||||
|
IDDoklad int NULL,
|
||||||
|
IDZboSklad int NULL,
|
||||||
|
VyrCis nvarchar(100) COLLATE Czech_CI_AS NOT NULL,
|
||||||
|
IDVyrCis int NOT NULL,
|
||||||
|
Mnozstvi numeric(19, 6) NOT NULL,
|
||||||
|
Sarze NVARCHAR(100) NULL,
|
||||||
|
PaletovyList NVARCHAR(100) NULL,
|
||||||
|
IDUmisteni INT NULL,
|
||||||
|
Autor nvarchar(128) COLLATE Czech_CI_AS CONSTRAINT DF___hdc_PZ_PuvodniVC__Autor DEFAULT suser_sname() NOT NULL,
|
||||||
|
DatPorizeni datetime CONSTRAINT DF___hdc_PZ_PuvodniVC__DatPorizeni DEFAULT getdate() NOT NULL,
|
||||||
|
BlokovaniEditoru smallint NULL,
|
||||||
|
CONSTRAINT PK___hdc_PZ_PuvodniVC__ID PRIMARY KEY CLUSTERED (ID DESC) WITH (PAD_INDEX = OFF, IGNORE_DUP_KEY = OFF, STATISTICS_NORECOMPUTE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
/* 9.9.2024 */
|
||||||
|
IF COL_LENGTH(N'dbo._hdc_PZ_PuvodniVC', N'Sarze') IS NULL ALTER TABLE dbo._hdc_PZ_PuvodniVC ADD Sarze NVARCHAR(100) NULL
|
||||||
|
IF COL_LENGTH(N'dbo._hdc_PZ_PuvodniVC', N'PaletovyList') IS NULL ALTER TABLE dbo._hdc_PZ_PuvodniVC ADD PaletovyList NVARCHAR(100) NULL
|
||||||
|
IF COL_LENGTH(N'dbo._hdc_PZ_PuvodniVC', N'IDUmisteni') IS NULL ALTER TABLE dbo._hdc_PZ_PuvodniVC ADD IDUmisteni INT NULL
|
||||||
|
IF COL_LENGTH(N'dbo._hdc_PZ_PuvodniVC', N'IDZboSklad') IS NULL ALTER TABLE dbo._hdc_PZ_PuvodniVC ADD IDZboSklad INT NULL
|
||||||
|
IF COL_LENGTH(N'dbo._hdc_PZ_PuvodniVC', N'IDDoklad') IS NULL ALTER TABLE dbo._hdc_PZ_PuvodniVC ADD IDDoklad INT NULL
|
||||||
|
|
||||||
|
/* 13.11.2023 */
|
||||||
|
IF COL_LENGTH(N'dbo._hdc_PZ_PuvodniVC', N'Zmenil') IS NOT NULL ALTER TABLE dbo._hdc_PZ_PuvodniVC DROP COLUMN Zmenil
|
||||||
|
IF COL_LENGTH(N'dbo._hdc_PZ_PuvodniVC', N'DatZmeny') IS NOT NULL ALTER TABLE dbo._hdc_PZ_PuvodniVC DROP COLUMN DatZmeny
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM sys.indexes WHERE object_id=OBJECT_ID('dbo._hdc_PZ_PuvodniVC') AND name=N'EI__hdc_PZ_PuvodniVC__IDPohybZbozi')
|
||||||
|
CREATE NONCLUSTERED INDEX EI__hdc_PZ_PuvodniVC__IDPohybZbozi ON dbo._hdc_PZ_PuvodniVC (IDPohybZbozi)
|
||||||
|
WITH ( PAD_INDEX = OFF, DROP_EXISTING = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
|
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM sys.indexes WHERE object_id=OBJECT_ID('dbo._hdc_PZ_PuvodniVC') AND name=N'EI__hdc_PZ_PuvodniVC__IDVyrCis')
|
||||||
|
CREATE NONCLUSTERED INDEX EI__hdc_PZ_PuvodniVC__IDVyrCis ON dbo._hdc_PZ_PuvodniVC (IDVyrCis)
|
||||||
|
WITH ( PAD_INDEX = OFF, DROP_EXISTING = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
|
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM sys.indexes WHERE object_id=OBJECT_ID('dbo._hdc_PZ_PuvodniVC') AND name=N'EI__hdc_PZ_PuvodniVC__IDDoklad')
|
||||||
|
CREATE NONCLUSTERED INDEX EI__hdc_PZ_PuvodniVC__IDDoklad ON dbo._hdc_PZ_PuvodniVC (IDDoklad)
|
||||||
|
WITH ( PAD_INDEX = OFF, DROP_EXISTING = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
|
||||||
24
_sql/tbl__hdc_ph_Log.sql
Normal file
24
_sql/tbl__hdc_ph_Log.sql
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
-- dbo._hdc_ph_Log
|
||||||
|
IF OBJECT_ID(N'dbo._hdc_ph_Log', N'U') IS NULL
|
||||||
|
CREATE TABLE dbo._hdc_ph_Log (
|
||||||
|
ID int IDENTITY(1, 1) NOT NULL,
|
||||||
|
LogText nvarchar(500) NULL,
|
||||||
|
Typ tinyint NULL,
|
||||||
|
IntValue int NULL,
|
||||||
|
NumValue numeric(19, 6) NULL,
|
||||||
|
StrValue nvarchar(255) NULL,
|
||||||
|
DatValue datetime NULL,
|
||||||
|
ForMail BIT NOT NULL DEFAULT 0,
|
||||||
|
MailSent DATETIME NULL,
|
||||||
|
IdJsonData INT NULL,
|
||||||
|
Autor nvarchar(80) DEFAULT suser_sname() NOT NULL,
|
||||||
|
DatPorizeni datetime DEFAULT getdate() NOT NULL,
|
||||||
|
PRIMARY KEY (ID DESC)
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
/* 14.11.2023 */
|
||||||
|
IF COL_LENGTH(N'dbo._hdc_ph_Log', N'ForMail') IS NULL ALTER TABLE dbo._hdc_ph_Log ADD ForMail BIT NOT NULL DEFAULT 0
|
||||||
|
IF COL_LENGTH(N'dbo._hdc_ph_Log', N'MailSent') IS NULL ALTER TABLE dbo._hdc_ph_Log ADD MailSent DATETIME NULL
|
||||||
|
IF COL_LENGTH(N'dbo._hdc_ph_Log', N'IdJsonData') IS NULL ALTER TABLE dbo._hdc_ph_Log ADD IdJsonData INT NULL
|
||||||
|
|
||||||
51
_sql/trg__TabDokladyZbozi_HDC_D.sql
Normal file
51
_sql/trg__TabDokladyZbozi_HDC_D.sql
Normal file
@ -0,0 +1,51 @@
|
|||||||
|
-- dbo.ET_TabDokladyZbozi_HDC_D
|
||||||
|
CREATE TRIGGER dbo.ET_TabDokladyZbozi_HDC_D ON dbo.TabDokladyZbozi
|
||||||
|
WITH EXECUTE AS CALLER
|
||||||
|
FOR DELETE
|
||||||
|
AS
|
||||||
|
BEGIN
|
||||||
|
SET NOCOUNT ON
|
||||||
|
|
||||||
|
-- !! trigger neupravujte, bude stejne pregenerovan pri startu pluginu PluginHDCRTN nebo Windows sluzby HDCDZApi !!
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@id INT,
|
||||||
|
@dpz TINYINT,
|
||||||
|
@rada NVARCHAR(3),
|
||||||
|
@sklad NVARCHAR(30)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
DECLARE c CURSOR LOCAL FAST_FORWARD FOR
|
||||||
|
SELECT d.ID, d.DruhPohybuZbo, d.RadaDokladu, d.IDSklad
|
||||||
|
FROM deleted d
|
||||||
|
OPEN c
|
||||||
|
WHILE (1=1)
|
||||||
|
BEGIN
|
||||||
|
FETCH NEXT FROM c INTO @id, @dpz, @rada, @sklad
|
||||||
|
IF (@@FETCH_STATUS<>0) BREAK
|
||||||
|
|
||||||
|
|
||||||
|
-- sync informace pro reseni ASol/ProHolding/HDC
|
||||||
|
-- vydejky
|
||||||
|
IF (@dpz=4)
|
||||||
|
BEGIN
|
||||||
|
IF OBJECT_ID(N'dbo._hdc_ph_PrijataJsonData', N'U') IS NOT NULL
|
||||||
|
UPDATE dbo._hdc_ph_PrijataJsonData SET IDDoklad=NULL WHERE IDDoklad=@id
|
||||||
|
|
||||||
|
IF OBJECT_ID(N'dbo._TabVyroba_Objednavky_Pol', N'U') IS NOT NULL
|
||||||
|
BEGIN
|
||||||
|
DELETE FROM dbo._TabVyroba_Objednavky_Pol WHERE IDDokladOZ=@id
|
||||||
|
DELETE FROM dbo._TabVyroba_Objednavky WHERE IDDokladOZ=@id
|
||||||
|
END
|
||||||
|
END
|
||||||
|
|
||||||
|
IF OBJECT_ID(N'dbo._hdc_PZ_PuvodniVC', N'U') IS NOT NULL
|
||||||
|
DELETE FROM dbo._hdc_PZ_PuvodniVC WHERE IDDoklad=@id
|
||||||
|
|
||||||
|
|
||||||
|
END
|
||||||
|
CLOSE c
|
||||||
|
DEALLOCATE c
|
||||||
|
|
||||||
|
END
|
||||||
71
_sql/trg__TabPohybyZbozi_HDC_D.sql
Normal file
71
_sql/trg__TabPohybyZbozi_HDC_D.sql
Normal file
@ -0,0 +1,71 @@
|
|||||||
|
-- dbo.ET_TabPohybyZbozi_HDC_D
|
||||||
|
CREATE TRIGGER dbo.ET_TabPohybyZbozi_HDC_D ON dbo.TabPohybyZbozi
|
||||||
|
WITH EXECUTE AS CALLER
|
||||||
|
FOR DELETE
|
||||||
|
AS
|
||||||
|
BEGIN
|
||||||
|
SET NOCOUNT ON
|
||||||
|
|
||||||
|
-- !! trigger neupravujte, bude stejne pregenerovan pri startu pluginu PluginHDCRTN nebo sluzby HDCDZApi !!
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@id INT,
|
||||||
|
@dpz TINYINT,
|
||||||
|
@idPHId INT,
|
||||||
|
@idPHIdent1 INT,
|
||||||
|
@idPHIdent2 INT,
|
||||||
|
@idObjHlav INT
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
DECLARE c CURSOR LOCAL FAST_FORWARD FOR
|
||||||
|
SELECT d.ID, d.DruhPohybuZbo
|
||||||
|
FROM deleted d
|
||||||
|
OPEN c
|
||||||
|
WHILE (1=1)
|
||||||
|
BEGIN
|
||||||
|
FETCH NEXT FROM c INTO @id, @dpz
|
||||||
|
IF (@@FETCH_STATUS<>0) BREAK
|
||||||
|
|
||||||
|
|
||||||
|
-- sync informace pro reseni ASol/ProHolding/HDC
|
||||||
|
IF (@dpz=4)
|
||||||
|
BEGIN
|
||||||
|
|
||||||
|
IF OBJECT_ID(N'dbo._TabVyroba_VydejMatSarze', N'U') IS NOT NULL
|
||||||
|
DELETE FROM dbo._TabVyroba_VydejMatSarze WHERE IDPohybZbozi=@id
|
||||||
|
|
||||||
|
|
||||||
|
IF OBJECT_ID(N'dbo.TabPohybyZbozi_EXT', N'U') IS NOT NULL
|
||||||
|
BEGIN
|
||||||
|
SET @idPHId=(SELECT _HDCAPI_PHident FROM dbo.TabPohybyZbozi_EXT WHERE ID=@id)
|
||||||
|
IF (@idPHId IS NOT NULL)
|
||||||
|
IF OBJECT_ID(N'dbo._TabVyroba_Objednavky', N'U') IS NOT NULL
|
||||||
|
SELECT @idPHIdent1=IdPHIdent, @idPHIdent2=IdPHIdent2 FROM dbo._TabVyroba_Objednavky WHERE ID=@idPHId
|
||||||
|
IF OBJECT_ID(N'dbo._TabVyroba_Objednavky_Pol', N'U') IS NOT NULL
|
||||||
|
BEGIN
|
||||||
|
SELECT @idObjHlav=IDHlava FROM dbo._TabVyroba_Objednavky_Pol WHERE IDPohybOZ=@id
|
||||||
|
DELETE FROM dbo._TabVyroba_Objednavky_Pol WHERE IDPohybOZ=@id
|
||||||
|
IF OBJECT_ID(N'dbo._TabVyroba_Objednavky', N'U') IS NOT NULL
|
||||||
|
UPDATE dbo._TabVyroba_Objednavky SET MnozKVydeji=Mnozstvi - ISNULL( (SELECT SUM(Mnozstvi) FROM dbo._TabVyroba_Objednavky_Pol WHERE IDHlava=@idObjHlav), 0)
|
||||||
|
WHERE ID=@idObjHlav
|
||||||
|
END
|
||||||
|
END
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
IF (@dpz=0)
|
||||||
|
BEGIN
|
||||||
|
IF OBJECT_ID(N'dbo._TabVyroba_PaletyPohybOZ', N'U') IS NOT NULL
|
||||||
|
UPDATE dbo._TabVyroba_PaletyPohybOZ SET IDPohybOZ=NULL WHERE IDPohybOZ=@id
|
||||||
|
END
|
||||||
|
|
||||||
|
IF OBJECT_ID(N'dbo._hdc_PZ_PuvodniVC', N'U') IS NOT NULL
|
||||||
|
DELETE FROM dbo._hdc_PZ_PuvodniVC WHERE IDPohybZbozi=@id
|
||||||
|
|
||||||
|
|
||||||
|
END
|
||||||
|
CLOSE c
|
||||||
|
DEALLOCATE c
|
||||||
|
|
||||||
|
END
|
||||||
51
_sql/trg__TabPohybyZbozi_HDC_IU.sql
Normal file
51
_sql/trg__TabPohybyZbozi_HDC_IU.sql
Normal file
@ -0,0 +1,51 @@
|
|||||||
|
-- dbo.ET_TabPohybyZbozi_HDC_IU
|
||||||
|
CREATE TRIGGER dbo.ET_TabPohybyZbozi_HDC_IU ON dbo.TabPohybyZbozi
|
||||||
|
WITH EXECUTE AS CALLER
|
||||||
|
FOR INSERT,UPDATE
|
||||||
|
AS
|
||||||
|
BEGIN
|
||||||
|
SET NOCOUNT ON
|
||||||
|
|
||||||
|
-- !! trigger neupravujte, bude stejne pregenerovan pri startu pluginu PluginHDCRTN nebo slozby HDCDZApi !!
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@id INT,
|
||||||
|
@dpz TINYINT,
|
||||||
|
@mnoz NUMERIC(19,6),
|
||||||
|
@idObjHlav INT,
|
||||||
|
@idObjPol INT
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
DECLARE c CURSOR LOCAL FAST_FORWARD FOR
|
||||||
|
SELECT i.ID, i.DruhPohybuZbo, i.Mnozstvi
|
||||||
|
FROM inserted i
|
||||||
|
OPEN c
|
||||||
|
WHILE (1=1)
|
||||||
|
BEGIN
|
||||||
|
FETCH NEXT FROM c INTO @id, @dpz, @mnoz
|
||||||
|
IF (@@FETCH_STATUS<>0) BREAK
|
||||||
|
|
||||||
|
|
||||||
|
-- sync informace pro reseni ASol/ProHolding/HDC
|
||||||
|
IF (@dpz=4)
|
||||||
|
BEGIN
|
||||||
|
IF UPDATE(Mnozstvi)
|
||||||
|
BEGIN
|
||||||
|
IF OBJECT_ID(N'dbo._TabVyroba_Objednavky_Pol', N'U') IS NOT NULL
|
||||||
|
BEGIN
|
||||||
|
SELECT @idObjHlav=IDHlava, @idObjPol=ID FROM dbo._TabVyroba_Objednavky_Pol WHERE IDPohybOZ=@id
|
||||||
|
UPDATE dbo._TabVyroba_Objednavky_Pol SET Mnozstvi=@mnoz WHERE ID=@idObjPol
|
||||||
|
IF OBJECT_ID(N'dbo._TabVyroba_Objednavky', N'U') IS NOT NULL
|
||||||
|
UPDATE dbo._TabVyroba_Objednavky SET MnozKVydeji=Mnozstvi - ISNULL( (SELECT SUM(Mnozstvi) FROM dbo._TabVyroba_Objednavky_Pol WHERE IDHlava=@idObjHlav), 0)
|
||||||
|
WHERE ID=@idObjHlav
|
||||||
|
END
|
||||||
|
END
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
END
|
||||||
|
CLOSE c
|
||||||
|
DEALLOCATE c
|
||||||
|
|
||||||
|
END
|
||||||
47
_sql/trg__TabVyrCP_HDC_D.sql
Normal file
47
_sql/trg__TabVyrCP_HDC_D.sql
Normal file
@ -0,0 +1,47 @@
|
|||||||
|
-- dbo.ET_TabVyrCP_HDC_D
|
||||||
|
CREATE TRIGGER dbo.ET_TabVyrCP_HDC_D ON dbo.TabVyrCP
|
||||||
|
WITH EXECUTE AS CALLER
|
||||||
|
FOR DELETE
|
||||||
|
AS
|
||||||
|
BEGIN
|
||||||
|
SET NOCOUNT ON
|
||||||
|
|
||||||
|
-- !! trigger neupravujte, bude stejne pregenerovan pri startu pluginu PluginHDCRTN !!
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@id INT,
|
||||||
|
@idPZ INT,
|
||||||
|
@idObjHlav INT,
|
||||||
|
@idObjPol INT
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
DECLARE c CURSOR LOCAL FAST_FORWARD FOR
|
||||||
|
SELECT d.ID, d.IDPolozkaDokladu
|
||||||
|
FROM deleted d
|
||||||
|
OPEN c
|
||||||
|
WHILE (1=1)
|
||||||
|
BEGIN
|
||||||
|
FETCH NEXT FROM c INTO @id, @idPZ
|
||||||
|
IF (@@FETCH_STATUS<>0) BREAK
|
||||||
|
|
||||||
|
|
||||||
|
-- sync informace pro reseni ASol/ProHolding/HDC
|
||||||
|
IF OBJECT_ID(N'dbo._TabVyroba_Objednavky_Pol', N'U') IS NOT NULL
|
||||||
|
BEGIN
|
||||||
|
SELECT @idObjHlav=IDHlava FROM dbo._TabVyroba_Objednavky_Pol WHERE IDPohybOZ=@idPZ AND IDVyrCP=@id
|
||||||
|
DELETE FROM dbo._TabVyroba_Objednavky_Pol WHERE IDPohybOZ=@idPZ AND IDVyrCP=@id
|
||||||
|
IF OBJECT_ID(N'dbo._TabVyroba_Objednavky', N'U') IS NOT NULL
|
||||||
|
UPDATE dbo._TabVyroba_Objednavky SET MnozKVydeji=Mnozstvi - ISNULL( (SELECT SUM(Mnozstvi) FROM dbo._TabVyroba_Objednavky_Pol WHERE IDHlava=@idObjHlav), 0)
|
||||||
|
WHERE ID=@idObjHlav
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
END
|
||||||
|
CLOSE c
|
||||||
|
DEALLOCATE c
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
END
|
||||||
39
_sql/trg__TabVyrCP_HDC_IU.sql
Normal file
39
_sql/trg__TabVyrCP_HDC_IU.sql
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
-- dbo.ET_TabVyrCP_HDC_IU
|
||||||
|
CREATE TRIGGER dbo.ET_TabVyrCP_HDC_IU ON dbo.TabVyrCP
|
||||||
|
WITH EXECUTE AS CALLER
|
||||||
|
FOR INSERT, UPDATE
|
||||||
|
AS
|
||||||
|
BEGIN
|
||||||
|
SET NOCOUNT ON
|
||||||
|
|
||||||
|
-- !! trigger neupravujte, bude stejne pregenerovan pri startu pluginu PluginHDCRTN !!
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@id INT,
|
||||||
|
@idPZ INT,
|
||||||
|
@mnoz NUMERIC(19,6)
|
||||||
|
|
||||||
|
|
||||||
|
DECLARE c CURSOR LOCAL FAST_FORWARD FOR
|
||||||
|
SELECT i.ID, i.IDPolozkaDokladu, i.Mnozstvi
|
||||||
|
FROM inserted i
|
||||||
|
OPEN c
|
||||||
|
WHILE (1=1)
|
||||||
|
BEGIN
|
||||||
|
FETCH NEXT FROM c INTO @id, @idPZ, @mnoz
|
||||||
|
IF (@@FETCH_STATUS<>0) BREAK
|
||||||
|
|
||||||
|
|
||||||
|
-- sync informace pro reseni ASol/ProHolding/HDC
|
||||||
|
IF OBJECT_ID(N'dbo._TabVyroba_Objednavky_Pol', N'U') IS NOT NULL
|
||||||
|
BEGIN
|
||||||
|
UPDATE dbo._TabVyroba_Objednavky_Pol SET Mnozstvi=@mnoz WHERE IDPohybOZ=@idPZ AND IDVyrCP=@id
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
END
|
||||||
|
CLOSE c
|
||||||
|
DEALLOCATE c
|
||||||
|
|
||||||
|
|
||||||
|
END
|
||||||
43
_sql/trg__TabVyrCisPrikaz_HDC_D.sql
Normal file
43
_sql/trg__TabVyrCisPrikaz_HDC_D.sql
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
-- dbo.ET_TabVyrCisPrikaz_HDC_D
|
||||||
|
CREATE TRIGGER dbo.ET_TabVyrCisPrikaz_HDC_D ON dbo.TabVyrCisPrikaz
|
||||||
|
WITH EXECUTE AS CALLER
|
||||||
|
FOR DELETE
|
||||||
|
AS
|
||||||
|
BEGIN
|
||||||
|
SET NOCOUNT ON
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@id INT,
|
||||||
|
@idVPr INT,
|
||||||
|
@vyrCis NVARCHAR(100),
|
||||||
|
@popis NVARCHAR(100)
|
||||||
|
|
||||||
|
|
||||||
|
DECLARE c CURSOR LOCAL FAST_FORWARD FOR
|
||||||
|
SELECT d.ID, d.IDPrikaz, d.VyrCislo, d.Popis
|
||||||
|
FROM deleted d
|
||||||
|
OPEN c
|
||||||
|
WHILE (1=1)
|
||||||
|
BEGIN
|
||||||
|
FETCH NEXT FROM c INTO @id, @idVPr, @vyrCis, @popis
|
||||||
|
IF (@@FETCH_STATUS<>0) BREAK
|
||||||
|
|
||||||
|
-- begin: reseni HDC/DZ API
|
||||||
|
IF OBJECT_ID(N'dbo._TabVyroba_Palety', N'U') IS NOT NULL
|
||||||
|
DELETE FROM dbo._TabVyroba_Palety WHERE IDPrikaz=@idVPr AND CisloPalety=@vyrCis AND Sarze=@popis
|
||||||
|
-- end: reseni HDC/DZ API
|
||||||
|
|
||||||
|
END
|
||||||
|
CLOSE c
|
||||||
|
DEALLOCATE c
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- cisteni seedu
|
||||||
|
IF EXISTS(SELECT 1 FROM dbo.TabVyrCisPrikaz)
|
||||||
|
BEGIN
|
||||||
|
SELECT @id=ISNULL(MAX(ID),1) FROM dbo.TabVyrCisPrikaz
|
||||||
|
DBCC CHECKIDENT (TabVyrCisPrikaz, RESEED, @id)
|
||||||
|
END
|
||||||
|
|
||||||
|
END
|
||||||
40
_sql/trg__TabVyrobaObjednavky_D.sql
Normal file
40
_sql/trg__TabVyrobaObjednavky_D.sql
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
-- dbo.ET__TabVyroba_Objednavky_D
|
||||||
|
CREATE TRIGGER dbo.ET__TabVyroba_Objednavky_D ON dbo._TabVyroba_Objednavky
|
||||||
|
WITH EXECUTE AS CALLER
|
||||||
|
FOR DELETE
|
||||||
|
AS
|
||||||
|
BEGIN
|
||||||
|
SET NOCOUNT ON
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@id INT
|
||||||
|
|
||||||
|
|
||||||
|
DECLARE c CURSOR LOCAL FAST_FORWARD FOR
|
||||||
|
SELECT d.ID
|
||||||
|
FROM deleted d
|
||||||
|
OPEN c
|
||||||
|
WHILE (1=1)
|
||||||
|
BEGIN
|
||||||
|
FETCH NEXT FROM c INTO @id
|
||||||
|
IF (@@FETCH_STATUS<>0) BREAK
|
||||||
|
|
||||||
|
DELETE FROM dbo._TabVyroba_Objednavky_Pol WHERE IDHlava=@id
|
||||||
|
|
||||||
|
END
|
||||||
|
CLOSE c
|
||||||
|
DEALLOCATE c
|
||||||
|
|
||||||
|
|
||||||
|
-- cisteni seedu
|
||||||
|
IF NOT EXISTS(SELECT 1 FROM dbo._TabVyroba_Objednavky)
|
||||||
|
TRUNCATE TABLE dbo._TabVyroba_Objednavky
|
||||||
|
ELSE
|
||||||
|
BEGIN
|
||||||
|
SELECT @id=MAX(ID) FROM dbo._TabVyroba_Objednavky
|
||||||
|
DBCC CHECKIDENT(_TabVyroba_Objednavky, RESEED, @id)
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
END
|
||||||
39
_sql/trg__TabVyrobaObjednavky_IU.sql
Normal file
39
_sql/trg__TabVyrobaObjednavky_IU.sql
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
-- dbo.ET_TabVyroba_Objednavky_IU
|
||||||
|
CREATE TRIGGER dbo.ET_TabVyroba_Objednavky_IU ON dbo._TabVyroba_Objednavky
|
||||||
|
WITH EXECUTE AS CALLER
|
||||||
|
FOR INSERT, UPDATE
|
||||||
|
AS
|
||||||
|
BEGIN
|
||||||
|
SET NOCOUNT ON
|
||||||
|
|
||||||
|
-- !! trigger neupravujte, bude stejne pregenerovan pri startu pluginu PluginHDCRTN !!
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@id INT,
|
||||||
|
@sz NVARCHAR(3),
|
||||||
|
@rc NVARCHAR(30),
|
||||||
|
@idKZ INT,
|
||||||
|
@sarze NVARCHAR(50)
|
||||||
|
|
||||||
|
|
||||||
|
DECLARE c CURSOR LOCAL FAST_FORWARD FOR
|
||||||
|
SELECT i.ID, i.SkupZbo, i.RegCis, i.IDKmenZbozi
|
||||||
|
FROM inserted i
|
||||||
|
OPEN c
|
||||||
|
WHILE (1=1)
|
||||||
|
BEGIN
|
||||||
|
FETCH NEXT FROM c INTO @id, @sz, @rc, @idKZ
|
||||||
|
IF (@@FETCH_STATUS<>0) BREAK
|
||||||
|
|
||||||
|
IF (@idKZ IS NULL)
|
||||||
|
BEGIN
|
||||||
|
SET @idKZ = (SELECT ID FROM dbo.TabKmenZbozi WHERE SkupZbo=@sz AND RegCis=@rc)
|
||||||
|
IF (@idKZ IS NOT NULL)
|
||||||
|
UPDATE dbo._TabVyroba_Objednavky SET IDKmenZbozi=@idKZ WHERE ID=@id
|
||||||
|
END
|
||||||
|
|
||||||
|
END
|
||||||
|
CLOSE c
|
||||||
|
DEALLOCATE c
|
||||||
|
|
||||||
|
END
|
||||||
26
_sql/trg__TabVyrobaObjednavky_Pol_D.sql
Normal file
26
_sql/trg__TabVyrobaObjednavky_Pol_D.sql
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
-- dbo.ET_TabVyroba_Objednavky_Pol_D
|
||||||
|
CREATE TRIGGER dbo.ET_TabVyroba_Objednavky_Pol_D ON dbo._TabVyroba_Objednavky_Pol
|
||||||
|
WITH EXECUTE AS CALLER
|
||||||
|
FOR DELETE
|
||||||
|
AS
|
||||||
|
BEGIN
|
||||||
|
SET NOCOUNT ON
|
||||||
|
|
||||||
|
-- !! trigger neupravujte, bude stejne pregenerovan pri startu pluginu PluginHDCRTN !!
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@id INT
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- cisteni
|
||||||
|
IF EXISTS(SELECT 1 FROM dbo._TabVyroba_Objednavky_Pol)
|
||||||
|
BEGIN
|
||||||
|
SELECT @id=MAX(ID) FROM dbo._TabVyroba_Objednavky_Pol
|
||||||
|
DBCC CHECKIDENT(_TabVyroba_Objednavky_Pol, RESEED, @id)
|
||||||
|
END
|
||||||
|
ELSE
|
||||||
|
TRUNCATE TABLE dbo._TabVyroba_Objednavky_Pol
|
||||||
|
|
||||||
|
END
|
||||||
25
_sql/trg__TabVyrobaOperaceStartStop_D.sql
Normal file
25
_sql/trg__TabVyrobaOperaceStartStop_D.sql
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
-- dbo.ET_TabVyroba_OperaceStartStop_D
|
||||||
|
CREATE TRIGGER dbo.ET_TabVyroba_OperaceStartStop_D ON dbo._TabVyroba_OperaceStartStop
|
||||||
|
WITH EXECUTE AS CALLER
|
||||||
|
FOR DELETE
|
||||||
|
AS
|
||||||
|
BEGIN
|
||||||
|
SET NOCOUNT ON
|
||||||
|
|
||||||
|
-- !! trigger neupravujte, bude stejne pregenerovan pri startu pluginu PluginHDCRTN !!
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@id INT
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- cisteni seedu
|
||||||
|
IF EXISTS(SELECT 1 FROM dbo._TabVyroba_OperaceStartStop)
|
||||||
|
BEGIN
|
||||||
|
SELECT @id=MAX(ID) FROM dbo._TabVyroba_OperaceStartStop
|
||||||
|
DBCC CHECKIDENT(_TabVyroba_OperaceStartStop, RESEED, @id)
|
||||||
|
END
|
||||||
|
ELSE
|
||||||
|
TRUNCATE TABLE dbo._TabVyroba_OperaceStartStop
|
||||||
|
|
||||||
|
END
|
||||||
37
_sql/trg__TabVyrobaPaletyUkonceni_D.sql
Normal file
37
_sql/trg__TabVyrobaPaletyUkonceni_D.sql
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
-- dbo.ET_TabVyroba_PaletyUkonceni_D
|
||||||
|
CREATE TRIGGER dbo.ET_TabVyroba_PaletyUkonceni_D ON dbo._TabVyroba_PaletyUkonceni
|
||||||
|
WITH EXECUTE AS CALLER
|
||||||
|
FOR DELETE
|
||||||
|
AS
|
||||||
|
BEGIN
|
||||||
|
SET NOCOUNT ON
|
||||||
|
|
||||||
|
-- !! trigger neupravujte, bude stejne pregenerovan pri startu pluginu PluginHDCRTN !!
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@id INT
|
||||||
|
|
||||||
|
DECLARE c CURSOR LOCAL FOR
|
||||||
|
SELECT d.ID
|
||||||
|
FROM deleted d
|
||||||
|
OPEN c
|
||||||
|
WHILE (1=1)
|
||||||
|
BEGIN
|
||||||
|
FETCH NEXT FROM c INTO @id
|
||||||
|
IF (@@FETCH_STATUS<>0) BREAK
|
||||||
|
END
|
||||||
|
CLOSE c
|
||||||
|
DEALLOCATE c
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- cisteni
|
||||||
|
IF EXISTS(SELECT 1 FROM dbo._TabVyroba_PaletyUkonceni)
|
||||||
|
BEGIN
|
||||||
|
SELECT @id=MAX(ID) FROM dbo._TabVyroba_PaletyUkonceni
|
||||||
|
DBCC CHECKIDENT(_TabVyroba_PaletyUkonceni, RESEED, @id)
|
||||||
|
END
|
||||||
|
ELSE
|
||||||
|
TRUNCATE TABLE dbo._TabVyroba_PaletyUkonceni
|
||||||
|
|
||||||
|
END
|
||||||
44
_sql/trg__TabVyrobaPalety_D.sql
Normal file
44
_sql/trg__TabVyrobaPalety_D.sql
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
-- dbo.ET_TabVyroba_Palety_D
|
||||||
|
CREATE TRIGGER dbo.ET_TabVyroba_Palety_D ON dbo._TabVyroba_Palety
|
||||||
|
WITH EXECUTE AS CALLER
|
||||||
|
FOR DELETE
|
||||||
|
AS
|
||||||
|
BEGIN
|
||||||
|
SET NOCOUNT ON
|
||||||
|
|
||||||
|
-- !! trigger neupravujte, bude stejne pregenerovan pri startu pluginu PluginHDCRTN !!
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@id INT
|
||||||
|
|
||||||
|
DECLARE c CURSOR LOCAL FOR
|
||||||
|
SELECT d.ID
|
||||||
|
FROM deleted d
|
||||||
|
OPEN c
|
||||||
|
WHILE (1=1)
|
||||||
|
BEGIN
|
||||||
|
FETCH NEXT FROM c INTO @id
|
||||||
|
IF (@@FETCH_STATUS<>0) BREAK
|
||||||
|
|
||||||
|
IF OBJECT_ID(N'dbo._TabVyroba_PaletyUkonceni', N'U') IS NOT NULL
|
||||||
|
DELETE FROM dbo._TabVyroba_PaletyUkonceni WHERE IDPalety=@id
|
||||||
|
|
||||||
|
IF OBJECT_ID(N'dbo._TabVyroba_PaletyPohybOZ', N'U') IS NOT NULL
|
||||||
|
DELETE FROM dbo._TabVyroba_PaletyPohybOZ WHERE IDPalety=@id
|
||||||
|
|
||||||
|
END
|
||||||
|
CLOSE c
|
||||||
|
DEALLOCATE c
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- cisteni
|
||||||
|
IF EXISTS(SELECT 1 FROM dbo._TabVyroba_Palety)
|
||||||
|
BEGIN
|
||||||
|
SELECT @id=MAX(ID) FROM dbo._TabVyroba_Palety
|
||||||
|
DBCC CHECKIDENT(_TabVyroba_Palety, RESEED, @id)
|
||||||
|
END
|
||||||
|
ELSE
|
||||||
|
TRUNCATE TABLE dbo._TabVyroba_Palety
|
||||||
|
|
||||||
|
END
|
||||||
38
_sql/trg__TabVyrobaPalety_IU.sql
Normal file
38
_sql/trg__TabVyrobaPalety_IU.sql
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
-- dbo.ET_TabVyroba_Palety_IU
|
||||||
|
CREATE TRIGGER dbo.ET_TabVyroba_Palety_IU ON dbo._TabVyroba_Palety
|
||||||
|
WITH EXECUTE AS CALLER
|
||||||
|
FOR INSERT, UPDATE
|
||||||
|
AS
|
||||||
|
BEGIN
|
||||||
|
SET NOCOUNT ON
|
||||||
|
|
||||||
|
-- !! trigger neupravujte, bude stejne pregenerovan pri startu pluginu PluginHDCRTN !!
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@id INT,
|
||||||
|
@idVPr INT,
|
||||||
|
@idKmen INT
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
DECLARE c CURSOR LOCAL FAST_FORWARD FOR
|
||||||
|
SELECT i.ID, i.IDPrikaz, i.IDKmen
|
||||||
|
FROM inserted i
|
||||||
|
OPEN c
|
||||||
|
WHILE (1=1)
|
||||||
|
BEGIN
|
||||||
|
FETCH NEXT FROM c INTO @id, @idVPr, @idKmen
|
||||||
|
IF (@@FETCH_STATUS<>0) BREAK
|
||||||
|
|
||||||
|
IF (@idKmen IS NULL)
|
||||||
|
BEGIN
|
||||||
|
SELECT @idKmen=IDTabKmen FROM dbo.TabPrikaz WHERE ID=@idVPr
|
||||||
|
UPDATE dbo._TabVyroba_Palety SET IDKmen=@idKmen WHERE ID=@id
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
END
|
||||||
|
CLOSE c
|
||||||
|
DEALLOCATE c
|
||||||
|
|
||||||
|
END
|
||||||
38
_sql/trg__TabVyrobaVydejMatSarze_IU.sql
Normal file
38
_sql/trg__TabVyrobaVydejMatSarze_IU.sql
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
-- dbo.ET_TabVyroba_VydejMatSarze_IU
|
||||||
|
CREATE TRIGGER dbo.ET_TabVyroba_VydejMatSarze_IU ON dbo._TabVyroba_VydejMatSarze
|
||||||
|
WITH EXECUTE AS CALLER
|
||||||
|
FOR INSERT, UPDATE
|
||||||
|
AS
|
||||||
|
BEGIN
|
||||||
|
SET NOCOUNT ON
|
||||||
|
|
||||||
|
-- !! trigger neupravujte, bude stejne pregenerovan pri startu pluginu PluginHDCRTN !!
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@id INT,
|
||||||
|
@idPZ INT,
|
||||||
|
@idKmen INT
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
DECLARE c CURSOR LOCAL FAST_FORWARD FOR
|
||||||
|
SELECT i.ID, i.IDPohybZbozi, i.IDKmenZbozi
|
||||||
|
FROM inserted i
|
||||||
|
OPEN c
|
||||||
|
WHILE (1=1)
|
||||||
|
BEGIN
|
||||||
|
FETCH NEXT FROM c INTO @id, @idPZ, @idKmen
|
||||||
|
IF (@@FETCH_STATUS<>0) BREAK
|
||||||
|
|
||||||
|
IF (@idKmen IS NULL)
|
||||||
|
BEGIN
|
||||||
|
SELECT @idKmen=s.IDKmenZbozi FROM dbo.TabPoybyZbozi p INNER JOIN dbo.TabStavSkladu s ON (s.ID=p.IDZboSklad) WHERE p.ID=@idPZ
|
||||||
|
UPDATE dbo._TabVyroba_VydejMatSarze SET IDKmenZbozi=@idKmen WHERE ID=@id
|
||||||
|
END
|
||||||
|
|
||||||
|
|
||||||
|
END
|
||||||
|
CLOSE c
|
||||||
|
DEALLOCATE c
|
||||||
|
|
||||||
|
END
|
||||||
25
_sql/trg__hdc_PZ_PuvodniVC_D.sql
Normal file
25
_sql/trg__hdc_PZ_PuvodniVC_D.sql
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
-- dbo.ET__hdc_PZ_PuvodniVC_D
|
||||||
|
CREATE TRIGGER dbo.ET__hdc_PZ_PuvodniVC_D ON dbo._hdc_PZ_PuvodniVC
|
||||||
|
WITH EXECUTE AS CALLER
|
||||||
|
FOR DELETE
|
||||||
|
AS
|
||||||
|
BEGIN
|
||||||
|
SET NOCOUNT ON
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@id INT
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- cisteni
|
||||||
|
IF EXISTS (SELECT 1 FROM dbo._hdc_PZ_PuvodniVC)
|
||||||
|
BEGIN
|
||||||
|
SELECT @id=MAX(ID) FROM dbo._hdc_PZ_PuvodniVC
|
||||||
|
DBCC CHECKIDENT (_hdc_PZ_PuvodniVC, RESEED, @id)
|
||||||
|
END
|
||||||
|
ELSE
|
||||||
|
TRUNCATE TABLE dbo._hdc_PZ_PuvodniVC
|
||||||
|
|
||||||
|
END
|
||||||
4
compileZdroje.cmd
Normal file
4
compileZdroje.cmd
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
@echo off
|
||||||
|
"C:\Program files (x86)\Embarcadero\Studio\23.0\bin\brcc32.exe" PluginHDCRTNResource.rc
|
||||||
|
|
||||||
|
|
||||||
18719
datMod.dfm
Normal file
18719
datMod.dfm
Normal file
File diff suppressed because it is too large
Load Diff
2221
datMod.pas
Normal file
2221
datMod.pas
Normal file
File diff suppressed because it is too large
Load Diff
0
extCtrls/HeODefine.inc
Normal file
0
extCtrls/HeODefine.inc
Normal file
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user