Prvni verze

This commit is contained in:
2025-05-21 21:19:51 +02:00
parent 9919973fc2
commit b1cd64bb32
45 changed files with 27247 additions and 17 deletions

32
.gitignore vendored
View File

@ -1,4 +1,3 @@
# ---> Delphi
# Uncomment these types if you want even more clean repository. But be careful.
# It can make harm to an existing project source. Read explanations below.
#
@ -27,18 +26,6 @@
#*.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)
*.exe
*.dll
@ -78,6 +65,21 @@ __recovery/
# Castalia statistics file (since XE7 Castalia is distributed with Delphi)
*.stat
# Boss dependency manager vendor folder https://github.com/HashLoad/boss
modules/
*.otares
*.cmds
*.skincfg
*.bmp
*.mp3
*.mes
*.vtd
*.xls
*.xlsx
*.vlb
*.tmp
*.xml
*.zip
*.7z
bak/
bak2/

3004
ComObjekt.pas Normal file

File diff suppressed because it is too large Load Diff

View File

@ -1,2 +1,2 @@
# Kdynium-plgKdynium
Helios Orange plugin pro Kdynium

BIN
arrowDown.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.1 KiB

5
dataMod.dfm Normal file
View File

@ -0,0 +1,5 @@
object dm: Tdm
Height = 480
Width = 640
PixelsPerInch = 96
end

23
dataMod.pas Normal file
View File

@ -0,0 +1,23 @@
unit dataMod;
interface
uses
System.SysUtils, System.Classes;
type
Tdm = class(TDataModule)
private
public
end;
var
dm: Tdm;
implementation
{%CLASSGROUP 'Vcl.Controls.TControl'}
{$R *.dfm}
end.

798
frmDavkyObecne.dfm Normal file
View File

@ -0,0 +1,798 @@
object formDavkyObecne: TformDavkyObecne
Left = 0
Top = 0
BorderIcons = [biSystemMenu]
Caption = ' D'#225'vka obecn'#225
ClientHeight = 510
ClientWidth = 1153
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = []
Position = poOwnerFormCenter
OnClose = FormClose
OnShow = FormShow
TextHeight = 13
object lblDavka: TLabel
Left = 197
Top = 21
Width = 777
Height = 33
Alignment = taCenter
AutoSize = False
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -27
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
end
object Label1: TLabel
Left = 117
Top = 80
Width = 69
Height = 25
Caption = 'P'#345#237'kaz :'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
end
object Label2: TLabel
Left = 467
Top = 80
Width = 70
Height = 25
Caption = 'Tavba :'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
end
object lblPrikaz: TLabel
Left = 119
Top = 110
Width = 343
Height = 19
AutoSize = False
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -16
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
end
object lblZapisDat: TLabel
Left = 36
Top = 463
Width = 346
Height = 19
AutoSize = False
Font.Charset = DEFAULT_CHARSET
Font.Color = clRed
Font.Height = -16
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
end
object grd: TNextDBGrid6
Left = 8
Top = 141
Width = 1137
Height = 298
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = []
ParentColor = False
ParentFont = False
TabOrder = 7
StyleOptions = [soNativeStyles, soVCLStyles]
ActiveView = grdView
ActiveViewIndex = 0
Options = [goAutoHideScrollBars, goExitEndEditing, goResponsiveViews, goTabLeaveControl]
RightClickDeselect = False
RightClickSelect = False
RowHeight = 30
ScrollBars = [sbVertical]
SelectFullRow = True
UserDefinedColorPalette.GeometryHoverColor = clBlack
DataSource = dSource
object grdView: TNxReportGridView6
ColumnMoving = False
FixedRowCount = 1
GridLines = True
HeaderHeight = 33
OnGetCellColor = grdViewGetCellColor
end
object colVyrPrikaz: TNxDBTextColumn6
Alignment = taCenter
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = []
Footer.Font.Charset = DEFAULT_CHARSET
Footer.Font.Color = clWindowText
Footer.Font.Height = -21
Footer.Font.Name = 'Tahoma'
Footer.Font.Style = []
Footer.FormatMask = '#,##0.00'
Header.Alignment = taCenter
Header.Caption = 'P'#345#237'kaz'
Header.Font.Charset = DEFAULT_CHARSET
Header.Font.Color = clWindowText
Header.Font.Height = -21
Header.Font.Name = 'Tahoma'
Header.Font.Style = []
Header.ParentFont = False
Index = 0
PlaceholderText = 'Text Text'
Position = 0
Resizeable = False
Width = 160
DataBinding.FieldName = 'VyrPrikaz'
end
object colRegCis: TNxDBTextColumn6
Alignment = taCenter
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = []
Footer.Font.Charset = DEFAULT_CHARSET
Footer.Font.Color = clWindowText
Footer.Font.Height = -21
Footer.Font.Name = 'Tahoma'
Footer.Font.Style = []
Footer.FormatMask = '#,##0.00'
Header.Alignment = taCenter
Header.Caption = 'Reg.'#269'.'
Header.Font.Charset = DEFAULT_CHARSET
Header.Font.Color = clWindowText
Header.Font.Height = -21
Header.Font.Name = 'Tahoma'
Header.Font.Style = []
Header.ParentFont = False
Index = 1
PlaceholderText = 'Text Text'
Position = 1
Resizeable = False
Width = 160
DataBinding.FieldName = 'RegCis'
end
object colPopis: TNxDBTextColumn6
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = []
Footer.Font.Charset = DEFAULT_CHARSET
Footer.Font.Color = clWindowText
Footer.Font.Height = -21
Footer.Font.Name = 'Tahoma'
Footer.Font.Style = []
Footer.FormatMask = '#,##0.00'
Header.Alignment = taCenter
Header.Caption = 'Popis'
Header.Font.Charset = DEFAULT_CHARSET
Header.Font.Color = clWindowText
Header.Font.Height = -21
Header.Font.Name = 'Tahoma'
Header.Font.Style = []
Header.ParentFont = False
Index = 2
PlaceholderText = 'Text Text'
Position = 2
Resizeable = False
Width = 400
DataBinding.FieldName = 'Nazev'
end
object colSkladem: TNxDBNumberColumn6
Alignment = taCenter
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = []
Footer.Font.Charset = DEFAULT_CHARSET
Footer.Font.Color = clWindowText
Footer.Font.Height = -11
Footer.Font.Name = 'Tahoma'
Footer.Font.Style = []
Footer.FormatMask = '#,##0.00'
Header.Alignment = taCenter
Header.Caption = 'Sklad'
Header.Font.Charset = DEFAULT_CHARSET
Header.Font.Color = clWindowText
Header.Font.Height = -21
Header.Font.Name = 'Tahoma'
Header.Font.Style = []
Header.ParentFont = False
Index = 3
PlaceholderText = '1742'
Position = 3
FormatMask = '#,##0'
Increment = 1.000000000000000000
InsertString = '0'
end
object colMnozstvi: TNxDBNumberColumn6
Alignment = taCenter
Editing = True
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = []
Footer.Font.Charset = DEFAULT_CHARSET
Footer.Font.Color = clWindowText
Footer.Font.Height = -21
Footer.Font.Name = 'Tahoma'
Footer.Font.Style = []
Footer.FormatMask = '#,##0.00'
Header.Alignment = taCenter
Header.Caption = 'Mno'#382'.'
Header.Font.Charset = DEFAULT_CHARSET
Header.Font.Color = clWindowText
Header.Font.Height = -21
Header.Font.Name = 'Tahoma'
Header.Font.Style = []
Header.ParentFont = False
Index = 4
PlaceholderText = '1742'
Position = 4
Resizeable = False
Width = 100
FormatMask = '#,##0'
Precision = 0
Increment = 1.000000000000000000
DataBinding.FieldName = 'Mnozstvi'
InsertString = '0'
end
object colMJ: TNxDBTextColumn6
Alignment = taCenter
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = []
Footer.Font.Charset = DEFAULT_CHARSET
Footer.Font.Color = clWindowText
Footer.Font.Height = -21
Footer.Font.Name = 'Tahoma'
Footer.Font.Style = []
Footer.FormatMask = '#,##0.00'
Header.Alignment = taCenter
Header.Caption = 'MJ'
Header.Font.Charset = DEFAULT_CHARSET
Header.Font.Color = clWindowText
Header.Font.Height = -21
Header.Font.Name = 'Tahoma'
Header.Font.Style = []
Header.ParentFont = False
Index = 5
PlaceholderText = 'Text Text'
Position = 5
Resizeable = False
DataBinding.FieldName = 'MJ'
end
object colTavba: TNxDBTextColumn6
Alignment = taCenter
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = []
Footer.Font.Charset = DEFAULT_CHARSET
Footer.Font.Color = clWindowText
Footer.Font.Height = -21
Footer.Font.Name = 'Tahoma'
Footer.Font.Style = []
Footer.FormatMask = '#,##0.00'
Header.Alignment = taCenter
Header.Caption = 'Tavba'
Header.Font.Charset = DEFAULT_CHARSET
Header.Font.Color = clWindowText
Header.Font.Height = -21
Header.Font.Name = 'Tahoma'
Header.Font.Style = []
Header.ParentFont = False
Index = 6
Inserting = False
PlaceholderText = 'Text Text'
Position = 6
Resizeable = False
Width = 140
DataBinding.FieldName = 'Tavba'
end
end
object btnOK: TButton
Left = 514
Top = 450
Width = 124
Height = 43
Caption = 'Ulo'#382'it'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
TabOrder = 8
OnClick = btnOKClick
end
object btnGenPrevod: TButton
Left = 927
Top = 450
Width = 205
Height = 43
Caption = 'Ukon'#269'it a P'#345'ev'#233'st'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
TabOrder = 9
end
object edtPrikaz: TEdit
Left = 195
Top = 77
Width = 175
Height = 33
Alignment = taCenter
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
TabOrder = 0
OnExit = edtPrikazExit
end
object selPrikaz: TButtonedEdit
Left = 371
Top = 79
Width = 31
Height = 31
Images = imgs
LeftButton.ImageIndex = 2
LeftButton.Visible = True
TabOrder = 1
OnClick = selPrikazClick
end
object edtMnoz: TRzNumericEdit
Left = 798
Top = 77
Width = 76
Height = 33
Alignment = taCenter
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
TabOrder = 4
DisplayFormat = ',0;(,0)'
end
object cbMJ: TComboBox
Left = 880
Top = 77
Width = 73
Height = 33
Style = csDropDownList
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = []
ItemIndex = 0
ParentFont = False
TabOrder = 5
Text = 'ks'
Items.Strings = (
'ks'
'str')
end
object edtTavba: TEdit
Left = 545
Top = 77
Width = 175
Height = 33
Alignment = taCenter
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
ReadOnly = True
TabOrder = 2
end
object selTavba: TButtonedEdit
Left = 721
Top = 79
Width = 31
Height = 31
Images = imgs
LeftButton.ImageIndex = 2
LeftButton.Visible = True
TabOrder = 3
OnClick = selTavbaClick
end
object btnAdd: TButton
Left = 974
Top = 67
Width = 61
Height = 55
ImageAlignment = iaCenter
ImageIndex = 0
Images = imgs
TabOrder = 6
OnClick = btnAddClick
end
object dSource: TDataSource
DataSet = tbl
Left = 12
Top = 444
end
object tbl: TVirtualTable
Left = 63
Top = 447
Data = {04000000000000000000}
object tblIDDavka: TIntegerField
FieldName = 'IDDavka'
end
object tblIDPrikaz: TIntegerField
FieldName = 'IDPrikaz'
Required = True
end
object tblVyrPrikaz: TStringField
FieldName = 'VyrPrikaz'
Size = 15
end
object tblRegCis: TStringField
FieldName = 'RegCis'
Size = 30
end
object tblNazev: TStringField
FieldName = 'Nazev'
Size = 50
end
object tblMnozstvi: TFloatField
FieldName = 'Mnozstvi'
Required = True
end
object tblMJ: TStringField
FieldName = 'MJ'
Size = 10
end
object tblTavba: TStringField
FieldName = 'Tavba'
Size = 15
end
object tblIDRodic: TIntegerField
FieldName = 'IDRodic'
end
object tblSkladem: TFloatField
FieldName = 'Skladem'
end
end
object imgs: TImageList
Height = 24
Width = 24
Left = 111
Top = 447
Bitmap = {
494C010103001400040018001800FFFFFFFFFF00FFFFFFFFFFFFFFFF424D3600
0000000000003600000028000000600000001800000001002000000000000024
000000000000000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC8C8C800BABABA00A9A9A900A5A5
A500A9A9A900B1B1B100BABABA00D8D8D800FFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCECE
CE00000000000000000000000000010101000101010004040400101010002121
2100101010001010100000000000000000000000000001010100010101003D3D
3D00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9B9B9B000000
0000BDBDBD00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2627
270000000000FFFFFFFFFFFFFFFFFFFFFFFF0000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00000000FFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFF262727003D3D3D00FFFFFFFFFFFFFFFF0000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6E6E6E002F2F2F00FFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFF01010100FFFFFFFFFFFFFFFF0000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE2E2E2005151
510051515100A6A6A600FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF17171700A0A0A000FFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFF01010100FFFFFFFFFFFFFFFF0000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE2E2E200515151005151
51005151510051515100A7A7A700FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00000000C2C4C400FFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFF00000000FFFFFFFFFFFFFFFF0000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE2E2E20051515100515151005151
5100515151005151510051515100A5A5A500FFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00000000FFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFF00000000D8D8D800FFFFFFFF0000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFE2E2E2005151510051515100515151005151
510051515100515151005151510051515100A5A5A500FFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00000000FFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFF01010100BCBCBC00FFFFFFFF0000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFE2E2E200515151005151510051515100515151005151
51005151510051515100515151005151510051515100A4A4A400FFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00000000FFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFF5B5B5B00C3C3C300FFFFFFFFFFFFFFFFFFFFFFFF6262
6200ACACAC00FFFFFFFFFFFFFFFFFFFFFFFF6B6B6B0097979700FFFFFFFFFFFF
FFFFFFFFFFFF0B0B0B00B1B1B100FFFFFFFF0000000000000000000000000000
000000000000A3A3A300A4A4A40000000000000000000000000000000000A3A3
A300A4A4A40000000000000000000000000000000000A3A3A300A4A4A4000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFE2E2E20051515100515151005151510051515100515151006868
6800A9A9A9005151510051515100515151005151510051515100A4A4A400FFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00000000FFFFFFFFFFFF
FFFFFFFFFFFF000000005252520001010100FFFFFFFFFFFFFFFF000000004343
430000000000B6B6B600FFFFFFFF060606002E2F2F000202020083838300FFFF
FFFFFFFFFFFF15151500A7A7A700FFFFFFFF0000000000000000000000000000
0000A2A2A2000000000000000000A3A3A3000000000000000000A2A2A2000000
000000000000A3A3A3000000000000000000A2A2A2000000000000000000A3A3
A300000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFE2E2E200515151005151510051515100515151005151510068686800FFFF
FFFFFFFFFFFFA9A9A9005151510051515100515151005151510051515100A4A4
A400FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00000000FFFFFFFFFFFF
FFFFFFFFFFFF00000000FFFFFFFF15151500A0A0A000FFFFFFFF00000000FFFF
FFFF4040400071717100FFFFFFFF00000000FFFFFFFF737474003F3F3F00FFFF
FFFFFFFFFFFF1A1A1A00A1A1A100FFFFFFFF0000000000000000000000000000
0000A2A2A2000000000000000000A3A3A3000000000000000000A2A2A2000000
000000000000A3A3A3000000000000000000A2A2A2000000000000000000A3A3
A300000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFE4E4
E400515151005151510051515100515151005151510068686800FFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFA9A9A900515151005151510051515100515151005151
5100A4A4A400FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00000000FFFFFFFFFFFF
FFFFFFFFFFFF2C2C2C000000000000000000FFFFFFFFFFFFFFFF555555000000
000000000000FFFFFFFFFFFFFFFF878787000000000000000000FFFFFFFFFFFF
FFFFFFFFFFFF10101000ACACAC00FFFFFFFF0000000000000000000000000000
000000000000A2A2A200A2A2A20000000000000000000000000000000000A2A2
A200A2A2A20000000000000000000000000000000000A2A2A200A2A2A2000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFF5151
51005151510051515100515151005151510068686800FFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFA9A9A9005151510051515100515151005151
510051515100FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00000000FFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFF05050500B6B6B600FFFFFFFF0000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFF6161
610051515100515151005151510068686800FFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA9A9A90051515100515151005151
510051515100FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF01010100FFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFF01010100C7C7C700FFFFFFFF0000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFF585858005151510069696900FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA8A8A800515151005151
5100FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF01010100D4D4D400FFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFF01010100FFFFFFFFFFFFFFFF0000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF06060600B3B3B300FFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFF00000000FFFFFFFFFFFFFFFF0000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3D3D3D007A7A7A00FFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFF00000000FFFFFFFFFFFFFFFF0000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC7C7C70000000000FFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFBDBDBD0000000000FFFFFFFFFFFFFFFF0000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF040404004747
4700FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFF00000000CDCDCD00FFFFFFFFFFFFFFFF0000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0404
0400000000007A7A7A00B3B3B300D2D2D200FFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC2C4C400A0A0A0002F2F2F000000
00009C9C9C00FFFFFFFFFFFFFFFFFFFFFFFF0000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFC5C5C5003C3C3C0006060600010101000101010000000000000000000000
00000000000000000000000000000000000000000000161616006F6F6F00FFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000FFFFFF00FFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000424D3E000000000000003E000000
2800000060000000180000000100010000000000200100000000000000000000
000000000000000000000000FFFFFF00000000000000FFFFFF00000000000000
0000FFFFFF000000000000000000FFFFFF000000000000000000FFFFFF000000
000000000000FFFFFF000000000000000000FFFFFF000000000000000000FFFF
FF000000000000000000FFFFFF000000000000000000FFFFFF00000000000000
0000FFFFFF000000000000000000F9E79F000000000000000000F0C30F000000
000000000000F0C30F000000000000000000F9E79F000000000000000000FFFF
FF000000000000000000FFFFFF000000000000000000FFFFFF00000000000000
0000FFFFFF000000000000000000FFFFFF000000000000000000FFFFFF000000
000000000000FFFFFF000000000000000000FFFFFF000000000000000000FFFF
FF000000000000000000FFFFFF000000}
end
end

372
frmDavkyObecne.pas Normal file
View File

@ -0,0 +1,372 @@
unit frmDavkyObecne;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, ddPlugin_TLB,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Data.DB, MemDS, VirtualTable, NxTypes6, NxGridView6, NxColumns6,
NxControls6, NxCustomGrid6, NxVirtualGrid6, NxDBGrid6, NxDBColumns6,
Vcl.StdCtrls, TBPackageU, Vcl.Buttons, Vcl.Mask, RzEdit, System.ImageList,
Vcl.ImgList, Vcl.ExtCtrls;
const
tblDavky = '[dbo].[_hdc_TabDavky]';
type
TformDavkyObecne = class(TForm)
grd: TNextDBGrid6;
dSource: TDataSource;
tbl: TVirtualTable;
tblIDDavka: TIntegerField;
grdView: TNxReportGridView6;
tblIDPrikaz: TIntegerField;
tblVyrPrikaz: TStringField;
tblMnozstvi: TFloatField;
tblMJ: TStringField;
colVyrPrikaz: TNxDBTextColumn6;
tblNazev: TStringField;
tblRegCis: TStringField;
colRegCis: TNxDBTextColumn6;
colPopis: TNxDBTextColumn6;
colMnozstvi: TNxDBNumberColumn6;
colMJ: TNxDBTextColumn6;
btnOK: TButton;
btnGenPrevod: TButton;
edtPrikaz: TEdit;
selPrikaz: TButtonedEdit;
lblDavka: TLabel;
tblTavba: TStringField;
colTavba: TNxDBTextColumn6;
edtMnoz: TRzNumericEdit;
cbMJ: TComboBox;
Label1: TLabel;
edtTavba: TEdit;
selTavba: TButtonedEdit;
Label2: TLabel;
btnAdd: TButton;
imgs: TImageList;
tblIDRodic: TIntegerField;
lblPrikaz: TLabel;
tblSkladem: TFloatField;
colSkladem: TNxDBNumberColumn6;
lblZapisDat: TLabel;
procedure grdViewGetCellColor (Sender: TObject; ACol, ARow: Integer; var CellColor: TColor; State: TNxCellPaintingState);
procedure FormShow (Sender: TObject);
procedure edtPrikazExit (Sender: TObject);
procedure selPrikazClick (Sender: TObject);
procedure btnAddClick (Sender: TObject);
procedure FormClose (Sender: TObject; var Action: TCloseAction);
procedure selTavbaClick (Sender: TObject);
procedure btnOKClick (Sender: TObject);
private
procedure NactiDoklad;
procedure NactiPrikaz;
public
Helios: IHelios;
druhDavky: Integer;
jeTest: Boolean;
idRodic, id: integer;
end;
var
formDavkyObecne: TformDavkyObecne;
rc, popis, sklad, verText: string;
oVar: OleVariant;
idVPr, idTavba, idKZ, bidTavby, cisloDavky, rokDavky: integer;
mn: Extended;
implementation
uses System.StrUtils, System.DateUtils, helUtils;
{$R *.dfm}
procedure TformDavkyObecne.NactiPrikaz;
var s,r,n: string;
begin
if (idVPr>0) then
begin
lblPrikaz.Caption:= '';
s:= '';
r:= '';
n:= '';
sklad:= '';
with Helios.OpenSQL('SELECT k.SkupZbo, k.RegCis, k.Nazev1, p.Sklad, p.IDTabKmen FROM ' + tblPrikaz + ' p INNER JOIN ' + tblKZ + ' k ON (k.ID=p.IDTabKmen) WHERE p.ID=' + idVPr.ToString) do
begin
s:= VarToStr(FieldValues(0));
r:= VarToStr(FieldValues(1));
n:= VarToStr(FieldValues(2));
sklad:= VarToStr(FieldValues(3));
idKZ:= StrToInt(VarToStr(FieldValues(4)));
lblPrikaz.Caption:= r + ' / ' + n;
end;
rc:= r;
popis:= n;
end;
end;
procedure TformDavkyObecne.btnAddClick(Sender: TObject);
var lSQL: string;
begin
if (idVPr>0) then
begin
if not(tbl.Active) then
tbl.Open;
tbl.Append;
tbl.FieldByName('IDDavka').AsInteger:= 0;
tbl.FieldByName('IDRodic').AsInteger:= idRodic;
tbl.FieldByName('IDPrikaz').AsInteger:= idVPr;
tbl.FieldByName('RegCis').AsString:= rc;
tbl.FieldByName('Nazev').AsString:= popis;
tbl.FieldByName('VyrPrikaz').AsString:= edtPrikaz.Text;
tbl.FieldByName('Mnozstvi').AsExtended:= edtMnoz.Value;
lSQL:= 'SELECT Mnozstvi FROM ' + tblSS + ' WHERE IDSklad=N' + QuotedStr(sklad) + ' AND IDKmenZbozi=' + idKZ.ToString;
tbl.FieldByName('Skladem').AsExtended:= helUtils.getHeliosFloatVal(Helios, 0, lSQL);
tbl.FieldByName('MJ').AsString:= cbMJ.Text;
tbl.FieldByName('Tavba').AsString:= edtTavba.Text;
tbl.Post;
idVPr:= 0;
edtPrikaz.Text:= '';
lblPrikaz.Caption:= '';
edtTavba.Text:= '';
edtMnoz.Value:= 0;
cbMJ.ItemIndex:= cbMJ.Items.IndexOf('ks');
edtPrikaz.SetFocus;
grd.DataSource.DataSet.Refresh;
end;
end;
procedure TformDavkyObecne.btnOKClick(Sender: TObject);
var lSQL, t: string;
idD, poz: integer;
begin
lblZapisDat.Visible:= true;
Self.Repaint;
btnOK.Enabled:= false;
btnGenPrevod.Enabled:= false;
lblZapisDat.Caption:= 'Z<>pis dat do tabulky d<>vek...';
if (tbl.RecordCount>0) then
begin
tbl.First;
while not(tbl.Eof) do
begin
idD:= tbl.FieldByName('IDDavka').AsInteger;
t:= tbl.FieldByName('Tavba').AsString;
poz:= 0;
if (idD=0) then
begin
lSQL:= 'SELECT MAX(Pozice) FROM ' + tblDavky + ' WHERE DruhDavky=' + druhDavky.ToString + ' AND Rok=' + rokDavky.ToString + ' AND Cislo=' + cisloDavky.ToString;
poz:= 1 + helUtils.getHeliosIntVal(Helios, 0, lSQL);
lSQL:= 'INSERT ' + tblDavky + ' (DruhDavky, Rok, Cislo, Pozice, Tavba) VALUES (' + druhDavky.ToString + ', ' + rokDavky.ToString + ', ';
lSQL:= lSQL + cisloDavky.ToString + ', ' + poz.ToString + ', N' + QuotedStr(t) + '); SELECT SCOPE_IDENTITY()';
with Helios.OpenSQL(lSQL) do
idD:= StrToInt(VarToStr(FieldValues(0)));
end;
if (poz=0) then
poz:= helUtils.getHeliosIntVal(Helios, 1, 'SELECT Pozice FROM ' + tblDavky + ' WHERE ID=' + idD.ToString);
lSQL:= 'INSERT #TabDavkaObecna (IDDavka, IDRodic, Pozice, IDPrikaz, Mnozstvi, Tavba) SELECT ' + idD.ToString + ', ' + tbl.FieldByName('IDRodic').AsString;
lSQL:= lSQL + ', ' + poz.ToString;
lSQL:= lSQL + ', ' + tbl.FieldByName('IDPrikaz').AsString + ', ' + StringReplace(tbl.FieldByName('Mnozstvi').AsString, '', '', [rfReplaceAll]) + ', N';
lSQL:= lSQL + tbl.FieldByName('Tavba').AsString;
if (jeTest) then
lSQL:= StringReplace(lSQL, '#TabDa', 'dbo._temp_TabDa', [rfReplaceAll]);
Helios.ExecSQL(lSQL);
tbl.Next;
end;
end;
if not(jeTest) then
Helios.ExecSQL('IF OBJECT_ID(''dbo.ep_Vosk_PlanLisu_Odvod'') IS NOT NULL EXEC dbo.ep_Vosk_PlanLisu_Odvod');
lblZapisDat.Visible:= false;
Self.Repaint;
btnOK.Enabled:= true;
btnGenPrevod.Enabled:= true;
Close;
end;
procedure TformDavkyObecne.edtPrikazExit(Sender: TObject);
begin
edtPrikaz.Text:= Trim(helUtils.StripChars(edtPrikaz.Text, ['''', '"', ';']));
if (edtPrikaz.Text<>'') then
begin
idVPr:= helUtils.getHeliosIntVal(Helios, 0, 'SELECT ID FROM ' + tblPrikaz + ' WHERE RadaPrikaz=N' + QuotedStr(edtPrikaz.Text));
NactiPrikaz;
edtTavba.SetFocus;
end;
end;
procedure TformDavkyObecne.FormClose(Sender: TObject; var Action: TCloseAction);
begin
if (tbl.Active) then
tbl.Close;
action:= caFree;
end;
procedure TformDavkyObecne.FormShow(Sender: TObject);
var lSQL: string;
i: integer;
begin
DefFontData.CharSet := Helios.Charset;
DefFontData.Name := Helios.Font;
DefFontData.Height := Helios.FontHeight;
Screen.MenuFont.CharSet := DefFontData.CharSet;
Screen.MenuFont.Name := DefFontData.Name;
Screen.MenuFont.Height := DefFontData.Height;
Self.Icon.Handle:= Helios.MainApplicationIconHandle;
Self.Font.Name:= Helios.Font;
Self.Font.Height:= Helios.FontHeight;
verText:= GetFileVersion2(GetModuleName(HInstance));
if (Length(verText)=12) then
verText:= LeftStr(verText,9) + '0' + RightStr(verText,3);
bidTavby:= helUtils.getHeliosIntVal(Helios, 0, 'SELECT 100000+Cislo FROM ' + tblObecPrehled + ' WHERE NazevSys=N''hvw_TavbyPosledniData''');
{
for i:=0 to Self.ComponentCount-1 do
begin
if (Self.Components[i] is TButton) then
begin
(Self.Components[i] as TButton).Font.Name:= Helios.Font;
(Self.Components[i] as TButton).Font.Height:= Helios.FontHeight;
end;
end;
}
lSQL:= 'IF OBJECT_ID(N''dbo._temp_TabDavkaObecna'') IS NOT NULL DELETE FROM dbo._temp_TabDavkaObecna WHERE Autor=SUSER_SNAME()' + CRLF;
lSQL:= lSQL + 'IF OBJECT_ID(N''dbo._temp_TabDavkaObecna'') IS NOT NULL IF NOT EXISTS(SELECT * FROM dbo._temp_TabDavkaObecna) DROP TABLE dbo._temp_TabDavkaObecna' + CRLF;
lSQL:= lSQL + 'IF OBJECT_ID(N''tempdb..#TabDavkaObecna'') IS NOT NULL DROP TABLE #TabDavkaObecna';
Helios.ExecSQL(lSQL);
lSQL:= 'CREATE TABLE #TabDavkaObecna (IDDavka INT, IDRodic INT, Pozice INT, IDPrikaz INT, Mnozstvi NUMERIC(19,6), Tavba NVARCHAR(15), Autor NVARCHAR(80) DEFAULT SUSER_SNAME())';
if (jeTest) then
lSQL:= StringReplace(lSQL, '#TabD', 'dbo._temp_TabD', [rfReplaceAll]);
Helios.ExecSQL(lSQL);
rokDavky:= YearOf(Now);
cisloDavky:= 1;
idRodic:= helUtils.getHeliosIntVal(Helios, 0, 'SELECT IDRodic FROM ' + tblDavky + ' WHERE ID=' + id.ToString);
if (idRodic=0) and (id=0) then
begin
cisloDavky:= helUtils.getHeliosIntVal(Helios, 1, 'SELECT MAX(Cislo)+1 FROM ' + tblDavky + ' WHERE Rok=' + rokDavky.ToString + ' AND DruhDavky=' + druhDavky.ToString);
lSQL:= 'INSERT ' + tblDavky + ' (DruhDavky, Rok, Cislo, Pozice) VALUES (' + druhDavky.ToString + ', ' + rokDavky.ToString + ', ' + cisloDavky.ToString + ', 1); SELECT SCOPE_IDENTITY()';
with Helios.OpenSQL(lSQL) do
idRodic:= StrToInt(VarToStr(FieldValues(0)));
end;
if (idRodic=0) and (id>0) then
idRodic:= id;
if (idRodic>0) then
NactiDoklad;
end;
procedure TformDavkyObecne.grdViewGetCellColor(Sender: TObject; ACol, ARow: Integer; var CellColor: TColor; State: TNxCellPaintingState);
begin
if (grd.RowCount>=ARow+1) then
if (ACol=colMnozstvi.Index) then
if (grd.Cells[ACol, ARow]='0') or (grd.Cell[ACol, ARow].AsFloat>grd.Cell[colSkladem.Index, ARow].AsFloat) then
begin
CellColor:= clRed;
grd.Cell[ACol, ARow].Enabled:= true;
end
else
begin
// CellColor:= clWindow;
grd.Cell[ACol, ARow].Enabled:= false;
end;
end;
procedure TformDavkyObecne.NactiDoklad;
var lSQL: string;
cis: string;
fldIDDavka, fldIDPrikaz, fldVyrPrikaz, fldRegCis, fldNazev, fldMnozstvi, fldMJ, fldTavba: TField;
begin
if (idRodic>0) then
begin
if not(tbl.Active) then
tbl.Open;
tbl.Edit;
tbl.Clear; //Fields;
fldIDDavka:= tbl.FieldByName('IDDavka');
fldIDPrikaz:= tbl.FieldByName('IDPrikaz');
fldVyrPrikaz:= tbl.FieldByName('VyrPrikaz');
fldRegCis:= tbl.FieldByName('RegCis');
fldNazev:= tbl.FieldByName('Nazev');
fldMnozstvi:= tbl.FieldByName('Mnozstvi');
fldMJ:= tbl.FieldByName('MJ');
lblDavka.Caption:= '';
if (helUtils.HeliosExistsTest(Helios, tblDavky, 'ID=' + id.ToString + ' AND DruhDavky=4')) then
begin
cis:= helUtils.getHeliosStrVal(Helios, '', 'SELECT Cislo FROM ' + tblDavky + ' WHERE ID=' + id.ToString);
lblDavka.Caption:= 'D<>vka KONE<4E>N<EFBFBD> : ' + cis;
end;
lSQL:= 'SELECT ID, IDPrikaz, Pozice, Mnozstvi, MJ, Tavba FROM ' + tblDavky + ' WHERE IDRodic=' + idRodic.ToString + ' ORDER BY Pozice';
with Helios.OpenSQL(lSQL) do
if (RecordCount>0) then
begin
First;
while not(Eof) do
begin
tbl.Append;
fldIDDavka.AsString:= VarToStr(FieldValues(0));
fldIDPrikaz.AsString:= VarToStr(FieldValues(1));
fldMnozstvi.AsString:= VarToStr(FieldValues(3));
fldMJ.AsString:= VarToStr(FieldValues(4));
fldTavba.AsString:= VarToStr(FieldValues(5));
tbl.Post;
Next;
end;
tbl.RecNo:= 1;
grd.Repaint;
end;
end;
end;
procedure TformDavkyObecne.selPrikazClick(Sender: TObject);
var lSQL, podm: string;
begin
podm:= 'TabPrikaz.StavPrikazu IN (30,40,50,60)';
if (druhDavky=4) then
podm:= podm + ' AND TabPrikaz.Rada=N''223-31''';
if Helios.Prenos(bidVyrPrik, 'TabPrikaz.ID', oVar, podm, 'Vyberte p<><70>kaz do d<>vky', true) then
begin
idVPr:= VarToStr(oVar).ToInteger;
NactiPrikaz;
edtPrikaz.Text:= helUtils.getHeliosStrVal(Helios, '', 'SELECT RadaPrikaz FROM ' + tblPrikaz + ' WHERE ID=' + idVPr.ToString);
edtTavba.SetFocus;
end;
end;
procedure TformDavkyObecne.selTavbaClick(Sender: TObject);
begin
// oVar:= helUtils.getHeliosIntVal(Helios, 'SELECT ID FROM ' + tblTavby + ' WHERE CisloTavby=N' + QuotedStr(edtTavba.Text));
oVar:= edtTavba.Text;
if Helios.Prenos(bidTavby, 'hvw_TavbyPosledniData.CisloTavby', oVar, '', 'Vyberte tavbu', true) then
edtTavba.Text:= VarToStr(oVar);
edtMnoz.SetFocus;
end;
end.

3089
frmEvidOper.dfm Normal file

File diff suppressed because it is too large Load Diff

1262
frmEvidOper.pas Normal file

File diff suppressed because it is too large Load Diff

199
frmGenPolos.dfm Normal file
View File

@ -0,0 +1,199 @@
object formGenPolos: TformGenPolos
Left = 0
Top = 0
BorderIcons = [biSystemMenu]
BorderStyle = bsSingle
Caption = ' Generov'#225'n'#237' polosestav'
ClientHeight = 582
ClientWidth = 559
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -19
Font.Name = 'Tahoma'
Font.Style = []
OldCreateOrder = False
Position = poMainFormCenter
OnClose = FormClose
OnShow = FormShow
PixelsPerInch = 96
TextHeight = 23
object Label1: TLabel
Left = 482
Top = 13
Width = 32
Height = 23
Caption = 'VPC'
end
object Label2: TLabel
Left = 161
Top = 122
Width = 170
Height = 23
Caption = '(reg.'#269'. pro P43-P11)'
end
object sGrid: TrStringGridEd
Left = 0
Top = 168
Width = 541
Height = 357
ColCount = 4
DefaultColWidth = 90
DefaultRowHeight = 26
DefaultDrawing = False
FixedColor = clGradientActiveCaption
FixedCols = 0
RowCount = 10
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -19
Font.Name = 'Tahoma'
Font.Style = []
Options = [goFixedVertLine, goFixedHorzLine, goVertLine, goHorzLine, goEditing]
ParentFont = False
ScrollBars = ssVertical
TabOrder = 4
OptionsEx = [dgAlwaysShowSelection, dgShowTitleBold]
Columns = <
item
ButtonStyle = sgbCheckbox
DataType = sgdInteger
MaxValue = 1.000000000000000000
Alignment = taCenter
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
TitleCaption = 'Gen ?'
TitleAlignment = taCenter
end
item
Alignment = taCenter
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -17
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
ReadOnly = True
TitleCaption = 'SZ'
TitleAlignment = taCenter
end
item
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -17
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
ReadOnly = True
TitleCaption = 'Skupina zbo'#382#237
TitleAlignment = taCenter
end
item
DataType = sgdNumber
MinValue = 100000.000000000000000000
Alignment = taCenter
TitleCaption = 'VPC'
TitleAlignment = taCenter
end>
TitleRowHeight = 25
ColWidths = (
68
59
326
75)
RowHeights = (
25
26
26
26
26
26
26
26
26
26)
end
object edtRegCis: TLabeledEdit
Left = 9
Top = 38
Width = 121
Height = 31
Color = clGradientInactiveCaption
EditLabel.Width = 67
EditLabel.Height = 23
EditLabel.Caption = 'V'#253'robek'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -19
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
ReadOnly = True
TabOrder = 0
end
object edtNazev: TEdit
Left = 136
Top = 38
Width = 306
Height = 31
Color = clGradientInactiveCaption
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -19
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
ReadOnly = True
TabOrder = 1
end
object btnGen: TButton
Left = 105
Top = 538
Width = 194
Height = 33
Caption = 'Generuj /Aktualizuj'
TabOrder = 3
OnClick = btnGenClick
end
object btnStorno: TButton
Left = 356
Top = 538
Width = 97
Height = 33
Caption = 'Storno'
TabOrder = 2
OnClick = btnStornoClick
end
object edtVPC: TrEditNum
Left = 456
Top = 38
Width = 79
Height = 31
Alignment = taCenter
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -19
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
TabOrder = 5
Style = enFloat
MaxValue = 100000.000000000000000000
end
object edtOdlitek: TLabeledEdit
Left = 8
Top = 119
Width = 147
Height = 31
EditLabel.Width = 267
EditLabel.Height = 23
EditLabel.Caption = #268#237'slo odlitku (v p'#345#237'pad'#283' pot'#345'eby)'
MaxLength = 12
TabOrder = 6
OnExit = edtOdlitekExit
end
end

294
frmGenPolos.pas Normal file
View File

@ -0,0 +1,294 @@
unit frmGenPolos;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.Mask, Vcl.ExtCtrls, Vcl.Grids, rStringGridEd,
rImprovedComps, ddPlugin_TLB;
const
CRLF = #13#10;
type
TformGenPolos = class(TForm)
sGrid: TrStringGridEd;
edtRegCis: TLabeledEdit;
edtNazev: TEdit;
btnGen: TButton;
btnStorno: TButton;
edtVPC: TrEditNum;
Label1: TLabel;
edtOdlitek: TLabeledEdit;
Label2: TLabel;
procedure btnGenClick(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormShow(Sender: TObject);
procedure btnStornoClick(Sender: TObject);
procedure edtOdlitekExit(Sender: TObject);
private
function MamVOD: Boolean;
public
Helios: IHelios;
idKZ: integer;
genKusovnik: boolean;
end;
var
formGenPolos: TformGenPolos;
implementation
uses
System.StrUtils, helUtils;
{$R *.dfm}
function TformGenPolos.MamVOD;
var i: Integer;
begin
result:= false;
for i:=0 to sGrid.RowCount-1 do
begin
if (sGrid.IntCells[0, i]=1) then
if sGrid.StringCells[1,i]='VOD' then
result:= true;
end;
end;
procedure TformGenPolos.btnGenClick(Sender: TObject);
var i, i2, iOld, idKZn, idKZold, idKZx, idSS: integer;
lSQL, skl, sz, rc, uKod: string;
szOdlit: Boolean;
begin
idKZold:= 0;
iOld:= 0;
ReseedTable(Helios, tblKZ);
ReseedTable(Helios, tblKVaz);
ReseedTable(Helios, tblNC);
edtOdlitek.Text:= Trim(edtOdlitek.Text);
lSQL:= 'MERGE ' + tblParKZ + ' AS T USING ' + tblKZ + ' AS S ON (T.IDKmenZbozi=S.ID)';
lSQL:= lSQL + ' WHEN MATCHED AND S.ID=' + idKZ.ToString + ' AND LEFT(S.SkupZbo,1)=N''V'' THEN UPDATE SET T.TypDilce=0' + CRLF;
lSQL:= lSQL + ' WHEN NOT MATCHED BY TARGET THEN INSERT (IdKmenZbozi, TypDilce) VALUES (S.ID, 0);';
Helios.ExecSQL(lSQL);
for i:=0 to sGrid.RowCount-1 do
begin
if (sGrid.IntCells[0, i]=1) then
begin
sz:= sGrid.StringCells[1,i];
if (((sz='P43') or (sz='P51')) and (MamVOD)) then
Continue;
szOdlit:= false;
if (sz='P41') or (LeftStr(sz,2)='P3') or (LeftStr(sz,2)='P2') or (LeftStr(sz,2)='P1') then
szOdlit:= true;
rc:= Trim(edtRegCis.Text);
if (szOdlit) and (edtOdlitek.Text<>'') then
rc:= Trim(edtOdlitek.Text);
lSQL:= 'DECLARE @i INT=0' + CRLF + 'IF NOT EXISTS(SELECT id FROM ' + tblKZ + ' WHERE SkupZbo=N' + QuotedStr(sz) + ' AND RegCis=N' + QuotedStr(rc) + ')' + CRLF;
lSQL:= lSQL + ' BEGIN' + CRLF + ' INSERT ' + tblKZ + ' (SkupZbo, RegCis, Nazev1, DruhSkladu, Dilec, MJEvidence) SELECT N';
lSQL:= lSQL + QuotedStr(sz) + ', N' + QuotedStr(rc) + ', N' + QuotedStr(edtNazev.Text) + ', 1, 1, N' + QuotedStr('ks') + CRLF;
lSQL:= lSQL + ' SET @i=SCOPE_IDENTITY()' + CRLF + ' END' + CRLF + 'SELECT @i';
with Helios.OpenSQL(lSQL) do
if (RecordCount=1) and (StrToInt(VarToStr(FieldValues(0)))>0) then
begin
idKZn:= StrToInt(VarToStr(FieldValues(0)));
lSQL:= 'IF NOT EXISTS(SELECT IdKmenZbozi FROM ' + tblParKZ + ' WHERE IDKmenZbozi=' + idKZn.ToString + ') INSERT ' + tblParKZ + ' (IDKmenZbozi, TypDilce)';
lSQL:= lSQL + ' SELECT ' + idKZn.ToString + ', 1';
Helios.ExecSQL(lSQL);
lSQL:= 'SELECT sze._Sklad_1 FROM ' + tblSZ + ' sz INNER JOIN ' + tblSZe + ' sze ON (sze.Id=sz.Id) WHERE sz.SkupZbo=N' + QuotedStr(sGrid.StringCells[1,i]);
with Helios.OpenSQL(lSQL) do
if (RecordCount=1) then
begin
uKod:= '';
skl:= VarToStr(FieldValues(0));
if (skl<>'') then
begin
lSQL:= 'SELECT se._UKod FROM ' + tblStrom + ' s INNER JOIN ' + tblStromE + ' se ON (se.Id=s.Id) WHERE s.Cislo=N' + QuotedStr(skl);
with Helios.OpenSQL(lSQL) do
if (RecordCount=1) then
uKod:= VarToStr(FieldValues(0));
idSS:= 0;
with Helios.OpenSQL('SELECT id FROM ' + tblSS + ' WHERE IDSklad=N' + QuotedStr(skl) + ' AND IDKmenZbozi=' + IntToStr(idKZn)) do
if (RecordCount=1) then
idSS:= StrToInt(VarToStr(FieldValues(0)));
if (idSS=0) then
with Helios.OpenSQL('INSERT ' + tblSS + ' (IDSklad, IDKmenZbozi) SELECT N' + QuotedStr(skl) + ', ' + IntToStr(idKZn) + CRLF + 'SELECT SCOPE_IDENTITY()') do
if (RecordCount=1) then
idSS:= StrToInt(VarToStr(FieldValues(0)));
if (idSS>0) and (uKod<>'') then
Helios.ExecSQL('UPDATE ' + tblSS + ' SET UKod=' + uKod + ' WHERE Id=' + IntToStr(idSS));
end;
end;
lSQL:= 'SELECT sze._Sklad_2 FROM ' + tblSZ + ' sz INNER JOIN ' + tblSZe + ' sze ON (sze.Id=sz.Id) WHERE sz.SkupZbo=N' + QuotedStr(sz);
with Helios.OpenSQL(lSQL) do
if (RecordCount=1) then
begin
uKod:= '';
skl:= VarToStr(FieldValues(0));
if (skl<>'') then
begin
lSQL:= 'SELECT se._UKod FROM ' + tblStrom + ' s INNER JOIN ' + tblStromE + ' se ON (se.Id=s.Id) WHERE s.Cislo=N' + QuotedStr(skl);
with Helios.OpenSQL(lSQL) do
if (RecordCount=1) then
uKod:= VarToStr(FieldValues(0));
idSS:= 0;
with Helios.OpenSQL('SELECT id FROM ' + tblSS + ' WHERE IDSklad=N' + QuotedStr(skl) + ' AND IDKmenZbozi=' + IntToStr(idKZn)) do
if (RecordCount=1) then
idSS:= StrToInt(VarToStr(FieldValues(0)));
if (idSS=0) then
with Helios.OpenSQL('INSERT ' + tblSS + ' (IDSklad, IDKmenZbozi) SELECT N' + QuotedStr(skl) + ', ' + IntToStr(idKZn) + CRLF + 'SELECT SCOPE_IDENTITY()') do
if (RecordCount=1) then
idSS:= StrToInt(VarToStr(FieldValues(0)));
if (idSS>0) and (uKod<>'') then
Helios.ExecSQL('UPDATE ' + tblSS + ' SET UKod=' + uKod + ' WHERE Id=' + IntToStr(idSS));
end;
end;
if (genKusovnik) then
begin
if (idKZold>0) and (iOld=i-1) then
begin
lSQL:= 'IF NOT EXISTS(SELECT id FROM ' + tblKVaz + ' WHERE IDVarianta IS NULL AND vyssi=' + IntToStr(idKZn) + ' AND nizsi=' + IntToStr(idKZold) + ') ';
lSQL:= lSQL + 'INSERT ' + tblKVaz + ' (ZmenaOd, vyssi, nizsi, mnozstvi, mnozstviSeZtratou, Prirez) SELECT TOP(1) ID, ' + IntToStr(idKZn);
lSQL:= lSQL + ', ' + IntToStr(idKZold) + ', 1, 1, 1 FROM ' + tblCZmen + ' WHERE Platnost=1 ORDER BY datum DESC';
Helios.ExecSQL(lSQL);
end;
end;
idKZold:= idKZn;
end;
idKZx:= helUtils.getHeliosIntVal(Helios, 0, 'SELECT id FROM ' + tblKZ + ' WHERE SkupZbo=N' + QuotedStr(sz) + ' AND RegCis=N' + QuotedStr(rc));
if (idKZx>0) then
begin
lSQL:= 'UPDATE ' + tblNC + ' SET CenaKC=' + StringReplace(FloatToStr(sGrid.NumCells[3, i]),',','.',[rfReplaceAll]);
lSQL:= lSQL + ' WHERE CenovaUroven=1000 AND IdKmenZbozi=' + IntToStr(idKZx) + '; IF (@@ROWCOUNT=0) INSERT ' + tblNC;
lSQL:= lSQL + ' (CenovaUroven, IDKmenZbozi, CenaKC, BezDPH) SELECT 1000, ' + IntToStr(idKZx) + ', ';
lSQL:= lSQL + StringReplace(FloatToStr(sGrid.NumCells[3, i]),',','.',[rfReplaceAll]) + ', N' + QuotedStr('A');
Helios.ExecSQL(lSQL);
end;
iOld:= i;
end;
end;
lSQL:= 'UPDATE ' + tblNC + ' SET CenaKC=' + StringReplace(edtVPC.Value.ToString, ',', '.', [rfReplaceAll]);
lSQL:= lSQL + ' WHERE CenovaUroven=1000 AND IdKmenZbozi=' + IntToStr(idKZ) + '; IF (@@ROWCOUNT=0) INSERT ' + tblNC;
lSQL:= lSQL + ' (CenovaUroven, IDKmenZbozi, CenaKC, BezDPH) SELECT 1000, ' + IntToStr(idKZ) + ', ';
lSQL:= lSQL + StringReplace(FloatToStr(edtVPC.Value),',','.',[rfReplaceAll]) + ', N' + QuotedStr('A');
Helios.ExecSQL(lSQL);
if (genKusovnik) then
begin
if (idKZold>0) and (iOld=sGrid.RowCount-1) then
with Helios.OpenSQL('SELECT id FROM ' + tblKVaz + ' WHERE IDVarianta IS NULL AND vyssi=' + IntToStr(idKZ) + ' AND nizsi=' + IntToStr(idKZold)) do
if (RecordCount=0) then
begin
lSQL:= 'INSERT ' + tblKVaz + ' (ZmenaOd, vyssi, nizsi, mnozstvi, mnozstviSeZtratou, Prirez) SELECT TOP(1) ID, ' + IntToStr(idKZ);
lSQL:= lSQL + ', ' + IntToStr(idKZold) + ', 1, 1, 1 FROM ' + tblCZmen + ' WHERE Platnost=1 ORDER BY datum DESC';
Helios.ExecSQL(lSQL);
end;
end;
Close;
end;
procedure TformGenPolos.btnStornoClick(Sender: TObject);
begin
Close;
end;
procedure TformGenPolos.edtOdlitekExit(Sender: TObject);
var i: integer;
lSQL: string;
begin
if (edtOdlitek.Text<>'') then
begin
edtOdlitek.Text:= StringReplace(edtOdlitek.Text, ';', '', [rfReplaceAll]);
edtOdlitek.Text:= StringReplace(edtOdlitek.Text, '''', '', [rfReplaceAll]);
for i:=0 to sGrid.RowCount-1 do
begin
lSQL:= 'SELECT c.CenaKc FROM ' + tblNC + ' c INNER JOIN ' + tblKZ + ' k ON (k.ID=c.IDKmenZbozi) WHERE c.CenovaUroven=1000 AND k.SkupZbo=N';
lSQL:= lSQL + sGrid.StringCells[1, i].QuotedString + ' AND RegCis=N' + IfThen(edtOdlitek.Text<>'', edtOdlitek.Text, edtRegCis.Text).QuotedString;
lSQL:= lSQL + ' AND c.BezDPH=N''A''';
with Helios.OpenSQL(lSQL) do
if (RecordCount=1) then
sGrid.NumCells[3, i]:= StrToFloat(VarToStr(FieldValues(0)));
end;
end;
end;
procedure TformGenPolos.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action:= caFree;
end;
procedure TformGenPolos.FormShow(Sender: TObject);
var lSQL: string;
i: integer;
begin
edtVPC.Value:= 0;
edtNazev.Text:= '';
edtRegCis.Text:= '';
sGrid.RowCount:= 1;
sGrid.Canvas.Font.Size:= 14;
if (idKZ>0) then
begin
edtVPC.Value:= helUtils.getHeliosFloatVal(Helios, 0, 'SELECT CenaKC FROM ' + tblNC + ' WHERE CenovaUroven=1000 AND IdKmenZbozi=' + idKZ.ToString);
with Helios.OpenSQL('SELECT RegCis, Nazev1, SkupZbo FROM ' + tblKZ + ' WHERE Id=' + IntToStr(idKZ) + ' AND SkupZbo IN (N''VOB'',N''VOD'')') do
if (RecordCount=1) then
begin
edtRegCis.Text:= VarToStr(FieldValues(0));
edtRegCis.Text:= StringReplace(edtRegCis.Text, ';', '', [rfReplaceAll]);
edtRegCis.Text:= StringReplace(edtRegCis.Text, '''', '', [rfReplaceAll]);
edtNazev.Text:= VarToStr(FieldValues(1));
if (VarToStr(FieldValues(2))='VOD') then
edtRegCis.EditLabel.Caption:= 'Odlitek';
if (VarToStr(FieldValues(2))='VOB') then
edtRegCis.EditLabel.Caption:= 'Obrobek';
i:= 0;
lSQL:= 'SELECT SkupZbo, Nazev FROM ' + tblSZ + ' WHERE LEFT(SkupZbo,1)=N' + QuotedStr('P') + ' AND SkupZbo NOT IN (N''P10'',N''P20'', N''P30'', N''P42''';
lSQL:= lSQL + ', N''PNA'', N''PDZ'', N''POD'') ORDER BY SkupZbo';
with Helios.OpenSQL(lSQL) do
begin
sGrid.RowCount:= RecordCount;
while not(EOF) do
begin
sGrid.StringCells[1, i]:= VarToStr(FieldValues(0));
sGrid.StringCells[2, i]:= VarToStr(FieldValues(1));
with Helios.OpenSQL('SELECT id FROM ' + tblKZ + ' WHERE RegCis=N' + QuotedStr(edtRegCis.Text) + ' AND SkupZbo=N' + QuotedStr(sGrid.StringCells[1, i])) do
if (RecordCount=0) then
sGrid.IntCells[0, i]:= 1
else
sGrid.IntCells[0, i]:= 0;
lSQL:= 'SELECT c.CenaKc FROM ' + tblNC + ' c INNER JOIN ' + tblKZ + ' k ON (k.ID=c.IDKmenZbozi) WHERE c.CenovaUroven=1000 AND k.SkupZbo=N';
lSQL:= lSQL + sGrid.StringCells[1, i].QuotedString + ' AND RegCis=N' + IfThen(edtOdlitek.Text<>'', edtOdlitek.Text, edtRegCis.Text).QuotedString;
lSQL:= lSQL + ' AND c.BezDPH=N''A''';
with Helios.OpenSQL(lSQL) do
if (RecordCount=1) then
sGrid.NumCells[3, i]:= StrToFloat(VarToStr(FieldValues(0)));
Inc(i);
Next;
end;
end;
end;
end;
end;
end.

269
frmGenTPV.dfm Normal file
View File

@ -0,0 +1,269 @@
object formGenTPV: TformGenTPV
Left = 0
Top = 0
BorderIcons = [biSystemMenu]
BorderStyle = bsSingle
Caption = ' Generuj karty + TPV'
ClientHeight = 397
ClientWidth = 644
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -16
Font.Name = 'Tahoma'
Font.Style = []
Position = poOwnerFormCenter
OnClose = FormClose
OnShow = FormShow
TextHeight = 19
object Label1: TLabel
Left = 127
Top = 58
Width = 44
Height = 19
Caption = #268'.org.'
end
object Label2: TLabel
Left = 23
Top = 181
Width = 96
Height = 19
Caption = 'N'#225'zev / popis'
end
object Label3: TLabel
Left = 204
Top = 58
Width = 44
Height = 19
Caption = 'Pozice'
end
object Label4: TLabel
Left = 271
Top = 58
Width = 55
Height = 19
Caption = 'Materi'#225'l'
end
object Label6: TLabel
Left = 23
Top = 293
Width = 155
Height = 19
Caption = 'Vzor pro operace TPV'
end
object lblVzorTPV: TLabel
Left = 218
Top = 316
Width = 396
Height = 19
AutoSize = False
end
object Label7: TLabel
Left = 359
Top = 58
Width = 86
Height = 19
Caption = 'Technologie'
end
object Label16: TLabel
Left = 472
Top = 58
Width = 49
Height = 19
Caption = '1. obal'
end
object Label5: TLabel
Left = 23
Top = 58
Width = 56
Height = 19
Caption = 'Skupina'
end
object Label8: TLabel
Left = 59
Top = 114
Width = 63
Height = 19
Caption = 'P51/VOx'
end
object Label9: TLabel
Left = 59
Top = 146
Width = 60
Height = 19
Caption = 'P11-P43'
end
object edtNazev: TEdit
Left = 23
Top = 203
Width = 591
Height = 27
MaxLength = 100
TabOrder = 8
end
object edtCisOrg: TComboEdit
Left = 127
Top = 79
Width = 71
Height = 27
Alignment = taCenter
ClickKey = 16397
GlyphKind = gkEllipsis
MaxLength = 4
NumGlyphs = 1
ParentShowHint = False
ShowHint = True
TabOrder = 1
Text = ''
OnButtonClick = edtCisOrgButtonClick
OnExit = edtCisOrgExit
end
object edtPozice: TEdit
Left = 204
Top = 79
Width = 59
Height = 27
Alignment = taCenter
MaxLength = 3
TabOrder = 2
OnExit = edtPoziceExit
end
object edtMat: TComboEdit
Left = 271
Top = 79
Width = 59
Height = 27
Alignment = taCenter
ClickKey = 16397
GlyphKind = gkEllipsis
MaxLength = 2
NumGlyphs = 1
ParentShowHint = False
ShowHint = True
TabOrder = 3
Text = ''
OnButtonClick = edtMatButtonClick
OnExit = edtMatExit
end
object edtVzorTPV: TComboEdit
Left = 23
Top = 313
Width = 179
Height = 27
ClickKey = 16397
GlyphKind = gkEllipsis
MaxLength = 15
NumGlyphs = 1
ParentShowHint = False
ShowHint = True
TabOrder = 10
Text = ''
OnButtonClick = edtVzorTPVButtonClick
end
object btnOK: TButton
Left = 397
Top = 356
Width = 97
Height = 31
Caption = 'Generuj'
TabOrder = 11
OnClick = btnOKClick
end
object btnStorno: TButton
Left = 517
Top = 356
Width = 97
Height = 31
Caption = 'Storno'
TabOrder = 12
OnClick = btnStornoClick
end
object edtTech: TEdit
Left = 359
Top = 79
Width = 37
Height = 27
Alignment = taCenter
MaxLength = 1
TabOrder = 4
OnExit = edtTechExit
end
object cboxPrvniObal: TComboBox
Left = 472
Top = 78
Width = 115
Height = 27
Style = csDropDownList
TabOrder = 5
Items.Strings = (
''
'K'#345'emen'
'Zirkon')
end
object cboxVOD: TComboBox
Left = 23
Top = 79
Width = 65
Height = 27
Style = csDropDownList
TabOrder = 0
Items.Strings = (
'VOD'
'VOB'
'F01'
'F10'
'F11'
'F20'
'F21'
'PNA'
'POD'
'VKO'
'VS1'
'VS2')
end
object cbGenSpodek: TCheckBox
Left = 23
Top = 248
Width = 187
Height = 22
Caption = ' generovat podsestavy'
Checked = True
State = cbChecked
TabOrder = 9
end
object edtRegC: TEdit
Left = 128
Top = 111
Width = 198
Height = 27
TabOrder = 6
end
object cbRCdleFin: TCheckBox
Left = 251
Top = 248
Width = 187
Height = 22
Caption = ' reg.'#269'. P11-P43 dle fin'#225'lu'
Checked = True
State = cbChecked
TabOrder = 13
end
object edtRegCN: TEdit
Left = 128
Top = 143
Width = 198
Height = 27
TabOrder = 7
OnChange = edtRegCNChange
end
object cbNabidka: TCheckBox
Left = 23
Top = 20
Width = 110
Height = 22
Caption = ' NAB'#205'DKA'
Checked = True
State = cbChecked
TabOrder = 14
end
end

277
frmGenTPV.pas Normal file
View File

@ -0,0 +1,277 @@
unit frmGenTPV;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.Mask, RzEdit, TBPackageU, ddPlugin_TLB,
RxToolEdit, RzBtnEdt;
const
tblOdlitky = '[dbo].[_hdc_TabOdlitky]';
type
TformGenTPV = class(TForm)
edtNazev: TEdit;
edtCisOrg: TComboEdit;
Label1: TLabel;
Label2: TLabel;
edtPozice: TEdit;
Label3: TLabel;
edtMat: TComboEdit;
Label4: TLabel;
Label6: TLabel;
edtVzorTPV: TComboEdit;
lblVzorTPV: TLabel;
btnOK: TButton;
btnStorno: TButton;
edtTech: TEdit;
Label7: TLabel;
Label16: TLabel;
cboxPrvniObal: TComboBox;
cboxVOD: TComboBox;
Label5: TLabel;
cbGenSpodek: TCheckBox;
edtRegC: TEdit;
cbRCdleFin: TCheckBox;
Label8: TLabel;
Label9: TLabel;
edtRegCN: TEdit;
cbNabidka: TCheckBox;
procedure FormShow(Sender: TObject);
procedure btnOKClick(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure btnStornoClick(Sender: TObject);
procedure edtPoziceExit(Sender: TObject);
procedure edtCisOrgExit(Sender: TObject);
procedure edtMatExit(Sender: TObject);
procedure edtCisOrgButtonClick(Sender: TObject);
procedure edtMatButtonClick(Sender: TObject);
procedure edtVzorTPVButtonClick(Sender: TObject);
procedure edtTechExit(Sender: TObject);
procedure edtRegCNChange(Sender: TObject);
private
function Testy: string; safecall;
public
Helios: IHelios;
idKZrodic: integer;
jeTest: boolean;
end;
var
formGenTPV: TformGenTPV;
oVar: OleVariant;
skl, tech: string;
implementation
uses System.StrUtils, helUtils;
{$R *.dfm}
function TformGenTPV.Testy;
begin
result:= '';
edtRegC.Text:= Trim(edtRegC.Text);
edtMat.Text:= Trim(edtMat.Text);
edtNazev.Text:= Trim(edtNazev.Text);
edtPozice.Text:= Trim(edtPozice.Text);
if (edtPozice.Text='') then
result:= 'Nen<65> vypln<6C>na pozice.';
if (edtRegC.Text='') and (result='') then
result:= 'Nen<65> vypln<6C>no nov<6F> Registra<72>n<EFBFBD> <20><>slo';
if (cBoxVOD.Text='') and (result='') then
result:= 'Nen<65> vybr<62>na fin<69>ln<6C> Skupina karet';
end;
procedure TformGenTPV.btnOKClick(Sender: TObject);
var lSQL, nSZ, nRC, x, xx: string;
idKZ, idKZsub: integer;
genVob, genVod: Boolean;
i: integer;
begin
lSQL:= Testy;
if (lSQL='') then
begin
waitStart(self, 'Generov<6F>n<EFBFBD> karet...', 1, $0000FF );
x:= '';
lSQL:= 'IF OBJECT_ID(N''dbo._temp_TabGenKartySTPV'') IS NOT NULL DELETE FROM dbo._temp_TabGenKartySTPV WHERE Autor=SUSER_SNAME()' + CRLF;
lSQL:= lSQL + 'IF OBJECT_ID(N''dbo._temp_TabGenKartySTPV'') IS NOT NULL IF NOT EXISTS(SELECT * FROM dbo._temp_TabGenKartySTPV)';
lSQL:= lSQL + ' DROP TABLE dbo._temp_TabGenKartySTPV' + CRLF + 'DROP TABLE IF EXISTS #TabGenKartySTPV';
Helios.ExecSQL(lSQL);
lSQL:= 'CREATE TABLE #TabGenKartySTPV (RegCis NVARCHAR(30) NOT NULL, RegCisNizsi NVARCHAR(30), Nazev NVARCHAR(100) DEFAULT N'''', Technologie NCHAR(5) NOT NULL';
lSQL:= lSQL + ', PrvniObal TINYINT NOT NULL, VzorCisloKarty NVARCHAR(33) NOT NULL, Sklad NVARCHAR(30), SkupZbo NVARCHAR(3) NOT NULL DEFAULT N'''', GenPxx BIT DEFAULT 1';
lSQL:= lSQL + ', RCPxxFin BIT DEFAULT 1, KodMat NVARCHAR(5) DEFAULT N'''', Autor NVARCHAR(80) NOT NULL DEFAULT SUSER_SNAME())' + CRLF;
lSQL:= lSQL + 'INSERT #TabGenKartySTPV (RegCis, RegCisNizsi, Nazev, Technologie, PrvniObal, VzorCisloKarty, SkupZbo, GenPxx, RCPxxFin, Sklad, KodMat) SELECT N';
lSQL:= lSQL + edtRegC.Text.QuotedString + ', N' + edtRegCN.Text.QuotedString + ', N' + edtNazev.Text.QuotedString + ', N' + edtTech.Text.QuotedString + ', ';
lSQL:= lSQL + cboxPrvniObal.ItemIndex.ToString + ', N' + edtVzorTPV.Text.QuotedString + ', N' + cboxVOD.Text.QuotedString + ', ' + IfThen(cbGenSpodek.Checked, '1', '0');
lSQL:= lSQL + ', ' + IfThen(cbRCdleFin.Checked, '1', '0');
for i:=0 to Helios.QueryBrowse.FieldCount-1 do
begin
xx:= Helios.QueryBrowse.Fields(i).FieldName;
if (xx='IDSklad') then
x:= VarToStr(Helios.QueryBrowse.FieldByNameValues('IDSklad'));
end;
lSQL:= lSQL + ', ' + IfThen(x='', 'NULL', 'N' + x.QuotedString);
lSQL:= lSQL + ', N' + IfThen(edtMat.Text='', 'ULL', edtMat.Text.QuotedString);
try
if (jeTest) then
lSQL:= StringReplace(lSQL, '#TabGenKar', 'dbo._temp_TabGenKar', [rfReplaceAll]);
Helios.ExecSQL(lSQL);
if not(jeTest) then
Helios.ExecSQL('IF OBJECT_ID(N''dbo.ep_TPV_GenKarty'') IS NOT NULL EXEC dbo.ep_TPV_GenKarty');
Close;
except on E:Exception do
begin
waitEnd;
Helios.Error(#1 + 'CHYBA: ' + #1 + E.Message);
end;
end;
waitEnd;
end
else
Helios.Error(#1 + 'CHYBA: ' + #1 + lSQL);
end;
procedure TformGenTPV.btnStornoClick(Sender: TObject);
begin
Close;
end;
procedure TformGenTPV.edtCisOrgButtonClick(Sender: TObject);
begin
edtCisOrg.Text:= Trim(edtCisOrg.Text);
oVar:= edtCisOrg.Text;
if Helios.Prenos(bidCisOrg, 'TabCisOrg.CisloOrg', oVar, 'TabCisOrg.CisloOrg>0', 'Vyberte z<>kazn<7A>ka', true) then
edtCisOrg.Text:= Trim(VarToStr(oVar));
end;
procedure TformGenTPV.edtCisOrgExit(Sender: TObject);
begin
edtRegC.Text:= edtCisOrg.Text + edtPozice.Text + edtMat.Text;
end;
procedure TformGenTPV.edtMatButtonClick(Sender: TObject);
begin
edtMat.Text:= Trim(edtMat.Text);
oVar:= edtMat.Text;
if Helios.Prenos(100052, 'hvw_Material.Kod', oVar, '', 'Vyberte materi<72>l', true) then
edtMat.Text:= Trim(VarToStr(oVar));
edtRegC.Text:= edtCisOrg.Text + edtPozice.Text + edtMat.Text;
end;
procedure TformGenTPV.edtMatExit(Sender: TObject);
begin
edtMat.Text:= Trim(edtMat.Text);
edtRegC.Text:= edtCisOrg.Text + edtPozice.Text + edtMat.Text;
end;
procedure TformGenTPV.edtPoziceExit(Sender: TObject);
begin
edtPozice.Text:= Trim(StringReplace(edtPozice.Text, ' ', '', [rfReplaceAll]));
edtPozice.Text:= StringOfChar('0', 3-Length(edtPozice.Text)) + edtPozice.Text;
edtRegC.Text:= edtCisOrg.Text + edtPozice.Text + edtMat.Text;
end;
procedure TformGenTPV.edtRegCNChange(Sender: TObject);
begin
if (edtRegCN.Text<>'') and (cbRCdleFin.Enabled) then
begin
cbRCdleFin.Enabled:= false;
cbRCdleFin.Checked:= false;
end;
if (edtRegCN.Text='') and (cbRCdleFin.Enabled=false) then
cbRCdleFin.Enabled:= true;
end;
procedure TformGenTPV.edtTechExit (Sender: TObject);
begin
if (edtTech.Text<>tech) then
Helios.Error(#1'Zadan<61> technologie nen<65> stejn<6A> jako m<> vzorov<6F> karta.' + CRLF + '(vzor m<> ' + tech + ')');
end;
procedure TformGenTPV.edtVzorTPVButtonClick (Sender: TObject);
var podm, rc, tech: string;
begin
podm:= 'TabKmenZbozi.dilec=1 AND TabKmenZbozi.SkupZbo=N' + QuotedStr(cboxVOD.Text);
if (idKZrodic>0) then
oVar:= helUtils.getHeliosStrVal(Helios, '', 'SELECT CisloZbozi FROM ' + tblKZ + ' WHERE ID=' + idKZrodic.ToString);
if Helios.Prenos(bidDilce, 'TabKmenZbozi.CisloZbozi', oVar, podm, 'Vzorov<6F> karta', true) then
begin
edtVzorTPV.Text:= VarToStr(oVar);
rc:= MidStr(edtVzorTPV.Text, 4, 50);
tech:= helUtils.getHeliosStrVal(Helios, '', 'SELECT DruhTechnologie FROM ' + tblOdlitky + ' WHERE Odlitek=N' + QuotedStr(rc));
if (edtTech.Text<>'0') then
if (edtTech.Text<>tech) then
if not Helios.YesNo(#1'Vybran<61> vzor nem<65> stejnou technologii jako nov<6F> vytv<74><76>en<65> karta.' + CRLF + 'P<>esto pokra<72>ovat ?'#1, false) then
edtVzorTPV.Text:= '';
lblVzorTPV.Caption:= helUtils.getHeliosStrVal(Helios, '', 'SELECT Nazev1 FROM ' + tblKZ + ' WHERE CisloZbozi=N' + QuotedStr(edtVzorTPV.Text));
end;
end;
procedure TformGenTPV.FormClose(Sender: TObject; var Action: TCloseAction);
begin
action:= caFree;
end;
procedure TformGenTPV.FormShow(Sender: TObject);
var lSQL, rc: string;
i: integer;
begin
self.Icon.Handle:= Helios.MainApplicationIconHandle;
// self.ParentWindow:= Helios.MainApplicationHandle;
for i:=0 to Self.ComponentCount-1 do
begin
if (Self.Components[i] is TButton) then
begin
(Self.Components[i] as TButton).Font.Name:= Helios.Font;
(Self.Components[i] as TButton).Font.Height:= Helios.FontHeight;
end;
end;
cboxPrvniObal.ItemIndex:= 0;
if (idKZrodic>0) then
begin
edtVzorTPV.Text:= helUtils.getHeliosStrVal(Helios, '', 'SELECT CisloZbozi FROM ' + tblKZ + ' WHERE ID=' + idKZRodic.ToString);
rc:= MidStr(edtVzorTPV.Text, 4, 50);
cboxVOD.ItemIndex:= cboxVOD.Items.IndexOf(LeftStr(edtVzorTPV.Text,3));
tech:= helUtils.getHeliosStrVal(Helios, '', 'SELECT DruhTechnologie FROM ' + tblOdlitky + ' WHERE Odlitek=N' + QuotedStr(rc));
if (helUtils.HeliosExistsTest(Helios, tblOdlitky, 'ISNULL(MatecniOdlitek,N'''')<>N''''')) then
begin
lSQL:= 'SELECT ISNULL(o1.DruhTechnologie, o.DruhTechnologie) FROM ' + tblOdlitky + ' o INNER JOIN ' + tblOdlitky;
lSQL:= lSQL + ' o1 ON (o1.Odlitek=o.MatecniOdlitek) WHERE o.Odlitek=N' + rc.QuotedString;
if (helUtils.getHeliosStrVal(Helios, '', lSQL)<>'') then
tech:= helUtils.getHeliosStrVal(Helios, '', lSQL);
end;
lblVzorTPV.Caption:= helUtils.getHeliosStrVal(Helios, '', 'SELECT Nazev1 FROM ' + tblKZ + ' WHERE CisloZbozi=N' + QuotedStr(edtVzorTPV.Text));
edtCisOrg.SetFocus;
end;
end;
end.

1592
frmHrOdvOper.dfm Normal file

File diff suppressed because it is too large Load Diff

2052
frmHrOdvOper.pas Normal file

File diff suppressed because it is too large Load Diff

53
frmHrOdvOperZmetky.dfm Normal file
View File

@ -0,0 +1,53 @@
object formHrOdvOperZmetky: TformHrOdvOperZmetky
Left = 0
Top = 0
BorderIcons = [biSystemMenu]
BorderStyle = bsSingle
Caption = ' ZMETKY'
ClientHeight = 198
ClientWidth = 596
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -27
Font.Name = 'Tahoma'
Font.Style = []
OldCreateOrder = False
Position = poOwnerFormCenter
OnClose = FormClose
OnShow = FormShow
PixelsPerInch = 96
TextHeight = 33
object Label1: TLabel
Left = 24
Top = 33
Width = 148
Height = 33
Caption = 'Typ zmetku:'
end
object cbTypZmetku: TComboBox
Left = 186
Top = 30
Width = 370
Height = 41
TabOrder = 0
end
object btnOK: TButton
Left = 186
Top = 117
Width = 145
Height = 47
Caption = 'OK'
TabOrder = 1
OnClick = btnOKClick
end
object btnZrus: TButton
Left = 411
Top = 117
Width = 145
Height = 47
Caption = 'Storno'
TabOrder = 2
OnClick = btnZrusClick
end
end

81
frmHrOdvOperZmetky.pas Normal file
View File

@ -0,0 +1,81 @@
unit frmHrOdvOperZmetky;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, ddPlugin_TLB;
type
TformHrOdvOperZmetky = class(TForm)
Label1: TLabel;
cbTypZmetku: TComboBox;
btnOK: TButton;
btnZrus: TButton;
procedure FormShow(Sender: TObject);
procedure btnZrusClick(Sender: TObject);
procedure btnOKClick(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
private
public
Helios: IHelios;
idZavady: integer;
end;
var
formHrOdvOperZmetky: TformHrOdvOperZmetky;
arrIdZavad: TArray<integer>;
implementation
uses helUtils;
{$R *.dfm}
procedure TformHrOdvOperZmetky.btnOKClick(Sender: TObject);
begin
idZavady:= arrIdZavad[cbTypZmetku.ItemIndex];
Close;
end;
procedure TformHrOdvOperZmetky.btnZrusClick(Sender: TObject);
begin
idZavady:= -1;
Close;
end;
procedure TformHrOdvOperZmetky.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action:= caFree;
end;
procedure TformHrOdvOperZmetky.FormShow(Sender: TObject);
var lSQL: string;
i: integer;
begin
cbTypZmetku.Clear;
lSQL:= 'SELECT TOP(3) cz.Kod, cz.Nazev, cz.ID FROM ' + tblPMZZavady + ' z INNER JOIN ' + tblCZavad + ' cz ON (cz.ID=z.IDZavady) WHERE ';
lSQL:= lSQL + 'cz.Poznamka LIKE N''%OBALOVNA%'' GROUP BY cz.Kod, cz.Nazev, cz.ID ORDER BY SUM(z.kusy_zmet_neopr) DESC';
with Helios.OpenSQL(lSQL) do
if (RecordCount>0) then
begin
i:= 0;
First;
SetLength(arrIdZavad, RecordCount);
while not(EOF) do
begin
cbTypZmetku.Items.Add(VarToStr(FieldValues(0)) + ' - ' + VarToStr(FieldValues(1)));
arrIdZavad[i]:= StrToInt(VarToStr(FieldValues(2)));
Inc(i);
Next;
end;
end;
cbTypZmetku.ItemIndex:= 0;
end;
end.

91
frmInputNum.dfm Normal file
View File

@ -0,0 +1,91 @@
object formInputNum: TformInputNum
Left = 0
Top = 0
BorderStyle = bsDialog
Caption = 'formInputNum'
ClientHeight = 294
ClientWidth = 414
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = []
OldCreateOrder = False
Position = poOwnerFormCenter
OnClose = FormClose
OnShow = FormShow
DesignSize = (
414
294)
PixelsPerInch = 96
TextHeight = 25
object lblPopis2: TLabel
Left = 68
Top = 112
Width = 82
Height = 25
Caption = 'lblPopis2'
end
object lblPopis1: TLabel
Left = 68
Top = 21
Width = 82
Height = 25
Caption = 'lblPopis1'
end
object edtNum: TEdit
Left = 68
Top = 48
Width = 277
Height = 41
Anchors = [akLeft, akTop, akRight]
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -27
Font.Name = 'Tahoma'
Font.Style = []
NumbersOnly = True
ParentFont = False
TabOrder = 0
OnKeyPress = edtNumKeyPress
end
object edtNum2: TEdit
Left = 68
Top = 141
Width = 277
Height = 41
Anchors = [akLeft, akTop, akRight]
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -27
Font.Name = 'Tahoma'
Font.Style = []
NumbersOnly = True
ParentFont = False
TabOrder = 1
OnKeyPress = edtNum2KeyPress
end
object btnOK: TButton
Left = 27
Top = 222
Width = 142
Height = 49
Anchors = [akLeft, akBottom]
Caption = 'OK'
ModalResult = 1
TabOrder = 2
OnClick = btnOKClick
end
object btnZrusit: TButton
Left = 244
Top = 222
Width = 142
Height = 49
Anchors = [akRight, akBottom]
Caption = 'Zru'#353'it'
ModalResult = 2
TabOrder = 3
OnClick = btnZrusitClick
end
end

90
frmInputNum.pas Normal file
View File

@ -0,0 +1,90 @@
unit frmInputNum;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.ExtCtrls;
type
TformInputNum = class(TForm)
edtNum: TEdit;
edtNum2: TEdit;
btnOK: TButton;
btnZrusit: TButton;
lblPopis2: TLabel;
lblPopis1: TLabel;
procedure FormShow(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure edtNumKeyPress(Sender: TObject; var Key: Char);
procedure btnOKClick(Sender: TObject);
procedure btnZrusitClick(Sender: TObject);
procedure edtNum2KeyPress(Sender: TObject; var Key: Char);
private
{ Private declarations }
public
value, value2: Extended;
edtPopis, edtPopis2, titulek: string;
end;
var
formInputNum: TformInputNum;
implementation
{$R *.dfm}
procedure TformInputNum.btnOKClick(Sender: TObject);
begin
Close;
end;
procedure TformInputNum.btnZrusitClick(Sender: TObject);
begin
Close;
end;
procedure TformInputNum.edtNum2KeyPress(Sender: TObject; var Key: Char);
begin
if (Key=#13) then
btnOKClick(Sender);
end;
procedure TformInputNum.edtNumKeyPress(Sender: TObject; var Key: Char);
begin
if (Key=#13) then
if (edtNum2.CanFocus) then
edtNum2.SetFocus;
end;
procedure TformInputNum.FormClose(Sender: TObject; var Action: TCloseAction);
begin
edtNum.Text:= Trim(edtNum.Text);
edtNum2.Text:= Trim(edtNum2.Text);
if not(TryStrToFloat(edtNum.Text, value)) then
value:= -1;
if not(TryStrToFloat(edtNum2.Text, value2)) then
value2:= -1;
Action:= caFree;
end;
procedure TformInputNum.FormShow(Sender: TObject);
begin
Self.Caption:= titulek;
lblPopis1.Caption:= edtPopis;
edtNum.Text:= '';
lblPopis2.Caption:= edtPopis2;
edtNum2.Text:= '';
edtNum.SetFocus;
end;
end.

141
frmKoopObjUprava.dfm Normal file
View File

@ -0,0 +1,141 @@
object formKoopObjUprava: TformKoopObjUprava
Left = 0
Top = 0
Caption = ' KOOPRA'#268'N'#205' OBJEDN'#193'VKA - oprava'
ClientHeight = 605
ClientWidth = 767
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -16
Font.Name = 'Segoe UI'
Font.Style = []
OnCreate = FormCreate
OnShow = FormShow
PixelsPerInch = 96
DesignSize = (
767
605)
TextHeight = 21
object GroupBox1: TGroupBox
Left = 15
Top = 21
Width = 538
Height = 89
Caption = ' Kooperant '
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -16
Font.Name = 'Segoe UI'
Font.Style = [fsBold]
ParentFont = False
TabOrder = 0
object Label1: TLabel
Left = 16
Top = 25
Width = 99
Height = 17
Caption = #268#237'slo organizace:'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -13
Font.Name = 'Segoe UI'
Font.Style = []
ParentFont = False
end
object selCisOrg: TButtonedEdit
Left = 16
Top = 45
Width = 99
Height = 25
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -13
Font.Name = 'Segoe UI'
Font.Style = []
MaxLength = 6
NumbersOnly = True
ParentFont = False
TabOrder = 0
end
object selNazevOrg: TButtonedEdit
Left = 150
Top = 45
Width = 352
Height = 25
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -13
Font.Name = 'Segoe UI'
Font.Style = []
MaxLength = 100
ParentFont = False
TabOrder = 1
end
end
object GroupBox2: TGroupBox
Left = 15
Top = 132
Width = 742
Height = 395
Anchors = [akLeft, akTop, akRight, akBottom]
Caption = ' D'#225'vky '
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -16
Font.Name = 'Segoe UI'
Font.Style = [fsBold]
ParentFont = False
TabOrder = 1
ExplicitWidth = 943
DesignSize = (
742
395)
object strGrid: TStringGrid
Left = 4
Top = 36
Width = 733
Height = 354
Anchors = [akLeft, akTop, akRight, akBottom]
DefaultRowHeight = 28
FixedCols = 0
RowCount = 15
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -16
Font.Name = 'Segoe UI'
Font.Style = []
ParentFont = False
ScrollBars = ssVertical
TabOrder = 0
ExplicitWidth = 1028
ExplicitHeight = 339
ColWidths = (
99
51
113
360
82)
end
end
object btnStorno: TButton
Left = 631
Top = 546
Width = 121
Height = 46
Anchors = [akRight, akBottom]
Caption = 'Storno'
TabOrder = 2
ExplicitLeft = 832
end
object btnOK: TButton
Left = 454
Top = 546
Width = 121
Height = 46
Anchors = [akRight, akBottom]
Caption = 'OK'
TabOrder = 3
ExplicitLeft = 655
end
end

88
frmKoopObjUprava.pas Normal file
View File

@ -0,0 +1,88 @@
unit frmKoopObjUprava;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, ddPlugin_TLB, Vcl.StdCtrls, Vcl.ExtCtrls,
Data.DB, Vcl.Grids, Vcl.DBGrids;
const
tblKoopH = '[dbo].[_hdc_TabKooperaceH]';
tblKoopD = '[dbo].[_hdc_TabKooperaceD]';
tblKoopR = '[dbo].[_hdc_TabKooperaceR]';
type
TformKoopObjUprava = class(TForm)
selCisOrg: TButtonedEdit;
Label1: TLabel;
GroupBox1: TGroupBox;
selNazevOrg: TButtonedEdit;
GroupBox2: TGroupBox;
strGrid: TStringGrid;
btnStorno: TButton;
btnOK: TButton;
procedure FormShow(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
procedure NactiData(idKoopH: integer); safecall;
public
Helios: IHelios;
idKoopH: integer;
end;
var
formKoopObjUprava: TformKoopObjUprava;
implementation
uses helUtils;
{$R *.dfm}
procedure TformKoopObjUprava.NactiData(idKoopH: Integer);
var lSQL: string;
begin
if (idKoopH>0) then
begin
lSQL:= 'SELECT o.CisloOrg, o.Nazev FROM ' + tblKoopH + ' h INNER JOIN ' + tblCOrg + ' o ON (o.CisloOrg=h.CisloOrg) WHERE h.ID=' + idKoopH.ToString;
with Helios.OpenSQL(lSQL) do
begin
First;
while not(EOF) do
begin
end;
end;
end;
end;
procedure TformKoopObjUprava.FormCreate(Sender: TObject);
begin
strGrid.Cells[0, 0]:= 'Dávka';
strGrid.ColAlignments[0]:= taCenter;
strGrid.ColWidths[0]:= 50;
strGrid.Cells[1, 0]:= 'SK';
strGrid.ColAlignments[1]:= taCenter;
strGrid.Cells[2, 0]:= 'Reg.č.';
strGrid.ColAlignments[2]:= taCenter;
end;
procedure TformKoopObjUprava.FormShow(Sender: TObject);
begin
if (idKoopH>0) then
NactiData(idKoopH);
end;
end.

238
frmOOPPohyb.dfm Normal file
View File

@ -0,0 +1,238 @@
object formOOPPohyb: TformOOPPohyb
Left = 0
Top = 0
BorderIcons = [biSystemMenu]
BorderStyle = bsSingle
Caption = ' Pohyb OOP'
ClientHeight = 562
ClientWidth = 637
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -16
Font.Name = 'Segoe UI'
Font.Style = []
Position = poOwnerFormCenter
OnShow = FormShow
TextHeight = 21
object Label5: TLabel
Left = 246
Top = 325
Width = 50
Height = 21
Caption = 'Datum:'
end
object Label6: TLabel
Left = 8
Top = 248
Width = 56
Height = 21
Caption = 'Polo'#382'ka:'
end
object Label7: TLabel
Left = 8
Top = 323
Width = 66
Height = 21
Caption = 'Mno'#382'stv'#237':'
end
object Label8: TLabel
Left = 8
Top = 374
Width = 74
Height = 21
Caption = 'Pozn'#225'mka:'
end
object GroupBox1: TGroupBox
Left = 8
Top = 8
Width = 619
Height = 219
Caption = ' Zam'#283'stnanec '
TabOrder = 0
object Label1: TLabel
Left = 18
Top = 44
Width = 56
Height = 21
Caption = 'Os.'#269#237'slo:'
end
object Label2: TLabel
Left = 140
Top = 44
Width = 111
Height = 21
Caption = 'P'#345#237'jmen'#237'/jm'#233'no:'
end
object Label3: TLabel
Left = 18
Top = 154
Width = 55
Height = 21
Caption = 'Profese:'
end
object Label4: TLabel
Left = 18
Top = 98
Width = 67
Height = 21
Caption = 'St'#345'edisko:'
end
object edtOsCislo: TRzButtonEdit
Left = 18
Top = 65
Width = 109
Height = 29
Text = ''
Alignment = taCenter
MaxLength = 6
TabOrder = 0
OnExit = edtOsCisloExit
OnKeyUp = edtOsCisloKeyUp
AltBtnNumGlyphs = 1
ButtonNumGlyphs = 1
OnButtonClick = edtOsCisloButtonClick
end
object edtPrijmJm: TRzButtonEdit
Left = 140
Top = 65
Width = 469
Height = 29
Text = ''
MaxLength = 100
TabOrder = 1
OnKeyUp = edtPrijmJmKeyUp
AltBtnNumGlyphs = 1
ButtonNumGlyphs = 1
OnButtonClick = edtPrijmJmButtonClick
end
object edtProfese: TRzButtonEdit
Left = 18
Top = 175
Width = 359
Height = 29
Text = ''
MaxLength = 100
TabOrder = 5
AltBtnNumGlyphs = 1
ButtonNumGlyphs = 1
OnButtonClick = edtProfeseButtonClick
end
object edtStredisko: TRzButtonEdit
Left = 18
Top = 119
Width = 179
Height = 29
Text = ''
Alignment = taCenter
Color = 15790320
MaxLength = 30
ReadOnly = True
ReadOnlyColor = 15790320
TabOrder = 2
AltBtnNumGlyphs = 1
ButtonNumGlyphs = 1
OnButtonClick = edtStrediskoButtonClick
end
object edtStrediskoText: TRzButtonEdit
Left = 206
Top = 119
Width = 341
Height = 29
Text = ''
Color = 15790320
MaxLength = 100
ReadOnly = True
ReadOnlyColor = 15790320
TabOrder = 3
AltBtnNumGlyphs = 1
ButtonNumGlyphs = 1
end
object edtStrediskoOld: TEdit
Left = 553
Top = 119
Width = 55
Height = 29
Alignment = taCenter
Color = 15790320
ReadOnly = True
TabOrder = 4
end
end
object edtDatum: TRzDateTimePicker
Left = 306
Top = 321
Width = 117
Height = 29
Date = 45131.000000000000000000
Format = ''
Time = 45131.000000000000000000
MinDate = 44927.000000000000000000
TabOrder = 4
end
object edtPolozka: TRzButtonEdit
Left = 8
Top = 271
Width = 109
Height = 29
Text = ''
Alignment = taCenter
MaxLength = 6
TabOrder = 1
OnEnter = edtPolozkaEnter
OnExit = edtPolozkaExit
OnKeyUp = edtPolozkaKeyUp
AltBtnNumGlyphs = 1
ButtonNumGlyphs = 1
OnButtonClick = edtPolozkaButtonClick
end
object edtPolozkaText: TRzButtonEdit
Left = 130
Top = 271
Width = 497
Height = 29
Text = ''
Color = 15790320
MaxLength = 100
ReadOnly = True
ReadOnlyColor = 15790320
TabOrder = 2
AltBtnNumGlyphs = 1
ButtonNumGlyphs = 1
end
object btnOK: TButton
Left = 121
Top = 502
Width = 141
Height = 47
Caption = 'OK'
TabOrder = 6
OnClick = btnOKClick
end
object btnStorno: TButton
Left = 374
Top = 502
Width = 141
Height = 47
Caption = 'Storno'
TabOrder = 7
OnClick = btnStornoClick
end
object edtMnoz: TNumberBox
Left = 84
Top = 321
Width = 69
Height = 29
Alignment = taCenter
TabOrder = 3
Value = 1.000000000000000000
end
object memoPozn: TMemo
Left = 88
Top = 371
Width = 528
Height = 86
MaxLength = 255
TabOrder = 5
end
end

603
frmOOPPohyb.pas Normal file
View File

@ -0,0 +1,603 @@
unit frmOOPPohyb;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.ExtCtrls, ddPlugin_TLB,
Vcl.Mask, RzEdit, RzBtnEdt, Vcl.ComCtrls, RzDTP, Vcl.NumberBox;
const
tblOOPProfese = '[dbo].[_hdc_TabOOP_Profese]';
tblOOPPolozky = '[dbo].[_hdc_TabOOP_Polozky]';
tblOOPPotrebnost = '[dbo].[_hdc_TabOOP_Potrebnost]';
tblOOPPohyby = '[dbo].[_hdc_TabOOP_Pohyby]';
tblOOPDuvod = '[dbo].[_hdc_TabOOP_Duvod]';
type
TformOOPPohyb = class(TForm)
edtOsCislo: TRzButtonEdit;
GroupBox1: TGroupBox;
Label1: TLabel;
edtPrijmJm: TRzButtonEdit;
Label2: TLabel;
Label3: TLabel;
edtProfese: TRzButtonEdit;
Label4: TLabel;
edtStredisko: TRzButtonEdit;
edtStrediskoText: TRzButtonEdit;
edtStrediskoOld: TEdit;
edtDatum: TRzDateTimePicker;
Label5: TLabel;
Label6: TLabel;
edtPolozka: TRzButtonEdit;
edtPolozkaText: TRzButtonEdit;
btnOK: TButton;
btnStorno: TButton;
edtMnoz: TNumberBox;
Label7: TLabel;
memoPozn: TMemo;
Label8: TLabel;
procedure edtOsCisloButtonClick(Sender: TObject);
procedure edtPrijmJmButtonClick(Sender: TObject);
procedure edtStrediskoButtonClick(Sender: TObject);
procedure edtProfeseButtonClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure edtOsCisloExit(Sender: TObject);
procedure btnStornoClick(Sender: TObject);
procedure edtPolozkaButtonClick(Sender: TObject);
procedure edtPolozkaExit(Sender: TObject);
procedure edtPolozkaEnter(Sender: TObject);
procedure btnOKClick(Sender: TObject);
procedure edtOsCisloKeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure edtPolozkaKeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure edtPrijmJmKeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
private
function NactiUdajeZamestnance(cisZam: integer): boolean;
function MamNarokNaPolozku(var outMsg: string): boolean;
procedure DotazNaUkonceni;
public
Helios: IHelios;
jeTest: boolean;
end;
var
formOOPPohyb: TformOOPPohyb;
bidOOPProfese, bidOOPPolozky: integer;
outMsg: string;
cisZam, idZam, idZamUser: integer;
stredisko, strediskoUser, profese, polozka, polozkaNum, stredOld: string;
idProf, idPolozka: integer;
oVar1, oVar2: OleVariant;
infoUkazano, superUserOOP: boolean;
implementation
uses System.StrUtils, System.DateUtils, System.UITypes,
helUtils;
{$R *.dfm}
procedure TaskDlgOK(titulek, nadpis, textX: string; ikona: byte);
begin
with TTaskDialog.Create(nil) do
begin
try
Caption:= titulek;
Title:= nadpis;
Text:= textX;
MainIcon:= ikona;
DefaultButton:= tcbOK;
CommonButtons:= [tcbOk];
Execute;
finally
Free;
end;
end;
end;
function TaskDlgYesNo(titulek, nadpis, textX: string; ikona: byte; defBtn: TTaskDialogCommonButton): System.UITypes.TModalResult;
begin
with TTaskDialog.Create(nil) do
begin
try
Caption:= titulek;
Title:= nadpis;
Text:= textX;
MainIcon:= ikona;
DefaultButton:= defBtn;
CommonButtons:= [tcbYes, tcbNo];
Execute;
result:= ModalResult;
finally
Free;
end;
end;
end;
procedure TformOOPPohyb.DotazNaUkonceni;
begin
if ((TaskDlgYesNo('', 'Chcete ukončit zadávání ?', '(data nebudou uložena)', tdiInformation, tcbNo))=mrYes) then
Close;
end;
function TformOOPPohyb.NactiUdajeZamestnance(cisZam: Integer): Boolean;
begin
result:= false;
if (cisZam>0) then
begin
if (helUtils.sqlExistsTestGeneral(Helios, 'SELECT 1 FROM ' + tblCisZam + ' WHERE Cislo=' + cisZam.ToString)) then
begin
idZam:= helUtils.getHeliosIntVal(Helios, 0, 'SELECT ID FROM ' + tblCisZam + ' WHERE Cislo=' + cisZam.ToString);
if (idZam>0) and (helUtils.sqlExistsTestGeneral(Helios, 'SELECT 1 FROM (VALUES(1)) t1(col1) WHERE COL_LENGTH(N' + tblCisZamE.QuotedString + ', N''_OOP_Profese'') IS NOT NULL')) then
begin
idProf:= helUtils.getHeliosIntVal(Helios, 0, 'SELECT ISNULL(_OOP_Profese, 0) FROM ' + tblCisZamE + ' WHERE ID=' + idZam.ToString);
if (idProf>0) then
begin
edtProfese.Text:= helUtils.getHeliosStrVal(Helios, '', 'SELECT Profese FROM ' + tblOOPProfese + ' WHERE ID=' + idProf.ToString);
if (edtDatum.CanFocus) then
edtDatum.SetFocus;
end
else
edtProfese.Text:= '';
end;
edtPrijmJm.Text:= helUtils.getHeliosStrVal(Helios, '', 'SELECT PrijmeniJmeno FROM ' + tblCisZam + ' WHERE Cislo=' + cisZam.ToString);
edtStredisko.Text:= helUtils.getHeliosStrVal(Helios, '', 'SELECT Stredisko FROM ' + tblCisZam + ' WHERE Cislo=' + cisZam.ToString);
edtStrediskoText.Text:= helUtils.getHeliosStrVal(Helios, '', 'SELECT Nazev FROM ' + tblStrom + ' WHERE Cislo=N' + edtStredisko.Text.QuotedString);
stredOld:= helUtils.getHeliosStrVal(Helios, '', 'SELECT TOP(1) StrediskoOld FROM ' + tblOOPProfese + ' WHERE Stredisko=N' + edtStredisko.Text.QuotedString);
edtStrediskoOld.Text:= stredOld;
result:= true;
end
end
else
begin
TaskDlgOK('POZOR', 'CHYBA', 'Uvedený zaměstnanec nebyl nalezen nebo nemáte právo jej vybrat.', tdiError);
edtOsCislo.Text:= '';
edtPrijmJm.Text:= '';
cisZam:= 0;
idZam:= 0;
end;
end;
procedure TformOOPPohyb.btnOKClick(Sender: TObject);
var lSQL: string;
begin
if (cisZam>0) and (idPolozka>0) then
begin
lSQL:= 'INSERT ' + tblOOPPohyby + ' (IDPolozky, Datum, CisloZam, Mnozstvi, Poznamka, IDProfese) SELECT ' + idPolozka.ToString + ', CONVERT(date, N'
+ edtDatum.DateTime.Format('').QuotedString + ', 104), ' + cisZam.ToString + ', ' + edtMnoz.Value.ToString + ', N' + IfThen(memoPozn.Text='', 'ULL', memoPozn.Text.QuotedString)
+ ', ' + IfThen(idProf=0, 'NULL', idProf.ToString);
Helios.ExecSQL(lSQL);
Close;
end
else
begin
TaskDlgOK('POZOR', 'CHYBA', 'Nebyly zadány všechny potřebné informace.', tdiWarning);
if (idPolozka=0) and (edtPolozka.CanFocus) then
edtPolozka.SetFocus;
if (cisZam=0) and (edtOsCislo.CanFocus) then
edtOsCislo.SetFocus;
end;
end;
procedure TformOOPPohyb.btnStornoClick(Sender: TObject);
begin
Close;
end;
procedure TformOOPPohyb.edtOsCisloButtonClick(Sender: TObject);
var c: integer;
podm: string;
begin
podm:= IfThen(superUserOOP, '', 'TabCisZam.Stredisko LIKE N' + (strediskoUser + '%').QuotedString);
podm:= podm + IfThen(podm<>'', ' AND ', '') + 'TabCisZam.ID IN (SELECT ZamestnanecID FROM ' + tblZamMzd + ' WHERE StavES=0 AND IdObdobi=(SELECT ID FROM ' + tblMzdObd + ' WHERE Rok='
+ YearOf(Now).ToString + ' AND Mesic=' + MonthOf(Now).ToString + ') AND ISNULL(DatumUkonceniPP, N''20991231'')>GETDATE() )';
if (Helios.Prenos(bidCisZam, 'TabCisZam.Cislo', oVar1, podm, 'Zaměstnanec', true)) then
begin
cisZam:= oVar1;
edtOsCislo.Text:= cisZam.ToString;
if (edtOsCislo.Text<>'') then
begin
if not(TryStrToInt(edtOsCislo.Text, c)) then
c:= 0;
cisZam:= c;
if (NactiUdajeZamestnance(cisZam)) then
if (edtProfese.CanFocus) then
edtProfese.SetFocus;
end
else
cisZam:= 0;
end;
if (edtOsCislo.Modified) then
begin
idPolozka:= 0;
edtPolozka.Text:= '';
edtPolozkaText.Text:= '';
end;
end;
procedure TformOOPPohyb.edtOsCisloExit(Sender: TObject);
var lSQL: string;
c: integer;
nulujZam: boolean;
begin
nulujZam:= true;
edtOsCislo.Text:= edtOsCislo.Text.Trim;
if (edtOsCislo.Text<>'') then
begin
nulujZam:= false;
if not(TryStrToInt(edtOsCislo.Text, c)) then
c:= 0;
cisZam:= c;
idZam:= helUtils.getHeliosIntVal(Helios, 0, 'SELECT ID FROM ' + tblCisZam + ' WHERE Cislo=' + cisZam.ToString);
if not(superUserOOP) then
if not(helUtils.sqlExistsTestGeneral(Helios, 'SELECT 1 FROM ' + tblCisZam + ' WHERE Cislo=' + cisZam.ToString + ' AND Stredisko LIKE N' + (strediskoUser + '%').QuotedString)) then
nulujZam:= true;
lSQL:= 'SELECT 1 FROM ' + tblZamMzd + ' WHERE ZamestnanecId=' + idZam.ToString + ' AND IdObdobi=(SELECT ID FROM ' + tblMzdObd + ' WHERE Rok=' + YearOf(Now).ToString
+ ' AND Mesic=' + MonthOf(Now).ToString + ') AND StavES=0 AND ISNULL(DatumUkonceniPP, N''20991231'')>GETDATE()';
if not(helUtils.sqlExistsTestGeneral(Helios, lSQL)) then
nulujZam:= true;
if (nulujZam) then
begin
cisZam:= 0;
idZam:= 0;
edtOsCislo.Text:= '';
edtPrijmJm.Text:= '';
end;
if (NactiUdajeZamestnance(cisZam)) then
if (edtProfese.CanFocus) then
edtProfese.SetFocus;
end;
if (edtOsCislo.Modified) then
begin
idPolozka:= 0;
edtPolozka.Text:= '';
edtPolozkaText.Text:= '';
end;
if (nulujZam) then
begin
cisZam:= 0;
idZam:= 0;
edtOsCislo.Text:= '';
edtPrijmJm.Text:= '';
end;
end;
procedure TformOOPPohyb.edtPrijmJmKeyUp(Sender: TObject; var Key: Word; Shift: TShiftState);
begin
if (Key=VK_ESCAPE) then
DotazNaUkonceni;
end;
procedure TformOOPPohyb.edtPolozkaKeyUp(Sender: TObject; var Key: Word; Shift: TShiftState);
begin
if (Key=VK_ESCAPE) then
DotazNaUkonceni;
end;
procedure TformOOPPohyb.edtOsCisloKeyUp(Sender: TObject; var Key: Word; Shift: TShiftState);
begin
if (Key=VK_ESCAPE) then
DotazNaUkonceni;
end;
function TformOOPPohyb.MamNarokNaPolozku(var outMsg: string): Boolean;
var lSQL, msg: string;
poslVyd: TDateTime;
duvod, zivotnostTxt: string;
b: boolean;
rozdilDnu, zivotnostDnu: integer;
begin
result:= false;
outMsg:= '';
stredisko:= edtStredisko.Text;
stredOld:= edtStrediskoOld.Text;
if (idPolozka=0) then
outMsg:= 'Nelze identifikovat ID položky'
else
if (cisZam=0) then
outMsg:= 'Není identifikován zaměstnanec'
else
begin
lSQL:= 'SELECT TOP(1) Datum FROM ' + tblOOPPohyby + ' WHERE IDPolozky=' + idPolozka.ToString + ' AND CisloZam=' + cisZam.ToString + ' ORDER BY Datum DESC';
poslVyd:= helUtils.getHeliosDateTimeVal(Helios, 0, lSQL); // default 31.12.1899 = 0
lSQL:= 'SELECT 1 FROM ' + tblOOPPotrebnost + ' WHERE IDPolozky=' + idPolozka.ToString + ' AND IDProfese=' + idProf.ToString + ' AND Stredisko=N' + stredisko.QuotedString;
if (helUtils.sqlExistsTestGeneral(Helios, lSQL)) then
begin
lSQL:= 'SELECT d.Kod FROM ' + tblOOPPotrebnost + ' p INNER JOIN ' + tblOOPDuvod + ' d ON (d.ID=p.IDDuvod) WHERE p.IDPolozky=' + idPolozka.ToString
+ ' AND p.IDProfese=' + idProf.ToString + ' AND p.Stredisko=N' + stredisko.QuotedString;
duvod:= helUtils.getHeliosStrVal(Helios, '', lSQL);
if (duvod='1') then
begin
outMsg:= 'Důvod výměny - IHNED';
result:= true;
end
else
if (duvod='Z') and (1=0) then
begin
outMsg:= 'Důvod výměny - SEZÓNNÍ POLOŽKA';
result:= true;
end
else
if (duvod='2') or (duvod='Z') then
begin
outMsg:= '';
b:= false;
lSQL:= 'SELECT (ISNULL(ZivotnostMin, 0) * CONVERT(int, CASE ISNULL(ZivotnostMinDruh, N'''') WHEN N''D'' THEN 1 WHEN N''M'' THEN 31 WHEN N''R'' THEN 365 ELSE 0 END))'
+ ' AS PocetDnu FROM ' + tblOOPPotrebnost + ' WHERE IDProfese=' + idProf.ToString + ' AND IDPolozky=' + idPolozka.ToString + ' AND Stredisko=N' + stredisko.QuotedString;
zivotnostDnu:= helUtils.getHeliosIntVal(Helios, 0, lSQL);
if (poslVyd>0) then
begin
rozdilDnu:= DaysBetween(poslVyd, edtDatum.DateTime);
if (rozdilDnu<zivotnostDnu) then
begin
if (duvod='2') then
msg:= 'POLOŽKA S MINIMÁLNÍ ŽIVOTNOSTÍ';
if (duvod='Z') then
msg:= 'SEZÓNNÍ POLOŽKA S ŽIVOTNOSTÍ';
lSQL:= 'SELECT CASE WHEN ISNULL(ZivotnostMin,0)>0 THEN CONVERT(nvarchar, ZivotnostMin) + N'' '' + ISNULL(ZivotnostMinDruh, N'''') ELSE N'''' END AS ZivotnostTxt FROM '
+ tblOOPPotrebnost + ' WHERE IDProfese=' + idProf.ToString + ' AND IDPolozky=' + idPolozka.ToString + ' AND Stredisko=N' + stredisko.QuotedString;
zivotnostTxt:= helUtils.getHeliosStrVal(Helios, '', lSQL);
if (TaskDlgYesNo('POZOR', msg, 'Dříve vydaná položka ještě nedosáhla své životnosti' + IfThen(zivotnostTxt<>'', ' (' + zivotnostTxt + ')', '')
+ CRLF + 'Chcete ji přesto vydat ?', tdiWarning, tcbNo)=mrYes) then
begin
result:= true;
btnOK.Enabled:= true;
end
else
btnOK.Enabled:= false;
{
with TTaskDialog.Create(nil) do
begin
try
lSQL:= 'SELECT CASE WHEN ISNULL(ZivotnostMin,0)>0 THEN CONVERT(nvarchar, ZivotnostMin) + N'' '' + ISNULL(ZivotnostMinDruh, N'''') ELSE N'''' END AS ZivotnostTxt FROM '
+ tblOOPPotrebnost + ' WHERE IDProfese=' + idProf.ToString + ' AND IDPolozky=' + idPolozka.ToString + ' AND Stredisko=N' + stredisko.QuotedString;
zivotnostTxt:= helUtils.getHeliosStrVal(Helios, '', lSQL);
Caption:= 'POZOR';
Title:= 'NEDODRŽENA ŽIVOTNOST';
Text:= 'Dříve vydaná položka ještě nedosáhla své životnosti' + IfThen(zivotnostTxt<>'', ' (' + zivotnostTxt + ')', '') + CRLF + 'Chcete ji přesto vydat ?';
MainIcon:= tdiWarning;
DefaultButton:= tcbNo;
CommonButtons:= [tcbYes, tcbNo];
if (Execute) then
if (ModalResult=mrYes) then
begin
result:= true;
btnOK.Enabled:= true;
end
else
btnOK.Enabled:= false;
finally
Free;
end;
end;
}
end;
end
else
begin
outMsg:= 'Položka má nastavenu minimální životnost ale nebyl dohledán předešlý výdej.';
result:= true;
btnOK.Enabled:= true;
end;
end
else
begin
outMsg:= 'V tabulce Potřebnosti nebyl dohledán důvod výdeje položky';
end;
end
else
begin
outMsg:= 'Na položku nemá zaměstnanec právo, není zadána Potřebnost';
idPolozka:= 0;
polozka:= '';
polozkaNum:= '';
edtPolozka.Text:= '';
edtPolozkaText.Text:= '';
if (edtPolozka.CanFocus) then
edtPolozka.SetFocus;
end;
end;
end;
procedure TformOOPPohyb.edtPolozkaButtonClick(Sender: TObject);
var podm: string;
begin
podm:= 'hvw_TabOOP_Polozky.ID IN (SELECT IDPolozky FROM ' + tblOOPPotrebnost + ' WHERE (StrediskoOld=N' + edtStrediskoOld.Text.QuotedString + ' OR Stredisko=N' + edtStredisko.Text.QuotedString
+ ') AND IDProfese=' + idProf.ToString + ')';
if (bidOOPPolozky>0) then
if Helios.Prenos2(bidOOPPolozky, 'hvw_TabOOP_Polozky.ID', 'hvw_TabOOP_Polozky.Cislo', oVar1, oVar2, podm, 'Položka', false, true, false, 1) then
begin
idPolozka:= oVar1;
polozkaNum:= VarToStr(oVar2);
edtPolozka.Text:= polozkaNum;
if (LeftStr(polozkaNum,2)='N''') and (RightStr(polozkaNum,1)='''') then
begin
polozkaNum:= polozkaNum.Substring(2, 255);
polozkaNum:= polozkaNum.Substring(0, Length(polozkaNum)-1);
end;
edtPolozkaExit(Sender);
end;
end;
procedure TformOOPPohyb.edtPolozkaEnter(Sender: TObject);
begin
infoUkazano:= false;
end;
procedure TformOOPPohyb.edtPolozkaExit(Sender: TObject);
begin
edtPolozka.Text:= edtPolozka.Text.Trim;
if (edtPolozka.Text<>'') then
begin
if not(TryStrToInt(edtPolozka.Text, idPolozka)) then
idPolozka:= 0;
edtPolozkaText.Text:= helUtils.getHeliosStrVal(Helios, '', 'SELECT Nazev FROM ' + tblOOPPolozky + ' WHERE ID=' + idPolozka.ToString);
polozkaNum:= helUtils.getHeliosStrVal(Helios, '', 'SELECT Cislo FROM ' + tblOOPPolozky + ' WHERE ID=' + idPolozka.ToString);
polozka:= edtPolozkaText.Text;
if not(MamNarokNaPolozku(outMsg)) then
begin
btnOK.Enabled:= false;
edtPolozka.Text:= '';
edtPolozkaText.Text:= '';
idPolozka:= 0;
polozka:= '';
if (outMsg<>'') and not(infoUkazano) then
begin
TaskDlgOK('POZOR', 'CHYBA', outMsg, tdiWarning);
infoUkazano:= true;
outMsg:= '';
end;
end
else
begin
btnOK.Enabled:= true;
if (outMsg<>'') and not(infoUkazano) then
begin
TaskDlgOK('POZOR', 'INFORMACE', outMsg, tdiWarning);
infoUkazano:= true;
outMsg:= '';
end;
end;
end;
end;
procedure TformOOPPohyb.edtPrijmJmButtonClick(Sender: TObject);
var c: integer;
begin
if Helios.Prenos2(bidCisZam, 'TabCisZam.Cislo', 'TabCisZam.PrijmeniJmeno', oVar1, oVar2, '', 'Zaměstnanec', false, true, false, 1) then
begin
cisZam:= oVar1;
edtOsCislo.Text:= cisZam.ToString;
if not(TryStrToInt(edtOsCislo.Text, c)) then
c:= 0;
cisZam:= c;
if (NactiUdajeZamestnance(cisZam)) then
if (edtProfese.CanFocus) then
edtProfese.SetFocus;
end;
end;
procedure TformOOPPohyb.edtProfeseButtonClick(Sender: TObject);
var lSQL, podm: string;
c: integer;
begin
podm:= 'hvw_TabOOP_Profese.StrediskoOld=N' + stredOld.QuotedString;
if (bidOOPProfese>0) then
if Helios.Prenos2(bidOOPProfese, 'hvw_TabOOP_Profese.ID', 'hvw_TabOOP_Profese.Profese', oVar1, oVar2, podm, 'Profese', false, true, false, 1) then
begin
if not(TryStrToInt(VarToStr(oVar1), c)) then
c:= 0;
idProf:= c;
// pokud existuje ext.sloupec, profesi uloz
if (idZam>0) and (helUtils.sqlExistsTestGeneral(Helios, 'SELECT 1 FROM (VALUES(1)) t1(col1) WHERE COL_LENGTH(N' + tblCisZamE.QuotedString + ', N''_OOP_Profese'') IS NOT NULL')) then
begin
lSQL:= 'UPDATE ' + tblCisZamE + ' SET _OOP_Profese=' + IfThen(idProf=0, 'NULL', idProf.ToString) + ' WHERE ID=' + idZam.ToString + CRLF;
if (idProf>0) then
lSQL:= lSQL + 'IF (@@ROWCOUNT=0) INSERT ' + tblCisZamE + ' (ID, _OOP_Profese) SELECT ' + idZam.ToString + ', ' + idProf.ToString;
Helios.ExecSQL(lSQL);
end;
profese:= VarToStr(oVar2);
if (LeftStr(profese,2)='N''') and (RightStr(profese,1)='''') then
begin
profese:= profese.Substring(2, 255);
profese:= profese.Substring(0, Length(profese)-1);
end;
edtProfese.Text:= profese;
if (edtDatum.CanFocus) then
edtDatum.SetFocus;
end;
end;
procedure TformOOPPohyb.edtStrediskoButtonClick(Sender: TObject);
begin
if (Helios.Prenos(bidCisZam, 'TabCisZam.Cislo', oVar1, '', 'Zaměstnanec', true)) then
begin
stredisko:= VarToStr(oVar1);
edtStredisko.Text:= stredisko;
edtStrediskoText.Text:= helUtils.getHeliosStrVal(Helios, '', 'SELECT Nazev FROM ' + tblStrom + ' WHERE Cislo=N' + edtStredisko.Text.QuotedString);
stredOld:= helUtils.getHeliosStrVal(Helios, '', 'SELECT TOP(1) StrediskoOld FROM ' + tblOOPProfese + ' WHERE Stredisko=N' + edtStredisko.Text.QuotedString);
edtStrediskoOld.Text:= stredOld;
end;
end;
procedure TformOOPPohyb.FormShow(Sender: TObject);
begin
bidOOPProfese:= helUtils.getHeliosIntVal(Helios, 0, 'SELECT DPBID FROM ' + tblObecPrehled + ' WHERE NazevSys=N''hvw_TabOOP_Profese''');
bidOOPPolozky:= helUtils.getHeliosIntVal(Helios, 0, 'SELECT DPBID FROM ' + tblObecPrehled + ' WHERE NazevSys=N''hvw_TabOOP_Polozky''');
edtDatum.DateTime:= Now;
strediskoUser:= helUtils.getHeliosStrVal(Helios, '', 'SELECT z.Stredisko FROM ' + tblCisZam + ' z INNER JOIN ' + tblUserCfg + ' u ON (u.LoginName=z.LoginId) WHERE u.LoginName=SUSER_SNAME()');
idZamUser:= helUtils.getHeliosIntVal(Helios, 0, 'SELECT ID FROM ' + tblCisZam + ' WHERE LoginId=SUSER_SNAME()');
superUserOOP:= false;
if (idZamUser>0) and (helUtils.sqlExistsTestGeneral(Helios, 'SELECT 1 FROM (VALUES(1)) t1(col1) WHERE COL_LENGTH(N' + tblCisZamE.QuotedString + ', N''_OOP_SuperUser'') IS NOT NULL')) then
superUserOOP:= helUtils.getHeliosBoolVal(Helios, false, 'SELECT CONVERT(bit, ISNULL(_OOP_SuperUser, 0)) FROM ' + tblCisZamE + ' WHERE ID=' + idZamUser.ToString);
if (jeTest) then
superUserOOP:= jeTest;
end;
end.

1574
frmOdlitek.dfm Normal file

File diff suppressed because it is too large Load Diff

1816
frmOdlitek.pas Normal file

File diff suppressed because it is too large Load Diff

884
frmOdvLis.dfm Normal file
View File

@ -0,0 +1,884 @@
object formOdvLis: TformOdvLis
Left = 0
Top = 0
BorderIcons = [biSystemMenu]
BorderStyle = bsSingle
Caption = ' Odv'#225'd'#283'ni vst'#345'ik'#367' na lisu'
ClientHeight = 613
ClientWidth = 1627
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = []
Position = poOwnerFormCenter
OnClose = FormClose
OnShow = FormShow
DesignSize = (
1627
613)
TextHeight = 25
object lblZapisDat: TLabel
Left = 638
Top = 570
Width = 354
Height = 25
Alignment = taCenter
AutoSize = False
Caption = 'Prob'#237'h'#225' z'#225'pis dat...'
Font.Charset = DEFAULT_CHARSET
Font.Color = clRed
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
Visible = False
end
object Label1: TLabel
Left = 689
Top = 123
Width = 126
Height = 25
Caption = 'Po'#269'et vst'#345'ik'#367':'
end
object lblPrijmeni: TLabel
Left = 878
Top = 78
Width = 6
Height = 23
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -19
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
end
object lblPlan: TLabel
Left = 604
Top = 78
Width = 6
Height = 23
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -19
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
end
object Label2: TLabel
Left = 1323
Top = 156
Width = 267
Height = 23
Caption = '. . . . pro evidenci Zmetk'#367' . . . .'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -19
Font.Name = 'Tahoma'
Font.Style = [fsItalic]
ParentFont = False
Visible = False
end
object lblVerze: TLabel
Left = 8
Top = 591
Width = 4
Height = 14
Anchors = [akLeft, akBottom]
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -12
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
end
object btnOK: TButton
Left = 622
Top = 520
Width = 116
Height = 39
Caption = 'OK'
TabOrder = 6
OnClick = btnOKClick
end
object btnStorno: TButton
Left = 891
Top = 520
Width = 113
Height = 39
Caption = 'Storno'
TabOrder = 7
OnClick = btnStornoClick
end
object edtBarcode: TLabeledEdit
Left = 604
Top = 39
Width = 143
Height = 33
Alignment = taCenter
EditLabel.Width = 125
EditLabel.Height = 25
EditLabel.Caption = #268'. k'#243'd pl'#225'nu:'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = [fsBold]
ParentFont = False
TabOrder = 0
Text = ''
OnExit = edtBarcodeExit
end
object selBarcode: TButtonedEdit
Left = 746
Top = 40
Width = 31
Height = 33
TabOrder = 1
OnClick = selBarcodeClick
end
object edtCisZam: TLabeledEdit
Left = 878
Top = 39
Width = 94
Height = 33
Alignment = taCenter
EditLabel.Width = 131
EditLabel.Height = 25
EditLabel.Caption = 'Os.'#269'. zam'#283'st.:'
NumbersOnly = True
TabOrder = 2
Text = ''
OnExit = edtCisZamExit
end
object selCisZam: TButtonedEdit
Left = 971
Top = 42
Width = 31
Height = 33
TabOrder = 3
OnClick = selCisZamClick
OnExit = selCisZamExit
end
object edtVstriku: TRzNumericEdit
Left = 821
Top = 120
Width = 65
Height = 33
Alignment = taCenter
TabOrder = 4
OnExit = edtVstrikuExit
DisplayFormat = ',0;(,0)'
end
object grd: TNextDBGrid6
Left = 3
Top = 179
Width = 1616
Height = 316
ParentColor = False
TabOrder = 5
StyleOptions = [soNativeStyles, soVCLStyles]
ActiveView = view
ActiveViewIndex = 0
Options = [goAutoHideScrollBars, goExitEndEditing, goResponsiveViews, goTabLeaveControl]
RowHeight = 30
ScrollBars = [sbVertical]
SelectFullRow = True
Style = stModern
UserDefinedColorPalette.GeometryHoverColor = clBlack
OnCellClick = grdCellClick
DataSource = ds
object view: TNxReportGridView6
ColumnMoving = False
GridLines = True
HeaderHeight = 33
OnGetCellColor = viewGetCellColor
end
object colFormaPouzita: TNxDBCheckBoxColumn6
Alignment = taCenter
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = []
Footer.Font.Charset = DEFAULT_CHARSET
Footer.Font.Color = clWindowText
Footer.Font.Height = -11
Footer.Font.Name = 'Tahoma'
Footer.Font.Style = []
Footer.FormatMask = '#,##0.00'
Header.Caption = 'Pou'#382'ito'
Header.Font.Charset = DEFAULT_CHARSET
Header.Font.Color = clWindowText
Header.Font.Height = -19
Header.Font.Name = 'Tahoma'
Header.Font.Style = []
Header.ParentFont = False
Index = 0
PlaceholderText = 'True'
Position = 0
Width = 70
CheckedImageIndex = -1
DefaultValue = True
UncheckedImageIndex = -1
OnCheckedChanged = colFormaPouzitaCheckedChanged
DataBinding.FieldName = 'FormaPouzita'
InsertString = 'False'
end
object colRegCis: TNxDBTextColumn6
Alignment = taCenter
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = []
Footer.Font.Charset = DEFAULT_CHARSET
Footer.Font.Color = clWindowText
Footer.Font.Height = -11
Footer.Font.Name = 'Tahoma'
Footer.Font.Style = []
Footer.FormatMask = '#,##0.00'
Header.Alignment = taCenter
Header.Caption = 'Reg.'#269'.'
Header.Font.Charset = DEFAULT_CHARSET
Header.Font.Color = clWindowText
Header.Font.Height = -21
Header.Font.Name = 'Tahoma'
Header.Font.Style = []
Header.ParentFont = False
Header.Clickable = False
Index = 1
Inserting = False
PlaceholderText = 'Text Text'
Position = 1
Resizeable = False
Width = 140
DataBinding.FieldName = 'RegCis'
end
object colZakazka: TNxDBTextColumn6
Alignment = taCenter
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = []
Footer.Font.Charset = DEFAULT_CHARSET
Footer.Font.Color = clWindowText
Footer.Font.Height = -11
Footer.Font.Name = 'Tahoma'
Footer.Font.Style = []
Footer.FormatMask = '#,##0.00'
Header.Alignment = taCenter
Header.Caption = 'Zak'#225'zka'
Header.Font.Charset = DEFAULT_CHARSET
Header.Font.Color = clWindowText
Header.Font.Height = -21
Header.Font.Name = 'Tahoma'
Header.Font.Style = []
Header.ParentFont = False
Index = 2
PlaceholderText = 'Text Text'
Position = 2
Resizeable = False
Width = 140
DataBinding.FieldName = 'Zakazka'
end
object colNazev: TNxDBTextColumn6
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = []
Footer.Font.Charset = DEFAULT_CHARSET
Footer.Font.Color = clWindowText
Footer.Font.Height = -11
Footer.Font.Name = 'Tahoma'
Footer.Font.Style = []
Footer.FormatMask = '#,##0.00'
Header.Alignment = taCenter
Header.Caption = 'Popis'
Header.Font.Charset = DEFAULT_CHARSET
Header.Font.Color = clWindowText
Header.Font.Height = -21
Header.Font.Name = 'Tahoma'
Header.Font.Style = []
Header.ParentFont = False
Header.Clickable = False
Index = 3
Inserting = False
PlaceholderText = 'Text Text'
Position = 3
Selectable = False
Width = 220
DataBinding.FieldName = 'Nazev'
end
object colForma: TNxDBTextColumn6
Alignment = taCenter
DrawingOptions = [doBackground, doContent, doCustom]
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = []
Footer.Font.Charset = DEFAULT_CHARSET
Footer.Font.Color = clWindowText
Footer.Font.Height = -11
Footer.Font.Name = 'Tahoma'
Footer.Font.Style = []
Footer.FormatMask = '#,##0.00'
Header.Alignment = taCenter
Header.Caption = 'Forma'
Header.Font.Charset = DEFAULT_CHARSET
Header.Font.Color = clWindowText
Header.Font.Height = -21
Header.Font.Name = 'Tahoma'
Header.Font.Style = []
Header.ParentFont = False
Index = 4
PlaceholderText = 'Text Text'
Position = 4
Resizeable = False
Width = 230
DataBinding.FieldName = 'Forma'
end
object colFormaSN: TNxDBTextColumn6
Alignment = taCenter
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = []
Footer.Font.Charset = DEFAULT_CHARSET
Footer.Font.Color = clWindowText
Footer.Font.Height = -11
Footer.Font.Name = 'Tahoma'
Footer.Font.Style = []
Footer.FormatMask = '#,##0.00'
Header.Alignment = taCenter
Header.Caption = 'V'#253'r.'#269#237'slo'
Header.Font.Charset = DEFAULT_CHARSET
Header.Font.Color = clWindowText
Header.Font.Height = -21
Header.Font.Name = 'Tahoma'
Header.Font.Style = []
Header.ParentFont = False
Index = 5
PlaceholderText = 'Text Text'
Position = 5
Width = 230
DataBinding.FieldName = 'FormaSN'
end
object colPocetVstriku: TNxDBNumberColumn6
Alignment = taCenter
Editing = True
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = []
Footer.Font.Charset = DEFAULT_CHARSET
Footer.Font.Color = clWindowText
Footer.Font.Height = -11
Footer.Font.Name = 'Tahoma'
Footer.Font.Style = []
Footer.FormatMask = '#,##0.00'
Header.Caption = 'Vst'#345'ik'#367
Header.Font.Charset = DEFAULT_CHARSET
Header.Font.Color = clWindowText
Header.Font.Height = -21
Header.Font.Name = 'Tahoma'
Header.Font.Style = []
Header.ParentFont = False
Index = 6
PlaceholderText = '1742.50'
Position = 6
FormatMask = '#,##0'
NumericEditOptions = []
Precision = 0
Increment = 1.000000000000000000
SpinButtons = False
DataBinding.FieldName = 'PocetVstriku'
InsertString = '0'
end
object colKsVeForme: TNxDBNumberColumn6
Alignment = taCenter
DrawingOptions = [doBackground, doContent, doCustom]
Editing = True
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = []
Footer.Font.Charset = DEFAULT_CHARSET
Footer.Font.Color = clWindowText
Footer.Font.Height = -11
Footer.Font.Name = 'Tahoma'
Footer.Font.Style = []
Footer.FormatMask = '#,##0.00'
Header.Alignment = taCenter
Header.Caption = 'Ks/forma'
Header.Font.Charset = DEFAULT_CHARSET
Header.Font.Color = clWindowText
Header.Font.Height = -19
Header.Font.Name = 'Tahoma'
Header.Font.Style = []
Header.ParentFont = False
Index = 7
Inserting = False
ParentColor = False
PlaceholderText = '1742'
Position = 7
Resizeable = False
Width = 90
FormatMask = '#,##0'
NumericEditOptions = []
Precision = 0
Increment = 1.000000000000000000
SpinButtons = False
DataBinding.FieldName = 'KsVeForme'
InsertString = '0'
end
object colKsDobre: TNxDBNumberColumn6
Alignment = taCenter
Color = 9894289
Editing = True
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = []
Footer.Font.Charset = DEFAULT_CHARSET
Footer.Font.Color = clWindowText
Footer.Font.Height = -11
Footer.Font.Name = 'Tahoma'
Footer.Font.Style = []
Footer.FormatMask = '0'
Header.Alignment = taCenter
Header.Caption = 'Dobr'#233' ks'
Header.Font.Charset = DEFAULT_CHARSET
Header.Font.Color = clWindowText
Header.Font.Height = -21
Header.Font.Name = 'Tahoma'
Header.Font.Style = []
Header.ParentFont = False
Header.Clickable = False
Index = 8
Inserting = False
ParentColor = False
PlaceholderText = '1742'
Position = 8
Resizeable = False
Width = 100
EditOptions = [edTyping]
FormatMask = '#,##0'
NumericEditOptions = []
Precision = 0
Increment = 1.000000000000000000
SpinButtons = False
DataBinding.FieldName = 'KsDobre'
InsertString = '0'
end
object colZmetky1: TNxDBNumberColumn6
Alignment = taCenter
Editing = True
Enabled = False
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = []
Footer.Font.Charset = DEFAULT_CHARSET
Footer.Font.Color = clWindowText
Footer.Font.Height = -11
Footer.Font.Name = 'Tahoma'
Footer.Font.Style = []
Footer.FormatMask = '#,##0.00'
Header.Alignment = taCenter
Header.Caption = 'Z'
Header.Font.Charset = DEFAULT_CHARSET
Header.Font.Color = clWindowText
Header.Font.Height = -19
Header.Font.Name = 'Tahoma'
Header.Font.Style = []
Header.ParentFont = False
Index = 9
Inserting = False
ParentColor = False
PlaceholderText = '1742'
Position = 9
Resizeable = False
Width = 110
FormatMask = '#,##0'
NumericEditOptions = []
Precision = 0
Increment = 1.000000000000000000
SpinButtons = False
DataBinding.FieldName = 'KsZmetky1'
InsertString = '0'
end
object colZmetky2: TNxDBNumberColumn6
Alignment = taCenter
Editing = True
Enabled = False
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = []
Footer.Font.Charset = DEFAULT_CHARSET
Footer.Font.Color = clWindowText
Footer.Font.Height = -11
Footer.Font.Name = 'Tahoma'
Footer.Font.Style = []
Footer.FormatMask = '#,##0.00'
Header.Alignment = taCenter
Header.Caption = 'Z'
Header.Font.Charset = DEFAULT_CHARSET
Header.Font.Color = clWindowText
Header.Font.Height = -19
Header.Font.Name = 'Tahoma'
Header.Font.Style = []
Header.ParentFont = False
Index = 10
Inserting = False
ParentColor = False
PlaceholderText = '1742'
Position = 10
Resizeable = False
Width = 110
FormatMask = '#,##0'
NumericEditOptions = []
Precision = 0
Increment = 1.000000000000000000
SpinButtons = False
DataBinding.FieldName = 'KsZmetky2'
InsertString = '0'
end
object colZmetky3: TNxDBNumberColumn6
Alignment = taCenter
Editing = True
Enabled = False
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = []
Footer.Font.Charset = DEFAULT_CHARSET
Footer.Font.Color = clWindowText
Footer.Font.Height = -11
Footer.Font.Name = 'Tahoma'
Footer.Font.Style = []
Footer.FormatMask = '#,##0.00'
Header.Alignment = taCenter
Header.Caption = 'Z'
Header.Font.Charset = DEFAULT_CHARSET
Header.Font.Color = clWindowText
Header.Font.Height = -19
Header.Font.Name = 'Tahoma'
Header.Font.Style = []
Header.ParentFont = False
Index = 11
Inserting = False
ParentColor = False
PlaceholderText = '1742'
Position = 11
Resizeable = False
Width = 110
FormatMask = '#,##0'
NumericEditOptions = []
Precision = 0
Increment = 1.000000000000000000
SpinButtons = False
DataBinding.FieldName = 'KsZmetky3'
InsertString = '0'
end
object colIdPostup: TNxDBNumberColumn6
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = []
Footer.Font.Charset = DEFAULT_CHARSET
Footer.Font.Color = clWindowText
Footer.Font.Height = -11
Footer.Font.Name = 'Tahoma'
Footer.Font.Style = []
Footer.FormatMask = '#,##0.00'
Header.Caption = 'idPrPostup'
Header.Font.Charset = DEFAULT_CHARSET
Header.Font.Color = clWindowText
Header.Font.Height = -11
Header.Font.Name = 'Tahoma'
Header.Font.Style = []
Index = 12
PlaceholderText = '1742.50'
Position = 12
Visible = False
FormatMask = '#,##0.00'
Increment = 1.000000000000000000
DataBinding.FieldName = 'IDPostup'
InsertString = '0'
end
object colIdNaradi: TNxDBNumberColumn6
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = []
Footer.Font.Charset = DEFAULT_CHARSET
Footer.Font.Color = clWindowText
Footer.Font.Height = -11
Footer.Font.Name = 'Tahoma'
Footer.Font.Style = []
Footer.FormatMask = '#,##0.00'
Header.Caption = 'idNaradi'
Header.Font.Charset = DEFAULT_CHARSET
Header.Font.Color = clWindowText
Header.Font.Height = -11
Header.Font.Name = 'Tahoma'
Header.Font.Style = []
Index = 13
PlaceholderText = '1742.50'
Position = 13
Visible = False
FormatMask = '#,##0.00'
Increment = 1.000000000000000000
DataBinding.FieldName = 'IDnaradi'
InsertString = '0'
end
object colIdVyrCis: TNxDBNumberColumn6
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = []
Footer.Font.Charset = DEFAULT_CHARSET
Footer.Font.Color = clWindowText
Footer.Font.Height = -11
Footer.Font.Name = 'Tahoma'
Footer.Font.Style = []
Footer.FormatMask = '#,##0.00'
Header.Caption = 'idVyrCis'
Header.Font.Charset = DEFAULT_CHARSET
Header.Font.Color = clWindowText
Header.Font.Height = -11
Header.Font.Name = 'Tahoma'
Header.Font.Style = []
Index = 14
PlaceholderText = '1742.50'
Position = 14
Visible = False
FormatMask = '#,##0.00'
Increment = 1.000000000000000000
DataBinding.FieldName = 'IDVyrCS'
InsertString = '0'
end
end
object comboForma: TNxComboBox6
Left = 75
Top = 18
Width = 154
Height = 33
Cursor = crArrow
Alignment = taCenter
TabOrder = 8
Visible = False
UserDefinedColorPalette.GeometryHoverColor = clBlack
OnChange = comboFormaChange
OnExit = comboFormaExit
ButtonWidth = 16
Style = dsDropDownList
DropDownCount = 4
ItemHeight = 26
end
object comboSN: TNxComboBox6
Left = 75
Top = 53
Width = 154
Height = 33
Cursor = crArrow
TabOrder = 9
Visible = False
UserDefinedColorPalette.GeometryHoverColor = clBlack
OnChange = comboSNChange
OnExit = comboSNExit
ButtonWidth = 16
Style = dsDropDownList
DropDownCount = 4
ItemHeight = 25
end
object tbl: TVirtualTable
Active = True
FieldDefs = <
item
Name = 'IDPostup'
DataType = ftInteger
end
item
Name = 'RegCis'
DataType = ftString
Size = 20
end
item
Name = 'Nazev'
DataType = ftString
Size = 100
end
item
Name = 'KsDobre'
DataType = ftSmallint
end
item
Name = 'IDVyrCS'
DataType = ftInteger
end
item
Name = 'FormaSN'
DataType = ftString
Size = 30
end
item
Name = 'IDradek'
DataType = ftInteger
end
item
Name = 'IDnaradi'
DataType = ftInteger
end
item
Name = 'KsZmetky1'
DataType = ftInteger
end
item
Name = 'KsZmetky2'
DataType = ftInteger
end
item
Name = 'KsZmetky3'
DataType = ftInteger
end
item
Name = 'KsVeForme'
DataType = ftInteger
end
item
Name = 'Forma'
DataType = ftString
Size = 30
end
item
Name = 'Zakazka'
DataType = ftString
Size = 15
end
item
Name = 'ID'
DataType = ftInteger
end
item
Name = 'FormaPouzita'
DataType = ftBoolean
end
item
Name = 'PocetVstriku'
DataType = ftInteger
end
item
Name = 'IDVyrCK'
DataType = ftInteger
end
item
Name = 'ParovaForma'
DataType = ftSmallint
end>
AfterPost = tblAfterPost
Left = 124
Top = 107
Data = {
0400130008004944506F73747570030000000000000006005265674369730100
14000000000005004E617A6576010064000000000007004B73446F6272650200
00000000000007004944567972435303000000000000000700466F726D61534E
01001E000000000007004944726164656B0300000000000000080049446E6172
616469030000000000000009004B735A6D65746B793103000000000000000900
4B735A6D65746B7932030000000000000009004B735A6D65746B793303000000
0000000009004B735665466F726D6503000000000000000500466F726D610100
1E000000000007005A616B617A6B6101000F0000000000020049440300000000
0000000C00466F726D61506F757A69746105000000000000000C00506F636574
56737472696B75030000000000000007004944567972434B0300000000000000
0B005061726F7661466F726D610200000000000000000000000000}
object tblIDPrPostup: TIntegerField
FieldName = 'IDPostup'
Visible = False
end
object tblRegCis: TStringField
FieldName = 'RegCis'
end
object tblNazev: TStringField
FieldName = 'Nazev'
Size = 100
end
object tblKsDobre: TSmallintField
FieldName = 'KsDobre'
end
object tblIDVyrCS: TIntegerField
FieldName = 'IDVyrCS'
Visible = False
end
object tblFormaSN: TStringField
FieldName = 'FormaSN'
Size = 30
end
object tblIDradek: TIntegerField
FieldName = 'IDradek'
Visible = False
end
object tblIDnaradi: TIntegerField
FieldName = 'IDnaradi'
Visible = False
end
object tblKsZmetky1: TIntegerField
FieldName = 'KsZmetky1'
end
object tblKsZmetky2: TIntegerField
FieldName = 'KsZmetky2'
end
object tblKsZmetky3: TIntegerField
FieldName = 'KsZmetky3'
end
object tblKsNaPlate: TIntegerField
FieldName = 'KsVeForme'
end
object tblForma: TStringField
FieldName = 'Forma'
LookupKeyFields = 'RegCis'
LookupResultField = 'Forma'
Size = 30
end
object tblcolZakazka: TStringField
FieldName = 'Zakazka'
Size = 15
end
object tblID: TIntegerField
FieldName = 'ID'
end
object tblFormaPouzita: TBooleanField
FieldName = 'FormaPouzita'
end
object tblPocetVstriku: TIntegerField
FieldName = 'PocetVstriku'
end
object tblIDVyrCK: TIntegerField
FieldName = 'IDVyrCK'
end
object tblParovaForma: TSmallintField
DefaultExpression = '0'
FieldName = 'ParovaForma'
end
end
object ds: TDataSource
DataSet = tbl
Left = 73
Top = 107
end
end

821
frmOdvLis.pas Normal file
View File

@ -0,0 +1,821 @@
unit frmOdvLis;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, System.StrUtils,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.Mask, RzEdit, TBPackageU, ddPlugin_TLB, Vcl.ExtCtrls,
Vcl.ComCtrls, Data.DB, Vcl.Grids, Vcl.DBGrids, VirtualDataSet, MemDS, VirtualTable, NxGridView6, NxColumns6,
NxControls6, NxCustomGrid6, NxTypes6, NxVirtualGrid6, NxDBCells6, NxDBGrid6, NxDBColumns6, NxIntf6, NxEdit6,
Vcl.Menus;
const
tblPlan = '[dbo].[_hdc_TabPlanNasazeniLisu]';
tblPlanR = '[dbo].[_hdc_TabPlanNasazeniLisuR]';
tblOdlitky = '[dbo].[_hdc_TabOdlitky]';
type
TZavady = record
poz: integer;
kod: string;
popis: string;
end;
TformOdvLis = class(TForm)
btnOK: TButton;
btnStorno: TButton;
lblZapisDat: TLabel;
edtBarcode: TLabeledEdit;
selBarcode: TButtonedEdit;
edtCisZam: TLabeledEdit;
selCisZam: TButtonedEdit;
edtVstriku: TRzNumericEdit;
Label1: TLabel;
tbl: TVirtualTable;
ds: TDataSource;
grd: TNextDBGrid6;
view: TNxReportGridView6;
colRegCis: TNxDBTextColumn6;
colNazev: TNxDBTextColumn6;
colKsDobre: TNxDBNumberColumn6;
tblIDPrPostup: TIntegerField;
tblRegCis: TStringField;
tblNazev: TStringField;
tblKsDobre: TSmallintField;
lblPrijmeni: TLabel;
lblPlan: TLabel;
tblIDVyrCS: TIntegerField;
tblFormaSN: TStringField;
tblIDradek: TIntegerField;
tblIDnaradi: TIntegerField;
tblKsZmetky1: TIntegerField;
tblKsZmetky2: TIntegerField;
tblKsZmetky3: TIntegerField;
tblKsNaPlate: TIntegerField;
colFormaSN: TNxDBTextColumn6;
colZmetky1: TNxDBNumberColumn6;
colZmetky2: TNxDBNumberColumn6;
colZmetky3: TNxDBNumberColumn6;
colKsVeForme: TNxDBNumberColumn6;
Label2: TLabel;
tblForma: TStringField;
tblcolZakazka: TStringField;
colZakazka: TNxDBTextColumn6;
comboForma: TNxComboBox6;
comboSN: TNxComboBox6;
colForma: TNxDBTextColumn6;
colIdPostup: TNxDBNumberColumn6;
tblID: TIntegerField;
colIdNaradi: TNxDBNumberColumn6;
colIdVyrCis: TNxDBNumberColumn6;
tblFormaPouzita: TBooleanField;
tblPocetVstriku: TIntegerField;
colFormaPouzita: TNxDBCheckBoxColumn6;
colPocetVstriku: TNxDBNumberColumn6;
lblVerze: TLabel;
tblIDVyrCK: TIntegerField;
tblParovaForma: TSmallintField;
procedure FormShow(Sender: TObject);
procedure btnStornoClick(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure btnOKClick(Sender: TObject);
procedure edtBarcodeExit(Sender: TObject);
procedure selBarcodeClick(Sender: TObject);
procedure selCisZamClick(Sender: TObject);
procedure selCisZamExit(Sender: TObject);
procedure edtCisZamExit(Sender: TObject);
procedure viewGetCellColor(Sender: TObject; ACol, ARow: Integer; var CellColor: TColor; State: TNxCellPaintingState);
procedure edtVstrikuExit(Sender: TObject);
procedure grdCellClick(Sender: TObject; ACol, ARow: Integer; Button: TMouseButton);
procedure comboFormaChange(Sender: TObject);
procedure comboFormaExit(Sender: TObject);
procedure comboSNChange(Sender: TObject);
procedure comboSNExit(Sender: TObject);
procedure tblAfterPost(DataSet: TDataSet);
procedure colFormaPouzitaCheckedChanged(Sender: TObject; ACol, ARow: Integer);
private
function najdiVyrCis(ARow: integer): integer;
procedure zapisIDNaradi(ARow: integer);
procedure zapisVyrCis(ARow: integer);
public
Helios: IHelios;
jeTest: Boolean;
mVerze: string;
end;
var
formOdvLis: TformOdvLis;
idPlan, bidPlan: integer;
oVar: OleVariant;
zavady: TArray<TZavady>;
implementation
uses System.DateUtils, helUtils;
{$R *.dfm}
procedure TformOdvLis.btnOKClick(Sender: TObject);
var lSQL, idcko, idckoR: string;
begin
lblZapisDat.Visible:= true;
Self.Repaint;
btnOK.Enabled:= false;
btnStorno.Enabled:= false;
if (tbl.RecordCount>0) then
begin
{
lSQL:= 'IF OBJECT_ID(N''tempdb..#TabOdvodLis'') IS NULL CREATE TABLE #TabOdvodLis (ID INT IDENTITY(1,1) NOT NULL, IDPlan INT NOT NULL, CisZam INT NOT NULL,';
lSQL:= lSQL +' PocetVstriku SMALLINT NOT NULL DEFAULT 0, DeviceID NVARCHAR(40) DEFAULT HOST_NAME(), Autor NVARCHAR(80) NOT NULL DEFAULT SUSER_SNAME(),';
lSQL:= lSQL + ' DatPorizeni DATETIME NOT NULL DEFAULT GETDATE())' + CRLF;
}
lSQL:= 'INSERT #TabOdvodLis (IDPlan, CisZam, PocetVstriku) VALUES (' + idPlan.ToString + ', ' + edtCisZam.Text + ', ';
lSQL:= lSQL + StringReplace(FloatToStr(edtVstriku.Value), ',', '.', [rfReplaceAll]) + ')' + CRLF + 'SELECT SCOPE_IDENTITY()';
if (jeTest) then
lSQL:= lSQL.Replace('#TabOdv', 'dbo._temp_TabOdv').Replace('tempdb..', '');
with Helios.OpenSQL(lSQL) do
idcko:= VarToStr(FieldValues(0));
{
lSQL:= lSQL + 'IF OBJECT_ID(N''tempdb..#TabOdvodLisR'') IS NULL CREATE TABLE #TabOdvodLisR (ID INT IDENTITY(1,1) NOT NULL, IDHlava INT NOT NULL, IDRadek INT,';
lSQL:= lSQL + ' IDVyrCis INT, KsDobre NUMERIC(15,3) NOT NULL DEFAULT 0.0, KsVeForme SMALLINT DEFAULT 1, IDPrPostup INT, IDNaradi INT,';
lSQL:= lSQL + ' FormaPouzita BIT DEFAULT 1, PocetVstriku SMALLINT DEFAULT 0)' + CRLF;
}
tbl.First;
while not(tbl.Eof) do
begin
lSQL:= 'INSERT #TabOdvodLisR (IDHlava, IDRadek, IDVyrCis, IDVyrCK, KsDobre, KsVeForme, IDPrPostup, IDNaradi, FormaPouzita, PocetVstriku, ParovaForma) SELECT ' + idcko + ', ';
lSQL:= lSQL + tbl.FieldByName('IDradek').AsString;
lSQL:= lSQL + ', ' + IfThen(tbl.FieldByName('IDVyrCS').AsInteger>0, tbl.FieldByName('IDVyrCS').AsString, 'NULL');
lSQL:= lSQL + ', ' + IfThen(tbl.FieldByName('IDVyrCK').AsInteger>0, tbl.FieldByName('IDVyrCK').AsString, 'NULL');
lSQL:= lSQL + ', ' + tbl.FieldByName('KsDobre').AsExtended.ToString.Replace(',', '.');
lSQL:= lSQL + ', ' + tbl.FieldByName('KsVeForme').AsExtended.ToString.Replace(',', '.');
lSQL:= lSQL + ', ' + tbl.FieldByName('IDPostup').AsString;
lSQL:= lSQL + ', ' + IfThen(tbl.FieldByName('IDnaradi').AsInteger>0, tbl.FieldByName('IDnaradi').AsString, 'NULL');
lSQL:= lSQL + ', ' + IfThen(tbl.FieldByName('FormaPouzita').AsBoolean, '1', '0');
lSQL:= lSQL + ', ' + tbl.FieldByName('PocetVstriku').AsExtended.ToString.Replace(',', '.');
lSQL:= lSQL + ', ' + IfThen(tbl.FieldByName('ParovaForma').AsBoolean, '1', '0') + CRLF;
lSQL:= lSQL + 'SELECT SCOPE_IDENTITY()';
{
lSQL:= lSQL + 'IF OBJECT_ID(N''tempdb..#TabOdvodLisZavady'') IS NULL CREATE TABLE #TabOdvodLisZavady (ID INT IDENTITY(1,1) NOT NULL, IDHlava INT NOT NULL,';
lSQL:= lSQL + ' IDPrPostup INT NOT NULL, IDZavady INT NOT NULL, Mnozstvi NUMERIC(19,6) NOT NULL DEFAULT 0.0, Autor NVARCHAR(80) NOT NULL DEFAULT SUSER_SNAME())';
}
if (jeTest) then
lSQL:= lSQL.Replace('#TabOdv', 'dbo._temp_TabOdv').Replace('tempdb..', '', [rfReplaceAll]);
with Helios.OpenSQL(lSQL) do
idckoR:= VarToStr(FieldValues(0));
lSQL:= '';
if (tbl.FieldByName('KsZmetky1').AsFloat>0) and (Length(zavady)>0) then
begin
lSQL:= 'INSERT #TabOdvodLisZavady (IDRadek, IDPrPostup, IDZavady, Mnozstvi, IDHlava) SELECT ' + idckoR + ', ' + tbl.FieldByName('IDPostup').AsString + ', ID, ';
lSQL:= lSQL + tbl.FieldByName('KsZmetky1').AsString.Replace(',', '.') + ', ' + idcko + ' FROM ' + tblCZavad + ' WHERE kod=N' + zavady[0].kod.QuotedString + CRLF;
end;
if (tbl.FieldByName('KsZmetky2').AsFloat>0) and (Length(zavady)>1) then
begin
lSQL:= lSQL + 'INSERT #TabOdvodLisZavady (IDRadek, IDPrPostup, IDZavady, Mnozstvi, IDHlava) SELECT ' + tbl.FieldByName('IDPostup').AsString + ', ID, ';
lSQL:= lSQL + tbl.FieldByName('KsZmetky2').AsString.Replace(',', '.') + ', ' + idcko + ' FROM ' + tblCZavad + ' WHERE kod=N' + zavady[1].kod.QuotedString + CRLF;
end;
if (tbl.FieldByName('KsZmetky3').AsFloat>0) and (Length(zavady)>2) then
begin
lSQL:= lSQL + 'INSERT #TabOdvodLisZavady (IDRadek, IDPrPostup, IDZavady, Mnozstvi, IDHlava) SELECT ' + tbl.FieldByName('IDPostup').AsString + ', ID, ';
lSQL:= lSQL + tbl.FieldByName('KsZmetky3').AsString.Replace(',', '.') + ', ' + idcko + ' FROM ' + tblCZavad + ' WHERE kod=N' + zavady[2].kod.QuotedString + CRLF;
end;
if (jeTest) then
lSQL:= lSQL.Replace('#TabOdv', 'dbo._temp_TabOdv').Replace('tempdb..', '', [rfReplaceAll]);
if (lSQL<>'') then
Helios.ExecSQL(lSQL);
tbl.Next;
end;
end;
if not(jeTest) then
Helios.ExecSQL('IF OBJECT_ID(''dbo.ep_HDCSD_PlanLisu_Odvod'') IS NOT NULL EXEC dbo.ep_HDCSD_PlanLisu_Odvod');
// Helios.ExecSQL('IF OBJECT_ID(''dbo.ep_Vosk_PlanLisu_Odvod'') IS NOT NULL EXEC dbo.ep_Vosk_PlanLisu_Odvod');
lblZapisDat.Visible:= false;
Self.Repaint;
btnOK.Enabled:= true;
btnStorno.Enabled:= true;
Close;
end;
procedure TformOdvLis.btnStornoClick(Sender: TObject);
begin
Close;
end;
function TformOdvLis.najdiVyrCis(ARow: Integer): integer;
begin
result:= 0
end;
procedure TformOdvLis.zapisIDNaradi(ARow: Integer);
var lSQL, rc: string;
idPrP: integer;
i, i2, idVPr, dokl: integer;
begin
if (ARow>=0) then
begin
i:= 0;
i2:= 0;
rc:= grd.Cells[colForma.Index, ARow];
if (rc<>'') then
begin
idPrP:= grd.Cell[colRegCis.Index, grd.SelectedRow].AsInteger;
i:= helUtils.getHeliosIntVal(Helios, 0, 'SELECT ID FROM ' + tblKZ + ' WHERE naradi=1 AND RegCis=N' + QuotedStr(rc));
if (i=0) then
i:= helUtils.getHeliosIntVal(Helios, 0, 'SELECT TOP(1) ID FROM ' + tblKZ + ' WHERE SkupZbo LIKE N''F[12]%'' AND RegCis=N' + QuotedStr(rc));
end;
tbl.Edit;
lSQL:= 'SELECT TOP(1) ID FROM ' + tblVyrCK + ' WHERE IDKmenZbozi=' + i.ToString + ' AND Nazev1=N' + QuotedStr(grd.Cells[colFormaSN.Index, ARow]);
i2:= helUtils.getHeliosIntVal(Helios, 0, lSQL);
tbl.FieldByName('IDVyrCK').AsInteger:= i2;
lSQL:= 'SELECT TOP(1) ID FROM ' + tblVyrCS + ' WHERE IDVyrCK=' + i2.ToString + ' AND Mnozstvi>0';
i2:= helUtils.getHeliosIntVal(Helios, 0, lSQL);
tbl.FieldByName('IDVyrCS').AsInteger:= i2;
tbl.FieldByName('IDnaradi').AsInteger:= i;
tbl.Post;
grd.DataSource.DataSet.Refresh;
grd.Cell[colIdVyrCis.Index, ARow].AsInteger:= i2;
end;
end;
procedure TformOdvLis.zapisVyrCis(ARow: Integer);
var lSQL, rc, vyrcis: string;
i, i2, idPrP: integer;
begin
if (ARow>=0) then
begin
i:= 0;
rc:= grd.Cells[colForma.Index, ARow];
if (rc<>'') then
begin
idPrP:= grd.Cell[colRegCis.Index, grd.SelectedRow].AsInteger;
i:= helUtils.getHeliosIntVal(Helios, 0, 'SELECT ID FROM ' + tblKZ + ' WHERE naradi=1 AND RegCis=N' + QuotedStr(rc));
if (i=0) then
i:= helUtils.getHeliosIntVal(Helios, 0, 'SELECT TOP(1) ID FROM ' + tblKZ + ' WHERE SkupZbo LIKE N''F[12]%'' AND RegCis=N' + QuotedStr(rc));
end;
i2:= 0;
vyrcis:= grd.Cells[colFormaSN.Index, ARow];
if (vyrcis<>'') then
begin
idPrP:= grd.Cell[colRegCis.Index, grd.SelectedRow].AsInteger;
lSQL:= 'SELECT ID FROM ' + tblVyrCS + ' WHERE Nazev1=N' + vyrcis.QuotedString + ' AND IDKmenZbozi' + i.ToString;
i2:= helUtils.getHeliosIntVal(Helios, 0, lSQL);
end;
grd.Cell[colIdVyrCis.Index, ARow].AsInteger:= i2;
tbl.Edit;
tbl.FieldByName('IDVyrCS').AsInteger:= i2;
tbl.FieldByName('IDVyrCK').AsInteger:= i2;
tbl.Post;
end;
end;
procedure TformOdvLis.comboFormaChange(Sender: TObject);
var ARow: integer;
begin
ARow:= grd.SelectedRow;
if (comboForma.ItemIndex>=0) then
grd.SelectedCell.AsString:= comboForma.Items[comboForma.ItemIndex]
else
grd.SelectedCell.AsString:= '';
grd.Cells[colFormaSN.Index, ARow]:= '';
grd.SetFocus;
end;
procedure TformOdvLis.comboFormaExit(Sender: TObject);
var ARow: integer;
begin
ARow:= grd.SelectedRow;
if (comboForma.ItemIndex>=0) then
grd.SelectedCell.AsString:= comboForma.Items[comboForma.ItemIndex]
else
grd.SelectedCell.AsString:= '';
comboForma.Visible:= False;
zapisIDNaradi(ARow);
grd.SetFocus;
end;
procedure TformOdvLis.comboSNChange(Sender: TObject);
var ARow: integer;
begin
ARow:= grd.SelectedRow;
if (comboSN.ItemIndex>=0) then
grd.SelectedCell.AsString:= comboSN.Items[comboSN.ItemIndex]
else
grd.SelectedCell.AsString:= '';
grd.SetFocus;
end;
procedure TformOdvLis.comboSNExit(Sender: TObject);
var ARow: integer;
begin
ARow:= grd.SelectedRow;
if (comboSN.ItemIndex>=0) then
grd.SelectedCell.AsString:= comboSN.Items[comboSN.ItemIndex]
else
grd.SelectedCell.AsString:= '';
comboSN.Visible:= False;
zapisVyrCis(ARow);
grd.SetFocus;
end;
procedure TformOdvLis.edtBarcodeExit(Sender: TObject);
var lSQL, formy, sncka, nDokl, sVPr: string;
idVPr, idVOp, dokl, cnt: integer;
idPrikaz: integer;
begin
edtBarcode.Text:= Trim(edtBarcode.Text);
edtBarcode.Text:= helUtils.StripChars(edtBarcode.Text, ['''', '"', '-', ';', ' ']);
if (edtBarcode.Text<>'') then
begin
lblPlan.Caption:= '';
idPlan:= helUtils.getHeliosIntVal(Helios, 0, 'SELECT ID FROM ' + tblPlan + ' WHERE BarCode=N' + QuotedStr(edtBarcode.Text));
if (idPlan>0) then
begin
lSQL:= 'SELECT Lis + N'' / '' + CONVERT(nvarchar, DATEPART(day,Datum)) + N''.'' + CONVERT(nvarchar, DATEPART(month,Datum)) + N''.''';
lSQL:= lSQL + ' + CONVERT(nvarchar, DATEPART(year,Datum)) + N'' / '' + Smena FROM ' + tblPlan + ' WHERE ID=' + idPlan.ToString;
lblPlan.Caption:= helUtils.getHeliosStrVal(Helios, '', lSQL);
if not(tbl.Active) then
tbl.Open;
tbl.Edit;
tbl.Clear; //Fields;
lSQL:= 'SELECT r.IDPrPostup, k.RegCis, k.Nazev1, r.IDVyrCis, vc.Nazev1, r.ID, nv.Naradi, ISNULL(nvke._KsVeForme, ISNULL(ISNULL(o1.KsVeForme, o.KsVeForme),0)), nvk.RegCis'
+ ', nv.Doklad, vp.ID, z.CisloZakazky, r.IDVyrCK FROM ' + tblPlanR + ' r INNER JOIN ' + tblPrPost + ' p ON ((p.ID1=r.IDPrPostup OR p.ID=r.IDPrPostup) AND p.IDOdchylkyDo IS NULL)'
+ ' INNER JOIN ' + tblPrikaz + ' vp ON (p.IDPrikaz=vp.ID) INNER JOIN ' + tblKZ + ' k ON (k.ID=vp.IdTabKmen) LEFT JOIN ' + tblOdlitky + ' o ON (o.Odlitek=k.RegCis) LEFT JOIN '
+ tblOdlitky + ' o1 ON (o1.Odlitek=o.MatecniOdlitek) LEFT JOIN ' + tblPrNVazby + ' nv ON (p.IDPrikaz=nv.IDPrikaz AND p.Doklad=nv.Doklad) LEFT JOIN dbo.TabVyrCS vc ON (vc.ID=r.IDvyrcis)'
+ ' LEFT JOIN ' + tblKZ + ' nvk ON (nv.Naradi=nvk.Id) LEFT JOIN ' + tblZak + ' z ON (z.ID=vp.IDZakazka) LEFT JOIN ' + tblKZe + ' nvke ON (nvke.ID=nvk.ID) WHERE r.IDHlava='
+ idPlan.ToString + ' ORDER BY r.Poradi, r.ID';
with Helios.OpenSQL(lSQL) do
if (RecordCount>0) then
begin
First;
while not(Eof) do
begin
tbl.Append;
tbl.FieldByName('ID').AsInteger:= tbl.RecordCount + 1;
tbl.FieldByName('IDPostup').AsString:= VarToStr(FieldValues(0));
tbl.FieldByName('RegCis').AsString:= VarToStr(FieldValues(1));
tbl.FieldByName('Nazev').AsString:= VarToStr(FieldValues(2));
tbl.FieldByName('KsDobre').AsExtended:= 0;
tbl.FieldByName('IDVyrCS').AsInteger:= StrToInt(IfThen(VarToStr(FieldValues(3))='', '-1', VarToStr(FieldValues(3))));
tbl.FieldByName('IDVyrCK').AsInteger:= StrToInt(IfThen(VarToStr(FieldValues(12))='', '-1', VarToStr(FieldValues(12))));
tbl.FieldByName('IDradek').AsInteger:= StrToInt(VarToStr(FieldValues(5)));
tbl.FieldByName('IDnaradi').AsInteger:= StrToInt(IfThen(VarToStr(FieldValues(6))='', '-1', VarToStr(FieldValues(6))));
tbl.FieldByName('Forma').AsString:= '';
tbl.FieldByName('FormaSN').AsString:= '';
if (LeftStr(VarToStr(FieldValues(1)),3).ToLower='ucp') then
tbl.FieldByName('FormaPouzita').AsBoolean:= false
else
tbl.FieldByName('FormaPouzita').AsBoolean:= true;
idVPr:= helUtils.getHeliosIntVal(Helios, 0, 'SELECT IDPrikaz FROM ' + tblPrPost + ' WHERE ID=' + tbl.FieldByName('IDPostup').AsString);
dokl:= helUtils.getHeliosIntVal(Helios, 0, 'SELECT Doklad FROM ' + tblPrPost + ' WHERE ID=' + tbl.FieldByName('IDPostup').AsString);
if (idVPr>0) and (dokl>0) then
begin
if (tbl.FieldByName('IDVyrCK').AsInteger<=0) then
begin
lSQL:= 'SELECT COUNT(ID) FROM ' + tblVyrCK + ' WHERE IDKmenZbozi=' + tbl.FieldByName('IDnaradi').AsString;
cnt:= helUtils.getHeliosIntVal(Helios, 0, lSQL);
if (cnt=1) then
tbl.FieldByName('IDVyrCK').AsInteger:= helUtils.getHeliosIntVal(Helios, 0, 'SELECT TOP(1) ID FROM ' + tblVyrCK + ' WHERE IDKmenZbozi=' + tbl.FieldByName('IDnaradi').AsString);
end;
lSQL:= 'SELECT k.RegCis, n.Naradi FROM ' + tblPrNVazby + ' n INNER JOIN ' + tblKZ + ' k ON (k.ID=n.Naradi) WHERE n.IDPrikaz=';
lSQL:= lSQL + idVPr.ToString + ' AND n.Doklad=' + dokl.ToString + ' AND k.ID IN (SELECT IDKmenZbozi FROM ' + tblSS + ' WHERE Mnozstvi>0) ORDER BY k.RegCis';
with Helios.OpenSQL(lSQL) do
if (RecordCount=1) then
begin
tbl.FieldByName('Forma').AsString:= Trim(VarToStr(FieldValues(0)));
tbl.FieldByName('IDnaradi').AsString:= Trim(VarToStr(FieldValues(1)));
if (tbl.FieldByName('IDVyrCS').AsInteger<=0) then
begin
lSQL:= 'SELECT ID, Nazev1 FROM ' + tblVyrCS + ' WHERE IDStavSkladu IN (SELECT ID FROM ' + tblSS + ' WHERE Mnozstvi>0 AND IDKmenZbozi=';
lSQL:= lSQL + tbl.FieldByName('IDnaradi').AsString + ')';
with Helios.OpenSQL(lSQL) do
if (RecordCount=1) then
begin
tbl.FieldByName('IDVyrCS').AsString:= VarToStr(FieldValues(0));
tbl.FieldByName('FormaSN').AsString:= VarToStr(FieldValues(1));
tbl.FieldByName('IDVyrCK').AsInteger:= helUtils.getHeliosIntVal(Helios, 0, 'SELECT IDVyrCK FROM ' + tblVyrCS + ' WHERE ID=' + tbl.FieldByName('IDVyrCS').AsString);
end;
end
else
tbl.FieldByName('FormaSN').AsString:= helUtils.getHeliosStrVal(Helios, '', 'SELECT Nazev1 FROM ' + tblVyrCS + ' WHERE ID=' + tbl.FieldByName('IDVyrCS').AsString);
end;
end;
tbl.FieldByName('KsZmetky1').AsExtended:= 0;
tbl.FieldByName('KsZmetky2').AsExtended:= 0;
tbl.FieldByName('KsZmetky3').AsExtended:= 0;
tbl.FieldByName('KsVeForme').AsInteger:= StrToInt(VarToStr(FieldValues(7)));
tbl.FieldByName('Zakazka').AsString:= VarToStr(FieldValues(11));
tbl.Post;
Next;
end;
tbl.RecNo:= 1;
grd.Repaint;
end;
end;
edtCisZam.SetFocus;
end;
end;
procedure TformOdvLis.edtCisZamExit(Sender: TObject);
var c: integer;
begin
lblPrijmeni.Caption:= '';
edtCisZam.Text:= StringReplace(Trim(edtCisZam.Text), ' ', '', [rfReplaceAll]);
edtCisZam.Text:= helUtils.StripChars(edtCisZam.Text, ['''', '"', '-', ';', ' ']);
if (edtCisZam.Text<>'') then
if TryStrToInt(edtCisZam.Text, c) then
begin
if (helUtils.HeliosExistsTest(Helios, tblCZam, 'Cislo=' + c.ToString)) then
begin
lblPrijmeni.Caption:= helUtils.getHeliosStrVal(Helios, '', 'SELECT Prijmeni FROM ' + tblCZam + ' WHERE Cislo=' + c.ToString);
edtCisZam.Text:= StringOfChar('0', 6-Length(edtCisZam.Text)) + edtCisZam.Text;
edtVstriku.SetFocus;
end
else
begin
Helios.Error(#1'Zadan<61> osobn<62> <20><>slo nebylo nalezeno !'#1);
edtCisZam.SetFocus;
edtCisZam.SelectAll;
end;
end
else
begin
Helios.Error(#1'Zadan<61> znaky nejsou <20><>slo'#1);
edtCisZam.SetFocus;
edtCisZam.SelectAll;
end;
end;
procedure TformOdvLis.edtVstrikuExit(Sender: TObject);
var cell: TGridCoord;
i: integer;
begin
if (grd.RowCount>0) then
begin
i:= tbl.RecNo;
grd.DataSource.DataSet.DisableControls;
tbl.First;
while not(tbl.Eof) do
begin
tbl.Edit;
tbl.FieldByName('PocetVstriku').AsInteger:= edtVstriku.IntValue;
tbl.Post;
tbl.Next;
end;
tbl.RecNo:= i;
grd.DataSource.DataSet.EnableControls;
grd.Refresh;
end;
end;
procedure TformOdvLis.FormClose(Sender: TObject; var Action: TCloseAction);
begin
if (tbl.Active) then
tbl.Close;
Action:= caFree;
end;
procedure TformOdvLis.FormShow(Sender: TObject);
var lSQL: string;
i, i2: integer;
begin
self.ParentWindow:= Helios.MainApplicationHandle;
self.Icon.Handle:= Helios.MainApplicationIconHandle;
{
for i:=0 to Self.ComponentCount-1 do
begin
if (Self.Components[i] is TButton) then
begin
(Self.Components[i] as TButton).Font.Name:= Helios.Font;
(Self.Components[i] as TButton).Font.Height:= Helios.FontHeight;
end;
if (Self.Components[i] is TTB_3Button) then
begin
// (Self.Components[i] as TTB_3Button).Width:= 30;
// (Self.Components[i] as TTB_3Button).Height:= 30;
end;
end;
}
lblVerze.Caption:= mVerze;
{
Helios.ExecSQL('IF OBJECT_ID(N''dbo._temp_TabOdvodLis'') IS NOT NULL DELETE FROM dbo._temp_TabOdvodLis WHERE Autor=SUSER_SNAME()');
Helios.ExecSQL('IF OBJECT_ID(N''dbo._temp_TabOdvodLisR'') IS NOT NULL DELETE FROM dbo._temp_TabOdvodLisR WHERE IDHlava NOT IN (SELECT ID FROM dbo._temp_TabOdvodLis)');
Helios.ExecSQL('IF OBJECT_ID(N''dbo._temp_TabOdvodLis'') IS NOT NULL IF NOT EXISTS(SELECT * FROM dbo._temp_TabOdvodLis) DROP TABLE dbo._temp_TabOdvodLis');
Helios.ExecSQL('IF OBJECT_ID(N''dbo._temp_TabOdvodLisR'') IS NOT NULL IF NOT EXISTS(SELECT * FROM dbo._temp_TabOdvodLisR) DROP TABLE dbo._temp_TabOdvodLisR');
}
Helios.ExecSQL('IF OBJECT_ID(N''tempdb..#TabOdvodLis'') IS NOT NULL DROP TABLE #TabOdvodLis');
Helios.ExecSQL('IF OBJECT_ID(N''tempdb..#TabOdvodLisR'') IS NOT NULL DROP TABLE #TabOdvodLisR');
Helios.ExecSQL('IF OBJECT_ID(N''tempdb..#TabOdvodLisZavady'') IS NOT NULL DROP TABLE #TabOdvodLisZavady');
lSQL:= 'IF OBJECT_ID(N''tempdb..#TabOdvodLis'') IS NULL CREATE TABLE #TabOdvodLis (ID INT IDENTITY(1,1) NOT NULL, IDPlan INT NOT NULL, CisZam INT NOT NULL,';
lSQL:= lSQL +' PocetVstriku SMALLINT NOT NULL DEFAULT 0, DeviceID NVARCHAR(40) DEFAULT HOST_NAME(), Autor NVARCHAR(80) NOT NULL DEFAULT SUSER_SNAME(),';
lSQL:= lSQL + ' DatPorizeni DATETIME NOT NULL DEFAULT GETDATE())' + CRLF;
lSQL:= lSQL + 'IF OBJECT_ID(N''tempdb..#TabOdvodLisR'') IS NULL CREATE TABLE #TabOdvodLisR (ID INT IDENTITY(1,1) NOT NULL, IDHlava INT NOT NULL, IDRadek INT,';
lSQL:= lSQL + ' IDVyrCis INT, IDVyrCK INT, KsDobre NUMERIC(15,3) NOT NULL DEFAULT 0.0, KsVeForme SMALLINT DEFAULT 1, IDPrPostup INT, IDNaradi INT,';
lSQL:= lSQL + ' FormaPouzita BIT DEFAULT 1, PocetVstriku SMALLINT DEFAULT 0, DeviceID NVARCHAR(40) DEFAULT HOST_NAME())' + CRLF;
lSQL:= lSQL + 'IF OBJECT_ID(N''tempdb..#TabOdvodLisZavady'') IS NULL CREATE TABLE #TabOdvodLisZavady (ID INT IDENTITY(1,1) NOT NULL, IDHlava INT NOT NULL,';
lSQL:= lSQL + ' IDRadek INT, IDPrPostup INT NOT NULL, IDZavady INT NOT NULL, Mnozstvi NUMERIC(19,6) NOT NULL DEFAULT 0.0, Autor NVARCHAR(80) DEFAULT SUSER_SNAME(),';
lSQL:= lSQL + ' DeviceID NVARCHAR(40) DEFAULT HOST_NAME())';
if (jeTest) then
lSQL:= lSQL.Replace('#TabOdv', 'dbo._temp_TabOdv').Replace('tempdb..', '');
Helios.ExecSQL(lSQL);
SetLength(zavady, 0);
lSQL:= 'SELECT TOP(3) z.kod, e._PopisEvidence, e._PoziceEvidence FROM ' + tblCZavadE + ' e INNER JOIN ' + tblCZavad + ' z ON (z.ID=e.ID)';
lSQL:= lSQL + ' WHERE CHARINDEX(N''- VOSK'', CONVERT(nvarchar,Poznamka))>0 AND e._PoziceEvidence IS NOT NULL ORDER BY e._PoziceEvidence';
with Helios.OpenSQL(lSQL) do
if (RecordCount>0) then
begin
SetLength(zavady, RecordCount);
i:= 0;
First;
while not(EOF) do
begin
zavady[i].kod:= VarToStr(FieldValues(0));
zavady[i].popis:= VarToStr(FieldValues(1));
zavady[i].poz:= StrToInt(VarToStr(FieldValues(2)));
Inc(i);
Next;
end;
end;
if (Length(zavady)>0) then
begin
for i:=0 to Length(zavady)-1 do
begin
i2:= grd.Columns.ItemBy['colZmetky' + (i+1).ToString].Index;
grd.Columns.Item[i2].Header.Caption:= 'Z ' + zavady[i].popis;
grd.Columns.Item[i2].Enabled:= true;
end;
end;
grd.Repaint;
end;
procedure TformOdvLis.grdCellClick(Sender: TObject; ACol, ARow: Integer; Button: TMouseButton);
var lSQL, naradiIDcka: string;
idVPr, dokl: integer;
R: TRect;
begin
if (ACol=colForma.Index) then
begin
R:= view.GetCellRect(ACol, ARow);
R.Left:= R.Left + grd.Left;
R.Right:= R.Right + grd.Left;
R.Top:= R.Top + grd.Top;
R.Bottom:= R.Bottom + grd.Top;
with comboForma do
begin
Left:= R.Left + 1;
Top:= R.Top + 1;
Width:= (R.Right + 1) - R.Left;
Height:= (R.Bottom + 1) - R.Top + 3;
Visible:= true;
if (grd.Cells[colIdPostup.Index, ARow]<>'') then
begin
idVPr:= helUtils.getHeliosIntVal(Helios, 0, 'SELECT IDPrikaz FROM ' + tblPrPost + ' WHERE ID=' + grd.Cells[colIdPostup.Index, ARow]);
dokl:= helUtils.getHeliosIntVal(Helios, 0, 'SELECT Doklad FROM ' + tblPrPost + ' WHERE ID=' + grd.Cells[colIdPostup.Index, ARow]);
if (idVPr>0) and (dokl>0) then
begin
lSQL:= 'SELECT k.RegCis, n.Naradi FROM ' + tblPrNVazby + ' n INNER JOIN ' + tblKZ + ' k ON (k.ID=n.Naradi) WHERE n.IDPrikaz=';
lSQL:= lSQL + idVPr.ToString + ' AND n.Doklad=' + dokl.ToString + ' ORDER BY k.RegCis';
with Helios.OpenSQL(lSQL) do
begin
Items.Clear;
First;
while not(EOF) do
begin
lSQL:= Trim(VarToStr(FieldValues(0)));
if (lSQL<>'') then
Items.Add(lSQL);
Next;
end;
if (Items.Count=1) then
ItemIndex:= 0;
end;
end;
end;
SetFocus;
end;
end;
if (ACol=colFormaSN.Index) and (grd.Cell[colIdNaradi.Index, ARow].AsInteger>0) then
begin
R:= view.GetCellRect(ACol, ARow);
R.Left:= R.Left + grd.Left;
R.Right:= R.Right + grd.Left;
R.Top:= R.Top + grd.Top;
R.Bottom:= R.Bottom + grd.Top;
with comboSN do
begin
Left:= R.Left + 1;
Top:= R.Top + 1;
Width:= (R.Right + 1) - R.Left;
Height:= (R.Bottom + 1) - R.Top + 3;
Visible:= True;
lSQL:= 'SELECT Nazev1 FROM ' + tblVyrCK + ' WHERE IDKmenZbozi=' + grd.Cells[colIdNaradi.Index, ARow];
with Helios.OpenSQL(lSQL) do
begin
Items.Clear;
First;
while not(EOF) do
begin
lSQL:= Trim(VarToStr(FieldValues(0)));
if (lSQL<>'') then
Items.Add(lSQL);
Next;
end;
if (Items.Count=1) then
ItemIndex:= 0;
end;
SetFocus;
end;
end;
end;
procedure TformOdvLis.selBarcodeClick(Sender: TObject);
begin
edtBarcode.Text:= Trim(edtBarcode.Text);
oVar:= edtBarcode.Text;
bidPlan:= helUtils.getHeliosIntVal(Helios, 0, 'SELECT 100000+Cislo FROM ' + tblObecPrehled + ' WHERE NazevSys=N''hvw_PlanNasazeniLisu''');
if (bidPlan>0) then
if Helios.Prenos(bidPlan, 'hvw_PlanNasazeniLisu.Barcode', oVar, 'hvw_PlanNasazeniLisu.Ukonceno=0', 'Vyberte pl<70>n', true) then
begin
edtBarcode.Text:= VarToStr(oVar);
edtBarcodeExit(Sender);
end;
edtCisZam.SetFocus;
end;
procedure TformOdvLis.selCisZamClick(Sender: TObject);
begin
if Helios.Prenos(bidCisZam, 'TabCisZam.Cislo', oVar, '', 'Vyberte zam<61>stnance', true) then
begin
edtCisZam.Text:= VarToStr(oVar);
selCisZamExit(Sender);
end;
end;
procedure TformOdvLis.selCisZamExit(Sender: TObject);
begin
edtCisZam.Text:= helUtils.StripChars(edtCisZam.Text, ['''', '"', '-', ';', ' ']);
edtCisZamExit(Sender);
edtVstriku.SetFocus;
end;
procedure TformOdvLis.tblAfterPost(DataSet: TDataSet);
var x: TField;
begin
if (Dataset.RecordCount=0) then
Exit;
{
x:= Dataset.FieldByName('IDVyrCS');
if (x.AsInteger>0) then
grd.Cells[colFormaSN.Index, tbl.RecNo-1]:= helUtils.getHeliosStrVal(Helios, '', 'SELECT Nazev1 FROM ' + tblVyrCS + ' WHERE ID=' + x.AsString);
}
end;
procedure TformOdvLis.colFormaPouzitaCheckedChanged(Sender: TObject; ACol, ARow: Integer);
var i: integer;
begin
if (grd.RowCount>=ARow+1) then
begin
if (grd.Cell[colFormaPouzita.Index, ARow].AsBoolean=false) then
begin
tbl.Edit;
tbl.FieldByName('PocetVstriku').AsInteger:= 0;
tbl.Post;
for i:=0 to grd.ColCount-1 do
begin
grd.Cell[i, ARow].Font.Style:= grd.Cell[i, ARow].Font.Style + [fsItalic];
grd.Cell[i, ARow].Font.Color:= clRed;
end;
end
else
begin
tbl.Edit;
tbl.FieldByName('PocetVstriku').AsInteger:= edtVstriku.IntValue;
tbl.Post;
for i:=0 to grd.ColCount-1 do
begin
grd.Cell[i, ARow].Font.Style:= grd.Cell[i, ARow].Font.Style - [fsItalic];
grd.Cell[i, ARow].Font.Color:= clBlack;
end;
end;
end;
grd.Refresh;
end;
procedure TformOdvLis.viewGetCellColor(Sender: TObject; ACol, ARow: Integer; var CellColor: TColor; State: TNxCellPaintingState);
begin
if (grd.RowCount>=ARow+1) then
begin
if (ACol=colKsVeForme.Index) then
if (grd.Cells[ACol, ARow]='0') then
begin
CellColor:= clRed;
grd.Cell[ACol, ARow].Enabled:= true;
end
else
begin
// CellColor:= clWindow;
grd.Cell[ACol, ARow].Enabled:= false;
end;
end;
end;
end.

766
frmOdvLisX.dfm Normal file
View File

@ -0,0 +1,766 @@
object formOdvLisX: TformOdvLisX
Left = 0
Top = 0
BorderIcons = [biSystemMenu]
BorderStyle = bsSingle
Caption = ' Odv'#225'd'#283'ni vst'#345'ik'#367' na lisu'
ClientHeight = 613
ClientWidth = 1487
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = []
OldCreateOrder = False
Position = poOwnerFormCenter
OnClose = FormClose
OnShow = FormShow
PixelsPerInch = 96
TextHeight = 25
object lblZapisDat: TLabel
Left = 539
Top = 570
Width = 354
Height = 25
Alignment = taCenter
AutoSize = False
Caption = 'Prob'#237'h'#225' z'#225'pis dat...'
Font.Charset = DEFAULT_CHARSET
Font.Color = clRed
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
Visible = False
end
object Label1: TLabel
Left = 596
Top = 123
Width = 126
Height = 25
Caption = 'Po'#269'et vst'#345'ik'#367':'
end
object lblPrijmeni: TLabel
Left = 781
Top = 79
Width = 5
Height = 19
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -16
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
end
object lblPlan: TLabel
Left = 510
Top = 79
Width = 5
Height = 19
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -16
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
end
object Label2: TLabel
Left = 1182
Top = 156
Width = 267
Height = 23
Caption = '. . . . pro evidenci Zmetk'#367' . . . .'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -19
Font.Name = 'Tahoma'
Font.Style = [fsItalic]
ParentFont = False
Visible = False
end
object btnOK: TButton
Left = 523
Top = 520
Width = 116
Height = 39
Caption = 'OK'
TabOrder = 6
OnClick = btnOKClick
end
object btnStorno: TButton
Left = 792
Top = 520
Width = 113
Height = 39
Caption = 'Storno'
TabOrder = 7
OnClick = btnStornoClick
end
object edtBarcode: TLabeledEdit
Left = 510
Top = 40
Width = 143
Height = 33
Alignment = taCenter
EditLabel.Width = 125
EditLabel.Height = 25
EditLabel.Caption = #268'. k'#243'd pl'#225'nu:'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = [fsBold]
ParentFont = False
TabOrder = 0
OnExit = edtBarcodeExit
end
object selBarcode: TButtonedEdit
Left = 652
Top = 41
Width = 31
Height = 31
Caption = '...'
TabOrder = 1
OnClick = selBarcodeClick
end
object edtCisZam: TLabeledEdit
Left = 780
Top = 40
Width = 94
Height = 33
Alignment = taCenter
EditLabel.Width = 131
EditLabel.Height = 25
EditLabel.Caption = 'Os.'#269'. zam'#283'st.:'
NumbersOnly = True
TabOrder = 2
OnExit = edtCisZamExit
end
object selCisZam: TButtonedEdit
Left = 873
Top = 42
Width = 31
Height = 31
Caption = '...'
TabOrder = 3
OnClick = selCisZamClick
OnExit = selCisZamExit
end
object edtVstriku: TRzNumericEdit
Left = 728
Top = 120
Width = 65
Height = 33
Alignment = taCenter
TabOrder = 4
OnExit = edtVstrikuExit
DisplayFormat = ',0;(,0)'
end
object grd: TNextDBGrid6
Left = 3
Top = 179
Width = 1476
Height = 316
ParentColor = False
TabOrder = 5
StyleOptions = [soNativeStyles, soVCLStyles]
ActiveView = view
ActiveViewIndex = 0
Options = [goAutoHideScrollBars, goExitEndEditing, goResponsiveViews, goTabLeaveControl]
RowHeight = 30
ScrollBars = [sbVertical]
SelectFullRow = True
Style = stModern
OnCellClick = grdCellClick
DataSource = ds
object view: TNxReportGridView6
ColumnMoving = False
GridLines = True
HeaderHeight = 33
OnGetCellColor = viewGetCellColor
end
object colRegCis: TNxDBTextColumn6
Alignment = taCenter
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = []
Footer.Font.Charset = DEFAULT_CHARSET
Footer.Font.Color = clWindowText
Footer.Font.Height = -11
Footer.Font.Name = 'Tahoma'
Footer.Font.Style = []
Footer.FormatMask = '#,##0.00'
Header.Alignment = taCenter
Header.Caption = 'Reg.'#269'.'
Header.Font.Charset = DEFAULT_CHARSET
Header.Font.Color = clWindowText
Header.Font.Height = -21
Header.Font.Name = 'Tahoma'
Header.Font.Style = []
Header.ParentFont = False
Header.Clickable = False
Index = 0
Inserting = False
PlaceholderText = 'Text Text'
Position = 0
Resizeable = False
Width = 140
DataBinding.FieldName = 'RegCis'
end
object colZakazka: TNxDBTextColumn6
Alignment = taCenter
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = []
Footer.Font.Charset = DEFAULT_CHARSET
Footer.Font.Color = clWindowText
Footer.Font.Height = -11
Footer.Font.Name = 'Tahoma'
Footer.Font.Style = []
Footer.FormatMask = '#,##0.00'
Header.Alignment = taCenter
Header.Caption = 'Zak'#225'zka'
Header.Font.Charset = DEFAULT_CHARSET
Header.Font.Color = clWindowText
Header.Font.Height = -21
Header.Font.Name = 'Tahoma'
Header.Font.Style = []
Header.ParentFont = False
Index = 1
PlaceholderText = 'Text Text'
Position = 1
Resizeable = False
Width = 140
DataBinding.FieldName = 'Zakazka'
end
object colNazev: TNxDBTextColumn6
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = []
Footer.Font.Charset = DEFAULT_CHARSET
Footer.Font.Color = clWindowText
Footer.Font.Height = -11
Footer.Font.Name = 'Tahoma'
Footer.Font.Style = []
Footer.FormatMask = '#,##0.00'
Header.Alignment = taCenter
Header.Caption = 'Popis'
Header.Font.Charset = DEFAULT_CHARSET
Header.Font.Color = clWindowText
Header.Font.Height = -21
Header.Font.Name = 'Tahoma'
Header.Font.Style = []
Header.ParentFont = False
Header.Clickable = False
Index = 2
Inserting = False
PlaceholderText = 'Text Text'
Position = 2
Selectable = False
Width = 220
DataBinding.FieldName = 'Nazev'
end
object colForma: TNxDBComboBoxColumn6
Alignment = taCenter
Editing = True
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = []
Footer.Font.Charset = DEFAULT_CHARSET
Footer.Font.Color = clWindowText
Footer.Font.Height = -11
Footer.Font.Name = 'Tahoma'
Footer.Font.Style = []
Footer.FormatMask = '#,##0.00'
Header.Alignment = taCenter
Header.Caption = 'Forma'
Header.Font.Charset = DEFAULT_CHARSET
Header.Font.Color = clWindowText
Header.Font.Height = -21
Header.Font.Name = 'Tahoma'
Header.Font.Style = []
Header.ParentFont = False
Index = 3
PlaceholderText = 'Text Text'
Position = 3
Resizeable = False
Width = 230
AutoDropDown = True
ItemHeight = 25
ItemsAlignment = taCenter
end
object colFormaSN: TNxDBTextColumn6
Alignment = taCenter
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = []
Footer.Font.Charset = DEFAULT_CHARSET
Footer.Font.Color = clWindowText
Footer.Font.Height = -11
Footer.Font.Name = 'Tahoma'
Footer.Font.Style = []
Footer.FormatMask = '#,##0.00'
Header.Alignment = taCenter
Header.Caption = 'V'#253'r.'#269#237'slo'
Header.Font.Charset = DEFAULT_CHARSET
Header.Font.Color = clWindowText
Header.Font.Height = -21
Header.Font.Name = 'Tahoma'
Header.Font.Style = []
Header.ParentFont = False
Index = 4
PlaceholderText = 'Text Text'
Position = 4
Width = 230
DataBinding.FieldName = 'FormaSN'
end
object colKsVeForme: TNxDBNumberColumn6
Alignment = taCenter
DrawingOptions = [doBackground, doContent, doCustom]
Editing = True
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = []
Footer.Font.Charset = DEFAULT_CHARSET
Footer.Font.Color = clWindowText
Footer.Font.Height = -11
Footer.Font.Name = 'Tahoma'
Footer.Font.Style = []
Footer.FormatMask = '#,##0.00'
Header.Alignment = taCenter
Header.Caption = 'Ks/forma'
Header.Font.Charset = DEFAULT_CHARSET
Header.Font.Color = clWindowText
Header.Font.Height = -19
Header.Font.Name = 'Tahoma'
Header.Font.Style = []
Header.ParentFont = False
Index = 5
Inserting = False
ParentColor = False
PlaceholderText = '1742'
Position = 5
Resizeable = False
FormatMask = '#,##0'
NumericEditOptions = []
Precision = 0
Increment = 1.000000000000000000
SpinButtons = False
DataBinding.FieldName = 'KsVeForme'
InsertString = '0'
end
object colKsDobre: TNxDBNumberColumn6
Alignment = taCenter
Color = 9894289
Editing = True
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = []
Footer.Font.Charset = DEFAULT_CHARSET
Footer.Font.Color = clWindowText
Footer.Font.Height = -11
Footer.Font.Name = 'Tahoma'
Footer.Font.Style = []
Footer.FormatMask = '0'
Header.Alignment = taCenter
Header.Caption = 'Dobr'#233' ks'
Header.Font.Charset = DEFAULT_CHARSET
Header.Font.Color = clWindowText
Header.Font.Height = -21
Header.Font.Name = 'Tahoma'
Header.Font.Style = []
Header.ParentFont = False
Header.Clickable = False
Index = 6
Inserting = False
ParentColor = False
PlaceholderText = '1742'
Position = 6
Resizeable = False
Width = 100
FormatMask = '#,##0'
NumericEditOptions = []
Precision = 0
Increment = 1.000000000000000000
SpinButtons = False
DataBinding.FieldName = 'KsDobre'
InsertString = '0'
end
object colZmetky1: TNxDBNumberColumn6
Alignment = taCenter
Editing = True
Enabled = False
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = []
Footer.Font.Charset = DEFAULT_CHARSET
Footer.Font.Color = clWindowText
Footer.Font.Height = -11
Footer.Font.Name = 'Tahoma'
Footer.Font.Style = []
Footer.FormatMask = '#,##0.00'
Header.Alignment = taCenter
Header.Caption = 'Z'
Header.Font.Charset = DEFAULT_CHARSET
Header.Font.Color = clWindowText
Header.Font.Height = -19
Header.Font.Name = 'Tahoma'
Header.Font.Style = []
Header.ParentFont = False
Index = 7
Inserting = False
ParentColor = False
PlaceholderText = '1742'
Position = 7
Resizeable = False
Width = 110
FormatMask = '#,##0'
NumericEditOptions = []
Precision = 0
Increment = 1.000000000000000000
SpinButtons = False
DataBinding.FieldName = 'KsZmetky1'
InsertString = '0'
end
object colZmetky2: TNxDBNumberColumn6
Alignment = taCenter
Editing = True
Enabled = False
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = []
Footer.Font.Charset = DEFAULT_CHARSET
Footer.Font.Color = clWindowText
Footer.Font.Height = -11
Footer.Font.Name = 'Tahoma'
Footer.Font.Style = []
Footer.FormatMask = '#,##0.00'
Header.Alignment = taCenter
Header.Caption = 'Z'
Header.Font.Charset = DEFAULT_CHARSET
Header.Font.Color = clWindowText
Header.Font.Height = -19
Header.Font.Name = 'Tahoma'
Header.Font.Style = []
Header.ParentFont = False
Index = 8
Inserting = False
ParentColor = False
PlaceholderText = '1742'
Position = 8
Resizeable = False
Width = 110
FormatMask = '#,##0'
NumericEditOptions = []
Precision = 0
Increment = 1.000000000000000000
SpinButtons = False
DataBinding.FieldName = 'KsZmetky2'
InsertString = '0'
end
object colZmetky3: TNxDBNumberColumn6
Alignment = taCenter
Editing = True
Enabled = False
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = []
Footer.Font.Charset = DEFAULT_CHARSET
Footer.Font.Color = clWindowText
Footer.Font.Height = -11
Footer.Font.Name = 'Tahoma'
Footer.Font.Style = []
Footer.FormatMask = '#,##0.00'
Header.Alignment = taCenter
Header.Caption = 'Z'
Header.Font.Charset = DEFAULT_CHARSET
Header.Font.Color = clWindowText
Header.Font.Height = -19
Header.Font.Name = 'Tahoma'
Header.Font.Style = []
Header.ParentFont = False
Index = 9
Inserting = False
ParentColor = False
PlaceholderText = '1742'
Position = 9
Resizeable = False
Width = 110
FormatMask = '#,##0'
NumericEditOptions = []
Precision = 0
Increment = 1.000000000000000000
SpinButtons = False
DataBinding.FieldName = 'KsZmetky3'
InsertString = '0'
end
end
object grdX: TXDBGrid
Left = 3
Top = 439
Width = 1476
Height = 120
DataSource = ds
Enabled = False
GridStyle.VisualStyle = vsStandard
HeaderColor = clTeal
Options = [dgTitles, dgColumnResize, dgColLines, dgRowLines, dgRowSelect, dgConfirmDelete, dgCancelOnExit, dgExtendedSelect, dgInternalSelect, dgRowScroll, dgHotButtons, dgTitleButtons, dgTitleHeaders, dgTitleWidthOff, dgMarkerAutoAlign, dgMarkerAutoToggle]
TabOrder = 8
Columns = <
item
Alignment = taCenter
Expanded = False
FieldName = 'RegCis'
Title.Alignment = taCenter
Title.Caption = 'Reg.'#269'.'
TotalFields.Visible = False
Visible = True
Width = 166
end
item
Alignment = taCenter
Expanded = False
FieldName = 'Zakazka'
Title.Alignment = taCenter
Title.Caption = 'Zak'#225'zka'
TotalFields.Visible = False
Visible = True
Width = 123
end
item
Expanded = False
FieldName = 'Nazev'
Title.Alignment = taCenter
Title.Caption = 'Popis'
TotalFields.Visible = False
Visible = True
Width = 227
end
item
Alignment = taCenter
Expanded = False
FieldName = 'Forma'
LookupDataSet = tblFormaX
LookupKeyField = 'RegCis'
LookupListFields = 'Forma'
TotalFields.Visible = False
Visible = True
Width = 155
end
item
Alignment = taCenter
Expanded = False
FieldName = 'FormaSN'
Title.Caption = 'V'#253'r.'#269#237'slo'
TotalFields.Visible = False
Visible = True
Width = 158
end
item
Alignment = taCenter
Expanded = False
FieldName = 'KsVeForme'
Title.Caption = 'Ks/forma'
TotalFields.Visible = False
Visible = True
Width = 89
end
item
Alignment = taCenter
Expanded = False
FieldName = 'KsDobre'
Title.Caption = 'Dobr'#233' ks'
Visible = True
Width = 100
end
item
Alignment = taCenter
Expanded = False
FieldName = 'KsZmetky1'
Title.Caption = 'Z'
Visible = True
Width = 115
end
item
Alignment = taCenter
Expanded = False
FieldName = 'KsZmetky2'
Title.Caption = 'Z'
Visible = True
end
item
Alignment = taCenter
Expanded = False
FieldName = 'KsZmetky3'
Title.Caption = 'Z'
Visible = True
Width = 103
end>
end
object tbl: TVirtualTable
FieldDefs = <
item
Name = 'IDPostup'
DataType = ftInteger
end
item
Name = 'RegCis'
DataType = ftString
Size = 20
end
item
Name = 'Nazev'
DataType = ftString
Size = 100
end
item
Name = 'KsDobre'
DataType = ftSmallint
end
item
Name = 'IDVyrCS'
DataType = ftInteger
end
item
Name = 'FormaSN'
DataType = ftString
Size = 30
end
item
Name = 'IDradek'
DataType = ftInteger
end
item
Name = 'IDnaradi'
DataType = ftInteger
end
item
Name = 'KsZmetky1'
DataType = ftInteger
end
item
Name = 'KsZmetky2'
DataType = ftInteger
end
item
Name = 'KsZmetky3'
DataType = ftInteger
end
item
Name = 'KsVeForme'
DataType = ftInteger
end
item
Name = 'Forma'
DataType = ftString
Size = 30
end>
Left = 124
Top = 107
Data = {
04000D0008004944506F73747570030000000000000006005265674369730100
14000000000005004E617A6576010064000000000007004B73446F6272650200
00000000000007004944567972435303000000000000000700466F726D61534E
01001E000000000007004944726164656B0300000000000000080049446E6172
616469030000000000000009004B735A6D65746B793103000000000000000900
4B735A6D65746B7932030000000000000009004B735A6D65746B793303000000
0000000009004B735665466F726D6503000000000000000500466F726D610100
1E0000000000000000000000}
object tblIDPrPostup: TIntegerField
FieldName = 'IDPostup'
Visible = False
end
object tblRegCis: TStringField
FieldName = 'RegCis'
end
object tblNazev: TStringField
FieldName = 'Nazev'
Size = 100
end
object tblKsDobre: TSmallintField
FieldName = 'KsDobre'
end
object tblIDVyrCS: TIntegerField
FieldName = 'IDVyrCS'
Visible = False
end
object tblFormaSN: TStringField
FieldName = 'FormaSN'
Size = 30
end
object tblIDradek: TIntegerField
FieldName = 'IDradek'
Visible = False
end
object tblIDnaradi: TIntegerField
FieldName = 'IDnaradi'
Visible = False
end
object tblKsZmetky1: TIntegerField
FieldName = 'KsZmetky1'
end
object tblKsZmetky2: TIntegerField
FieldName = 'KsZmetky2'
end
object tblKsZmetky3: TIntegerField
FieldName = 'KsZmetky3'
end
object tblKsNaPlate: TIntegerField
FieldName = 'KsVeForme'
end
object tblForma: TStringField
FieldName = 'Forma'
LookupKeyFields = 'RegCis'
LookupResultField = 'Forma'
Size = 30
end
object tblcolZakazka: TStringField
FieldName = 'Zakazka'
Size = 15
end
end
object ds: TDataSource
DataSet = tbl
Left = 73
Top = 107
end
object dsForma: TDataSource
DataSet = tblFormaX
Left = 196
Top = 110
end
object tblFormaX: TVirtualTable
Left = 252
Top = 111
Data = {04000000000000000000}
object tblFormaXRegCis: TStringField
FieldName = 'RegCis'
Size = 30
end
object tblFormaXForma: TStringField
FieldName = 'Forma'
Size = 30
end
end
end

458
frmOdvLisX.pas Normal file
View File

@ -0,0 +1,458 @@
unit frmOdvLisX;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, System.StrUtils,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.Mask, RzEdit, TBPackageU, ddPlugin_TLB, Vcl.ExtCtrls,
Vcl.ComCtrls, Data.DB, Vcl.Grids, Vcl.DBGrids, VirtualDataSet, MemDS, VirtualTable, NxGridView6, NxColumns6,
NxControls6, NxCustomGrid6, NxTypes6, NxVirtualGrid6, NxDBCells6, NxDBGrid6, NxDBColumns6, NxIntf6, NxEdit6,
Vcl.Menus, XDBGrids;
const
tblPlan = '[dbo].[_hdc_TabPlanNasazeniLisu]';
tblPlanR = '[dbo].[_hdc_TabPlanNasazeniLisuR]';
tblOdlitky = '[dbo].[_hdc_TabOdlitky]';
type
TZavady = record
poz: integer;
kod: string;
popis: string;
end;
TformOdvLisX = class(TForm)
btnOK: TButton;
btnStorno: TButton;
lblZapisDat: TLabel;
edtBarcode: TLabeledEdit;
selBarcode: TButtonedEdit;
edtCisZam: TLabeledEdit;
selCisZam: TButtonedEdit;
edtVstriku: TRzNumericEdit;
Label1: TLabel;
tbl: TVirtualTable;
ds: TDataSource;
grd: TNextDBGrid6;
view: TNxReportGridView6;
colRegCis: TNxDBTextColumn6;
colNazev: TNxDBTextColumn6;
colKsDobre: TNxDBNumberColumn6;
tblIDPrPostup: TIntegerField;
tblRegCis: TStringField;
tblNazev: TStringField;
tblKsDobre: TSmallintField;
lblPrijmeni: TLabel;
lblPlan: TLabel;
tblIDVyrCS: TIntegerField;
tblFormaSN: TStringField;
tblIDradek: TIntegerField;
tblIDnaradi: TIntegerField;
tblKsZmetky1: TIntegerField;
tblKsZmetky2: TIntegerField;
tblKsZmetky3: TIntegerField;
tblKsNaPlate: TIntegerField;
colFormaSN: TNxDBTextColumn6;
colZmetky1: TNxDBNumberColumn6;
colZmetky2: TNxDBNumberColumn6;
colZmetky3: TNxDBNumberColumn6;
colKsVeForme: TNxDBNumberColumn6;
Label2: TLabel;
tblForma: TStringField;
tblcolZakazka: TStringField;
colZakazka: TNxDBTextColumn6;
dsForma: TDataSource;
tblFormaX: TVirtualTable;
tblFormaXRegCis: TStringField;
tblFormaXForma: TStringField;
colForma: TNxDBComboBoxColumn6;
grdX: TXDBGrid;
procedure FormShow(Sender: TObject);
procedure btnStornoClick(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure btnOKClick(Sender: TObject);
procedure edtBarcodeExit(Sender: TObject);
procedure selBarcodeClick(Sender: TObject);
procedure selCisZamClick(Sender: TObject);
procedure selCisZamExit(Sender: TObject);
procedure edtCisZamExit(Sender: TObject);
procedure viewGetCellColor(Sender: TObject; ACol, ARow: Integer;
var CellColor: TColor; State: TNxCellPaintingState);
procedure edtVstrikuExit(Sender: TObject);
procedure colFormaSetCell(Sender: TObject; ACol, ARow: Integer;
Cell: INxBaseCell);
procedure grdCellClick(Sender: TObject; ACol, ARow: Integer;
Button: TMouseButton);
private
public
Helios: IHelios;
jeTest: Boolean;
end;
var
formOdvLis: TformOdvLisX;
idPlan, bidPlan: integer;
oVar: OleVariant;
zavady: TArray<TZavady>;
implementation
uses System.DateUtils, helUtils;
{$R *.dfm}
procedure TformOdvLisX.btnOKClick(Sender: TObject);
var lSQL, idcko: string;
begin
lblZapisDat.Visible:= true;
Self.Repaint;
btnOK.Enabled:= false;
btnStorno.Enabled:= false;
if (tbl.RecordCount>0) then
begin
lSQL:= 'INSERT #TabOdvodLis (IDPlan, CisZam, PocetVstriku) VALUES (' + idPlan.ToString + ', ' + edtCisZam.Text + ', ';
lSQL:= lSQL + StringReplace(FloatToStr(edtVstriku.Value), ',', '.', [rfReplaceAll]) + ')' + CRLF + 'SELECT SCOPE_IDENTITY()';
if (jeTest) then
begin
lSQL:= StringReplace(lSQL, '#TabOdv', 'dbo._temp_TabOdv', [rfReplaceAll]);
// lSQL:= StringReplace(lSQL, 'tempdb..', '', [rfReplaceAll]);
end;
with Helios.OpenSQL(lSQL) do
idcko:= VarToStr(FieldValues(0));
tbl.First;
while not(tbl.Eof) do
begin
lSQL:= 'INSERT #TabOdvodLisR (IDHlava, IDRadek, IDVyrCis, KsDobre, KsZmetky1, KodZav1, KsZmetky2, KodZav2, KsZmetky3, KodZav3, KsVeForme, IDPrPostup) VALUES (';
lSQL:= lSQL + idcko + ', ' + tbl.FieldByName('IDradek').AsString;
lSQL:= lSQL + ', NULL'; // IDVyrCis
lSQL:= lSQL + ', ' + StringReplace(tbl.FieldByName('KsDobre').AsString, '', '', [rfReplaceAll]);
lSQL:= lSQL + ', ' + StringReplace(tbl.FieldByName('KsZmetky1').AsString, '', '', [rfReplaceAll]) + ', N' + QuotedStr(IfThen(Length(zavady)>0, zavady[0].kod, ''));
lSQL:= lSQL + ', ' + StringReplace(tbl.FieldByName('KsZmetky2').AsString, '', '', [rfReplaceAll]) + ', N' + QuotedStr(IfThen(Length(zavady)>1, zavady[1].kod, ''));
lSQL:= lSQL + ', ' + StringReplace(tbl.FieldByName('KsZmetky3').AsString, '', '', [rfReplaceAll]) + ', N' + QuotedStr(IfThen(Length(zavady)>2, zavady[2].kod, ''));
lSQL:= lSQL + ', ' + StringReplace(tbl.FieldByName('KsVeForme').AsString, '', '', [rfReplaceAll]) + ', ' + tbl.FieldByName('IDPostup').AsString + ')';
if (jeTest) then
begin
lSQL:= StringReplace(lSQL, '#TabOdv', 'dbo._temp_TabOdv', [rfReplaceAll]);
// lSQL:= StringReplace(lSQL, 'tempdb..', '', [rfReplaceAll]);
end;
Helios.ExecSQL(lSQL);
tbl.Next;
end;
end;
if not(jeTest) then
Helios.ExecSQL('IF OBJECT_ID(''dbo.ep_Vosk_PlanLisu_Odvod'') IS NOT NULL EXEC dbo.ep_Vosk_PlanLisu_Odvod');
lblZapisDat.Visible:= false;
Self.Repaint;
btnOK.Enabled:= true;
btnStorno.Enabled:= true;
Close;
end;
procedure TformOdvLisX.btnStornoClick(Sender: TObject);
begin
Close;
end;
procedure TformOdvLisX.colFormaSetCell(Sender: TObject; ACol, ARow: Integer; Cell: INxBaseCell);
var lSQL: string;
begin
end;
procedure TformOdvLisX.edtBarcodeExit(Sender: TObject);
var lSQL, formy, sncka, nDokl, sVPr: string;
idPrikaz: integer;
begin
edtBarcode.Text:= Trim(edtBarcode.Text);
edtBarcode.Text:= helUtils.StripChars(edtBarcode.Text, ['''', '"', '-', ';', ' ']);
if (edtBarcode.Text<>'') then
begin
lblPlan.Caption:= '';
idPlan:= helUtils.getHeliosIntVal(Helios, 0, 'SELECT ID FROM ' + tblPlan + ' WHERE BarCode=N' + QuotedStr(edtBarcode.Text));
if (idPlan>0) then
begin
if not(tblFormaX.Active) then
tblFormaX.Open;
tblFormaX.Clear;
lSQL:= 'SELECT Lis + N'' / '' + CONVERT(nvarchar, DATEPART(day,Datum)) + N''.'' + CONVERT(nvarchar, DATEPART(month,Datum)) + N''.''';
lSQL:= lSQL + ' + CONVERT(nvarchar, DATEPART(year,Datum)) + N'' / '' + Smena FROM ' + tblPlan + ' WHERE ID=' + idPlan.ToString;
lblPlan.Caption:= helUtils.getHeliosStrVal(Helios, '', lSQL);
lSQL:= 'SELECT r.IDPrPostup, k.RegCis, k.Nazev1, r.IDvyrcis, vc.Nazev1, r.ID, nv.Naradi, ISNULL(o.KsVeForme,0), nvk.RegCis, nv.Doklad, vp.ID, z.CisloZakazky FROM ' + tblPlanR;
lSQL:= lSQL + ' r INNER JOIN ' + tblPrPost + ' p ON (p.ID=r.IDPrPostup) INNER JOIN ' + tblPrikaz + ' vp ON (p.IDPrikaz=vp.ID) INNER JOIN ' + tblKZ;
lSQL:= lSQL + ' k ON (k.ID=vp.IdTabKmen) LEFT JOIN ' + tblOdlitky + ' o ON (o.Odlitek=k.RegCis) LEFT JOIN ' + tblPrNVazby;
lSQL:= lSQL + ' nv ON (p.IDPrikaz=nv.IDPrikaz AND p.Doklad=nv.Doklad) LEFT JOIN dbo.TabVyrCS vc ON (vc.ID=r.IDvyrcis) LEFT JOIN ' + tblKZ;
lSQL:= lSQL + ' nvk ON (nv.Naradi=nvk.Id) LEFT JOIN ' + tblZak + ' z ON (z.ID=vp.IDZakazka) WHERE r.IDHlava=' + idPlan.ToString + ' ORDER BY r.ID';
with Helios.OpenSQL(lSQL) do
if (RecordCount>0) then
begin
if not(tbl.Active) then
tbl.Open;
tbl.Edit;
tbl.Clear; //Fields;
First;
while not(Eof) do
begin
tbl.Append;
tbl.FieldByName('IDPostup').AsString:= VarToStr(FieldValues(0));
tbl.FieldByName('RegCis').AsString:= VarToStr(FieldValues(1));
tbl.FieldByName('Nazev').AsString:= VarToStr(FieldValues(2));
tbl.FieldByName('KsDobre').AsExtended:= 0;
tbl.FieldByName('IDVyrCS').AsInteger:= StrToInt(IfThen(VarToStr(FieldValues(3))='', '-1', VarToStr(FieldValues(3))));
tbl.FieldByName('IDradek').AsInteger:= StrToInt(VarToStr(FieldValues(5)));
tbl.FieldByName('IDnaradi').AsInteger:= StrToInt(IfThen(VarToStr(FieldValues(6))='', '-1', VarToStr(FieldValues(6))));
tbl.FieldByName('Forma').AsString:= tbl.FieldByName('RegCis').AsString; //VarToStr(FieldValues(8));
tblFormaX.Append;
tblFormaX.FieldByName('RegCis').AsString:= tbl.FieldByName('RegCis').AsString;
tblFormaX.FieldByName('Forma').AsString:= 'Forma1';
tblFormaX.Post;
tblFormaX.Append;
tblFormaX.FieldByName('RegCis').AsString:= tbl.FieldByName('RegCis').AsString;
tblFormaX.FieldByName('Forma').AsString:= 'Forma2';
tblFormaX.Post;
sncka:= '';
nDokl:= VarToStr(FieldValues(9));
sVPr:= VarToStr(FieldValues(10));
if (nDokl<>'') then
begin
lSQL:= 'SELECT STRING_AGG(ne._VyrobniCislo, N'','') FROM ' + tblPrNVazby + ' n INNER JOIN ' + tblPrNVazbyE + ' ne ON (ne.ID=n.ID) WHERE n.Doklad=';
lSQL:= lSQL + nDokl + ' AND n.IDPrikaz=' + sVPr;
sncka:= helUtils.getHeliosStrVal(Helios, '', lSQL);
end;
tbl.FieldByName('FormaSN').AsString:= VarToStr(FieldValues(4));
if (tbl.FieldByName('FormaSN').AsString='') and (tbl.FieldByName('IDnaradi').AsInteger>0) then
tbl.FieldByName('FormaSN').AsString:= helUtils.getHeliosStrVal(Helios, '', 'SELECT Nazev1 FROM ' + tblKZ + ' WHERE ID=' + tbl.FieldByName('IDnaradi').AsInteger.ToString);
tbl.FieldByName('KsZmetky1').AsExtended:= 0;
tbl.FieldByName('KsZmetky2').AsExtended:= 0;
tbl.FieldByName('KsZmetky3').AsExtended:= 0;
tbl.FieldByName('KsVeForme').AsInteger:= StrToInt(VarToStr(FieldValues(7)));
tbl.FieldByName('Zakazka').AsString:= VarToStr(FieldValues(11));
tbl.Post;
Next;
end;
tbl.RecNo:= 1;
grd.Repaint;
end;
end;
edtCisZam.SetFocus;
end;
end;
procedure TformOdvLisX.edtCisZamExit(Sender: TObject);
var c: integer;
begin
lblPrijmeni.Caption:= '';
edtCisZam.Text:= Trim(edtCisZam.Text);
edtCisZam.Text:= helUtils.StripChars(edtCisZam.Text, ['''', '"', '-', ';', ' ']);
if (edtCisZam.Text<>'') then
if TryStrToInt(edtCisZam.Text, c) then
begin
if (helUtils.HeliosExistsTest(Helios, tblCZam, 'Cislo=' + c.ToString)) then
begin
lblPrijmeni.Caption:= helUtils.getHeliosStrVal(Helios, '', 'SELECT Prijmeni FROM ' + tblCZam + ' WHERE Cislo=' + c.ToString);
edtCisZam.Text:= StringOfChar('0', 6-Length(edtCisZam.Text)) + edtCisZam.Text;
edtVstriku.SetFocus;
end
else
begin
Helios.Error(#1'Zadan<61> osobn<62> <20><>slo nebylo nalezeno !'#1);
edtCisZam.SetFocus;
edtCisZam.SelectAll;
end;
end
else
begin
Helios.Error(#1'Zadan<61> znaky nejsou <20><>slo'#1);
edtCisZam.SetFocus;
edtCisZam.SelectAll;
end;
end;
procedure TformOdvLisX.edtVstrikuExit(Sender: TObject);
var cell: TGridCoord;
begin
if (grd.RowCount>0) then
begin
end;
end;
procedure TformOdvLisX.FormClose(Sender: TObject; var Action: TCloseAction);
begin
if (tbl.Active) then
tbl.Close;
Action:= caFree;
end;
procedure TformOdvLisX.FormShow(Sender: TObject);
var lSQL: string;
i, i2: integer;
begin
self.ParentWindow:= Helios.MainApplicationHandle;
self.Icon.Handle:= Helios.MainApplicationIconHandle;
for i:=0 to Self.ComponentCount-1 do
begin
if (Self.Components[i] is TButton) then
begin
(Self.Components[i] as TButton).Font.Name:= Helios.Font;
(Self.Components[i] as TButton).Font.Height:= Helios.FontHeight;
end;
if (Self.Components[i] is TButtonedEdit) then
begin
// (Self.Components[i] as TTB_3Button).Width:= 30;
// (Self.Components[i] as TTB_3Button).Height:= 30;
end;
end;
Helios.ExecSQL('IF OBJECT_ID(N''dbo._temp_TabOdvodLis'') IS NOT NULL DELETE FROM dbo._temp_TabOdvodLis WHERE Autor=SUSER_SNAME()');
Helios.ExecSQL('IF OBJECT_ID(N''dbo._temp_TabOdvodLisR'') IS NOT NULL DELETE FROM dbo._temp_TabOdvodLisR WHERE IDHlava NOT IN (SELECT ID FROM dbo._temp_TabOdvodLis)');
Helios.ExecSQL('IF OBJECT_ID(N''dbo._temp_TabOdvodLis'') IS NOT NULL IF NOT EXISTS(SELECT * FROM dbo._temp_TabOdvodLis) DROP TABLE dbo._temp_TabOdvodLis');
Helios.ExecSQL('IF OBJECT_ID(N''dbo._temp_TabOdvodLisR'') IS NOT NULL IF NOT EXISTS(SELECT * FROM dbo._temp_TabOdvodLisR) DROP TABLE dbo._temp_TabOdvodLisR');
Helios.ExecSQL('IF OBJECT_ID(N''tempdb..#TabOdvodLis'') IS NOT NULL DROP TABLE #TabOdvodLis');
Helios.ExecSQL('IF OBJECT_ID(N''tempdb..#TabOdvodLisR'') IS NOT NULL DROP TABLE #TabOdvodLisR');
lSQL:= 'IF OBJECT_ID(N''tempdb..#TabOdvodLis'') IS NULL CREATE TABLE #TabOdvodLis (ID INT IDENTITY(1,1) NOT NULL, IDPlan INT NOT NULL, CisZam INT NOT NULL,';
lSQL:= lSQL +' PocetVstriku SMALLINT NOT NULL DEFAULT 0, Autor NVARCHAR(80) NOT NULL DEFAULT SUSER_SNAME())' + CRLF;
lSQL:= lSQL + 'IF OBJECT_ID(N''tempdb..#TabOdvodLisR'') IS NULL CREATE TABLE #TabOdvodLisR (IDHlava INT NOT NULL, IDRadek INT, KsDobre SMALLINT NOT NULL DEFAULT 0,';
lSQL:= lSQL + ' IDVyrCis INT, IDNaradi INT, IDPrPostup INT, KsZmetky1 INT NOT NULL DEFAULT 0, KodZav1 NVARCHAR(15) DEFAULT N'''', KsZmetky2 INT NOT NULL DEFAULT 0,';
lSQL:= lSQL + ' KodZav2 NVARCHAR(15) DEFAULT N'''', KsZmetky3 INT NOT NULL DEFAULT 0, KodZav3 NVARCHAR(15) DEFAULT N'''', KsVeForme SMALLINT DEFAULT 1,';
lSQL:= lSQL + ' FormaSN NVARCHAR(100) DEFAULT N'''')';
if (jeTest) then
begin
lSQL:= StringReplace(lSQL, '#TabOdv', 'dbo._temp_TabOdv', [rfReplaceAll]);
lSQL:= StringReplace(lSQL, 'tempdb..', '', [rfReplaceAll]);
end;
Helios.ExecSQL(lSQL);
SetLength(zavady, 0);
lSQL:= 'SELECT TOP(3) z.kod, e._PopisEvidence, e._PoziceEvidence FROM ' + tblCZavadE + ' e INNER JOIN ' + tblCZavad + ' z ON (z.ID=e.ID)';
lSQL:= lSQL + ' WHERE CHARINDEX(N''- VOSK'', CONVERT(nvarchar,Poznamka))>0 AND e._PoziceEvidence IS NOT NULL ORDER BY e._PoziceEvidence';
with Helios.OpenSQL(lSQL) do
if (RecordCount>0) then
begin
SetLength(zavady, RecordCount);
i:= 0;
First;
while not(EOF) do
begin
zavady[i].kod:= VarToStr(FieldValues(0));
zavady[i].popis:= VarToStr(FieldValues(1));
zavady[i].poz:= StrToInt(VarToStr(FieldValues(2)));
Inc(i);
Next;
end;
end;
if (Length(zavady)>0) then
begin
for i:=0 to Length(zavady)-1 do
begin
i2:= grd.Columns.ItemBy['colZmetky' + (i+1).ToString].Index;
grd.Columns.Item[i2].Header.Caption:= 'Z ' + zavady[i].popis;
grd.Columns.Item[i2].Enabled:= true;
end;
end;
grd.Repaint;
end;
procedure TformOdvLisX.grdCellClick(Sender: TObject; ACol, ARow: Integer; Button: TMouseButton);
var lSQL: string;
begin
if (ACol=colForma.Index) then
begin
end;
end;
procedure TformOdvLisX.selBarcodeClick(Sender: TObject);
begin
edtBarcode.Text:= Trim(edtBarcode.Text);
oVar:= edtBarcode.Text;
bidPlan:= helUtils.getHeliosIntVal(Helios, 0, 'SELECT 100000+Cislo FROM ' + tblObecPrehled + ' WHERE NazevSys=N''hvw_PlanNasazeniLisu''');
if (bidPlan>0) then
if Helios.Prenos(bidPlan, 'hvw_PlanNasazeniLisu.Barcode', oVar, 'hvw_PlanNasazeniLisu.Ukonceno=0', 'Vyberte pl<70>n', true) then
begin
edtBarcode.Text:= VarToStr(oVar);
edtBarcodeExit(Sender);
end;
edtCisZam.SetFocus;
end;
procedure TformOdvLisX.selCisZamClick(Sender: TObject);
begin
if Helios.Prenos(bidCisZam, 'TabCisZam.Cislo', oVar, '', 'Vyberte zam<61>stnance', true) then
begin
edtCisZam.Text:= VarToStr(oVar);
selCisZamExit(Sender);
end;
end;
procedure TformOdvLisX.selCisZamExit(Sender: TObject);
begin
edtCisZam.Text:= helUtils.StripChars(edtCisZam.Text, ['''', '"', '-', ';', ' ']);
edtCisZamExit(Sender);
edtVstriku.SetFocus;
end;
procedure TformOdvLisX.viewGetCellColor(Sender: TObject; ACol, ARow: Integer; var CellColor: TColor; State: TNxCellPaintingState);
begin
if (grd.RowCount>=ARow+1) then
if (ACol=colKsVeForme.Index) then
if (grd.Cells[ACol, ARow]='0') then
begin
CellColor:= clRed;
grd.Cell[ACol, ARow].Enabled:= true;
end
else
begin
// CellColor:= clWindow;
grd.Cell[ACol, ARow].Enabled:= false;
end;
end;
end.

1006
frmOdvTavby.dfm Normal file

File diff suppressed because it is too large Load Diff

2201
frmOdvTavby.pas Normal file

File diff suppressed because it is too large Load Diff

16
frmPlanLis.dfm Normal file
View File

@ -0,0 +1,16 @@
object formPlanLis: TformPlanLis
Left = 0
Top = 0
Caption = ' Sm'#283'nov'#253' pl'#225'n nasazen'#237
ClientHeight = 617
ClientWidth = 909
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = []
OldCreateOrder = False
PixelsPerInch = 96
TextHeight = 13
end

24
frmPlanLis.pas Normal file
View File

@ -0,0 +1,24 @@
unit frmPlanLis;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs;
type
TformPlanLis = class(TForm)
private
{ Private declarations }
public
{ Public declarations }
end;
var
formPlanLis: TformPlanLis;
implementation
{$R *.dfm}
end.

718
frmSchvaleniZak.dfm Normal file
View File

@ -0,0 +1,718 @@
object formSchvaleniZak: TformSchvaleniZak
Left = 0
Top = 0
BorderIcons = [biSystemMenu]
BorderStyle = bsSingle
Caption = ' Schv'#225'len'#237' zak'#225'zky'
ClientHeight = 734
ClientWidth = 896
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -19
Font.Name = 'Tahoma'
Font.Style = []
Position = poOwnerFormCenter
OnClose = FormClose
OnShow = FormShow
TextHeight = 23
object Label1: TLabel
Left = 107
Top = 180
Width = 85
Height = 23
Caption = 'Vyj'#225'd'#345'en'#237':'
end
object Label2: TLabel
Left = 305
Top = 180
Width = 91
Height = 23
Caption = 'Pozn'#225'mka:'
end
object Label3: TLabel
Left = 15
Top = 126
Width = 112
Height = 23
Caption = 'Aktu'#225'ln'#237' stav:'
end
object lblStav: TLabel
Left = 189
Top = 126
Width = 274
Height = 23
AutoSize = False
Font.Charset = DEFAULT_CHARSET
Font.Color = clRed
Font.Height = -19
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
end
object Label4: TLabel
Left = 15
Top = 90
Width = 166
Height = 23
Caption = 'Po'#382'adovan'#233' datum:'
end
object lblDatReq: TLabel
Left = 189
Top = 90
Width = 142
Height = 23
AutoSize = False
Font.Charset = DEFAULT_CHARSET
Font.Color = clRed
Font.Height = -19
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
end
object Label5: TLabel
Left = 366
Top = 90
Width = 78
Height = 23
Caption = 'Mno'#382'stv'#237':'
end
object lblMnoz: TLabel
Left = 453
Top = 90
Width = 142
Height = 23
AutoSize = False
end
object Label6: TLabel
Left = 15
Top = 323
Width = 69
Height = 23
Caption = 'Historie:'
end
object lblDatObr: TLabel
Left = 306
Top = 312
Width = 105
Height = 23
Caption = 'Datum OBR:'
Visible = False
end
object edtZakazka: TLabeledEdit
Left = 15
Top = 48
Width = 145
Height = 31
Color = 15790320
EditLabel.Width = 74
EditLabel.Height = 23
EditLabel.Caption = 'Zak'#225'zka:'
ReadOnly = True
TabOrder = 0
Text = ''
end
object edtZakazkaNazev: TLabeledEdit
Left = 366
Top = 48
Width = 503
Height = 31
EditLabel.Width = 57
EditLabel.Height = 23
EditLabel.Caption = 'N'#225'zev:'
ReadOnly = True
TabOrder = 1
Text = ''
end
object cbStav: TComboBox
Left = 107
Top = 207
Width = 175
Height = 31
Style = csDropDownList
ItemIndex = 0
TabOrder = 2
Text = 'Souhlas'
Items.Strings = (
'Souhlas'
'Vr'#225'tit')
end
object edtRole: TLabeledEdit
Left = 15
Top = 207
Width = 64
Height = 31
Color = 15790320
EditLabel.Width = 43
EditLabel.Height = 23
EditLabel.Caption = 'Role:'
ReadOnly = True
TabOrder = 3
Text = ''
end
object edtPoznamka: TMemo
Left = 305
Top = 207
Width = 568
Height = 97
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -19
Font.Name = 'Tahoma'
Font.Style = []
MaxLength = 255
ParentFont = False
ScrollBars = ssVertical
TabOrder = 4
end
object btnOK: TButton
Left = 534
Top = 672
Width = 142
Height = 52
Caption = 'OK'
TabOrder = 7
OnClick = btnOKClick
end
object btnStorno: TButton
Left = 732
Top = 672
Width = 142
Height = 52
Caption = 'Storno'
TabOrder = 8
OnClick = btnStornoClick
end
object btnAdd: TBitBtn
Left = 150
Top = 275
Width = 64
Height = 55
Glyph.Data = {
36100000424D3610000000000000360000002800000020000000200000000100
2000000000000010000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000100000001000000010000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000001000000010000000400000005000000040000
0001000000010000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000100000002000000060000000F000000150000000F0000
0007000000020000000100000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000010000000500000012321E1166A8653BFF2C180D660000
0012000000050000000100000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000001000000030000000C0805032C9A613BEBD2A46EFF8C512FEC0704
022D0000000C0000000300000001000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000100000007000000175F3B23A4C49161FFD5A871FFBB8657FF5630
1CA7000000180000000700000001000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000030000000F21140D4EB47A50FDD8AD78FFD4A86FFFD6AB76FFA569
41FD1D110A500000001000000004000000010000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0002000000090201011D8C5B3AD6D2A878FFD6AB74FFD5A972FFD6AA73FFCD9F
6DFF804D2DD90201011F00000009000000020000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000010000
0005000000114A312083C49367FFDAB07DFFD6AB74FFD6AA74FFD6AA73FFD8AE
79FFBA8357FF4629188700000013000000050000000100000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000020000
000B130C0835B17A54F6DCB687FFD8AD78FFD7AD77FFD7AD76FFD6AC75FFD6AB
75FFD8AF7DFFA26841F7110A06370000000C0000000300000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000001000000060000
00137A5338BBD4AB81FFDAB37FFFD8AF79FFD9AF78FFD8AE78FFD7AD77FFD8AD
77FFDAAF7BFFCB9D6FFF71452BBE000000160000000700000001000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000030000000C3525
1960C5946DFFDFBC8CFFD9B17CFFD9B17BFFD9B17BFFD9B07AFFD8AF7AFFD8AF
79FFD8AE79FFDCB682FFB68158FF332014660000000E00000004000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000020000000709060420A879
55E9E0C097FFDBB580FFDAB27EFFDAB27DFFDAB27DFFDAB27DFFDAB17CFFD9B0
7BFFD9B07AFFD9B07CFFD8B282FF9A6643EA0805032300000008000000020000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000001000000040000000E674A349BD4AE
89FFDFBB8CFFDBB580FFDBB581FFDBB581FFDBB480FFDBB47FFFDAB47EFFDAB3
7EFFD9B27DFFDAB17CFFDCB684FFC99A70FF613F299F00000011000000050000
0001000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000200000009231A1242C39671FDE5C8
9EFFDCB784FFDCB784FFDDB683FFDCB783FFDCB682FFDCB682FFDBB581FFDBB5
80FFDAB380FFDAB37EFFDAB27DFFDEBC8CFFB58158FD21150E460000000B0000
0002000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000100000005020201129B7152D3E2C5A2FFDFBD
8CFFDEBB88FFE1C090FFE3C594FFE4C594FFE4C796FFE5C796FFE3C493FFE2C1
90FFE0BE8DFFDEBA88FFDBB481FFDBB582FFD9B287FF906141D6020101160000
0006000000010000000000000000000000000000000000000000000000000000
000000000000000000000000000300000009523D2D79D4B08DFFE6CBA2FFE6CB
9BFFE8CEA0FFE8CEA0FFE7CD9FFFE7CC9DFFE7CC9DFFE6CA9BFFE6C999FFE5C8
98FFE4C696FFE4C595FFE3C393FFE0BF8DFFE1BF90FFC79A70FF4E35247E0000
000C000000030000000000000000000000000000000000000000000000000000
000000000000000000010000000515100C28BF9472F5EEDBBBFFEBD4A7FFEAD2
A5FFEAD2A5FFEAD1A4FFE9D1A3FFEAD0A2FFE9CFA2FFE8CEA0FFE7CD9EFFE7CB
9CFFE7CA9BFFE6C999FFE4C797FFE4C695FFE3C594FFE5C89EFFB2805BF6130D
092C000000070000000100000000000000000000000000000000000000000000
000000000000000000020000000787664DB3EAD8C5FFFBF6ECFFFAF6EBFFFAF6
EBFFFAF6EAFFF6EDD7FFECD4A8FFEBD3A6FFEAD3A6FFE9D2A4FFE9D0A3FFE8CF
A1FFE8CE9FFFEEDAB7FFF6EBD6FFF8F1E2FFF8F0E0FFF8EFDFFFE4CDB5FF7F5A
3EB8000000090000000200000000000000000000000000000000000000000000
0000000000000000000100000006C89A73FFC79973FFC69872FFC69871FFC597
70FFC59770FFF8EFDBFFEDD8ACFFEDD7ABFFECD6A9FFECD5A9FFEBD4A7FFEAD2
A5FFEAD1A4FFF0DEBCFFC18F69FFC18E67FFC18E67FFC08D66FFBF8D66FFBF8C
65FF000000080000000200000000000000000000000000000000000000000000
000000000000000000010000000300000006000000090000000A0000000C0000
0011C79973FFF9F0DEFFEEDBB0FFEEDAAEFFEED9AEFFEED8ACFFEDD7ABFFECD6
AAFFEBD4A8FFF2E1C1FFB8835DFF000000150000000F0000000D0000000C0000
0008000000040000000100000000000000000000000000000000000000000000
0000000000000000000000000001000000010000000200000002000000040000
000AC99D77FFF9F3E2FFF1DEB4FFF0DDB3FFF0DDB1FFEFDCB1FFEEDAAFFFEED9
ADFFEDD8ACFFF3E5C6FFBA8660FF0000000D0000000500000003000000020000
0002000000010000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000020000
0008CA9F79FFFAF5E6FFF2E1B8FFF1E0B7FFF1DFB5FFF0DEB4FFF0DDB2FFEFDC
B1FFEFDAB0FFF4E7CAFFBB8A64FF0000000A0000000300000001000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000020000
0007CCA27CFFFBF6E7FFF3E3BAFFF3E3BAFFF2E2B9FFF2E1B8FFF2E0B6FFF1DE
B5FFF0DDB3FFF5EACDFFBF8D66FF000000090000000200000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000010000
0006CDA47EFFFCF7E9FFF4E6BEFFF4E5BDFFF3E5BCFFF3E3BAFFF3E3B9FFF2E1
B8FFF1E0B6FFF7ECD2FFC09169FF000000080000000200000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000010000
0005CFA680FFFCF8ECFFF5E8C0FFF5E8C0FFF5E6BFFFF5E6BDFFF4E5BCFFF3E4
BBFFF3E2B9FFF7EED4FFC1936CFF000000070000000200000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000010000
0003CFA983FFFEFCF6FFFEFCF6FFFDFCF6FFFDFCF5FFFDFBF4FFFDFBF4FFFDFB
F4FFFDFBF4FFFDFBF3FFC3956FFF000000050000000100000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0002967A5FB8D0A985FFD1A984FFD0A984FFD0A883FFD0A883FFD0A882FFCFA8
82FFCFA782FFCEA681FF8D6C51B9000000030000000100000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0001000000020000000200000003000000030000000300000003000000030000
0003000000030000000300000002000000010000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000010000000100000001000000010000
0001000000010000000100000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000}
TabOrder = 6
OnClick = btnAddClick
end
object grd: TNextDBGrid6
Left = 13
Top = 355
Width = 861
Height = 268
ParentColor = False
TabOrder = 9
ActiveView = grdView
ActiveViewIndex = 0
AlternatingRowColor = clBtnFace
AppearanceOptions = [aoAlternatingRowColors, aoHintIndicators, aoStyleColors]
Options = [goArrowEndEditing, goAutoHideScrollBars, goExitEndEditing, goTabLeaveControl]
RightClickDeselect = False
RightClickSelect = False
RowHeight = 33
ScrollBars = [sbVertical]
SelectFullRow = True
UserDefinedColorPalette.GeometryHoverColor = clBlack
OnCellDblClick = grdCellDblClick
DataSource = ds
object grdView: TNxReportGridView6
ColumnMoving = False
GridLines = True
HeaderHeight = 26
OnHeaderMouseDown = grdViewHeaderMouseDown
end
object colRole: TNxDBTextColumn6
Alignment = taCenter
Font.Charset = DEFAULT_CHARSET
Font.Color = clBlack
Font.Height = -19
Font.Name = 'Tahoma'
Font.Style = []
Footer.Font.Charset = DEFAULT_CHARSET
Footer.Font.Color = clWindowText
Footer.Font.Height = -11
Footer.Font.Name = 'Tahoma'
Footer.Font.Style = []
Footer.FormatMask = '#,##0.00'
Header.Alignment = taCenter
Header.Caption = 'Role'
Header.Font.Charset = DEFAULT_CHARSET
Header.Font.Color = clRed
Header.Font.Height = -19
Header.Font.Name = 'Tahoma'
Header.Font.Style = []
Header.ParentFont = False
Index = 0
ParentFont = False
PlaceholderText = 'Text Text'
Position = 0
Width = 50
OnGetHint = colRoleGetHint
DataBinding.FieldName = 'colRole'
end
object colDatum: TNxDBDateColumn6
Alignment = taCenter
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -19
Font.Name = 'Tahoma'
Font.Style = []
Footer.Font.Charset = DEFAULT_CHARSET
Footer.Font.Color = clWindowText
Footer.Font.Height = -11
Footer.Font.Name = 'Tahoma'
Footer.Font.Style = []
Footer.FormatMask = '#,##0.00'
Header.Alignment = taCenter
Header.Caption = 'Datum'
Header.Font.Charset = DEFAULT_CHARSET
Header.Font.Color = clRed
Header.Font.Height = -19
Header.Font.Name = 'Tahoma'
Header.Font.Style = []
Header.ParentFont = False
Index = 1
ParentFont = False
PlaceholderText = '07.09.2020'
Position = 1
Width = 190
OnGetText = colDatumGetText
FormatMask = 'd.m.yyyy hh:nn:ss'
DataBinding.FieldName = 'colDatum'
InsertString = '30.12.1899'
end
object colStav: TNxDBTextColumn6
Alignment = taCenter
Font.Charset = DEFAULT_CHARSET
Font.Color = clBlack
Font.Height = -19
Font.Name = 'Tahoma'
Font.Style = []
Footer.Font.Charset = DEFAULT_CHARSET
Footer.Font.Color = clWindowText
Footer.Font.Height = -11
Footer.Font.Name = 'Tahoma'
Footer.Font.Style = []
Footer.FormatMask = '#,##0.00'
Header.Alignment = taCenter
Header.Caption = 'Stav'
Header.Font.Charset = DEFAULT_CHARSET
Header.Font.Color = clRed
Header.Font.Height = -19
Header.Font.Name = 'Tahoma'
Header.Font.Style = []
Header.ParentFont = False
Index = 2
ParentFont = False
PlaceholderText = 'Text Text'
Position = 2
Width = 170
DataBinding.FieldName = 'colStav'
end
object colPozn: TNxDBMemoColumn6
Font.Charset = DEFAULT_CHARSET
Font.Color = clBlack
Font.Height = -19
Font.Name = 'Tahoma'
Font.Style = []
Footer.Font.Charset = DEFAULT_CHARSET
Footer.Font.Color = clWindowText
Footer.Font.Height = -11
Footer.Font.Name = 'Tahoma'
Footer.Font.Style = []
Footer.FormatMask = '#,##0.00'
Header.Caption = 'Pozn'#225'mka'
Header.Font.Charset = DEFAULT_CHARSET
Header.Font.Color = clRed
Header.Font.Height = -19
Header.Font.Name = 'Tahoma'
Header.Font.Style = []
Header.ParentFont = False
Index = 3
ParentFont = False
PlaceholderText = 'The quick brown fox jumps over the lazy dog'
Position = 3
Width = 420
OnGetHint = colPoznGetHint
DataBinding.FieldName = 'colPoznamka'
end
object colHistID: TNxDBNumberColumn6
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -19
Font.Name = 'Tahoma'
Font.Style = []
Footer.Font.Charset = DEFAULT_CHARSET
Footer.Font.Color = clWindowText
Footer.Font.Height = -11
Footer.Font.Name = 'Tahoma'
Footer.Font.Style = []
Footer.FormatMask = '#,##0.00'
Header.Caption = 'HistID'
Header.Font.Charset = DEFAULT_CHARSET
Header.Font.Color = clWindowText
Header.Font.Height = -11
Header.Font.Name = 'Tahoma'
Header.Font.Style = []
Index = 4
PlaceholderText = '1742.50'
Position = 4
Visible = False
FormatMask = '#,##0.00'
Increment = 1.000000000000000000
DataBinding.FieldName = 'colHistID'
InsertString = '0'
end
object colAutor: TNxDBTextColumn6
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -19
Font.Name = 'Tahoma'
Font.Style = []
Footer.Font.Charset = DEFAULT_CHARSET
Footer.Font.Color = clWindowText
Footer.Font.Height = -11
Footer.Font.Name = 'Tahoma'
Footer.Font.Style = []
Footer.FormatMask = '#,##0.00'
Header.Caption = 'Autor'
Header.Font.Charset = DEFAULT_CHARSET
Header.Font.Color = clWindowText
Header.Font.Height = -11
Header.Font.Name = 'Tahoma'
Header.Font.Style = []
Index = 5
PlaceholderText = 'Text Text'
Position = 5
Visible = False
DataBinding.FieldName = 'colAutor'
end
object colJenVDO: TNxDBNumberColumn6
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -19
Font.Name = 'Tahoma'
Font.Style = []
Footer.Font.Charset = DEFAULT_CHARSET
Footer.Font.Color = clWindowText
Footer.Font.Height = -11
Footer.Font.Name = 'Tahoma'
Footer.Font.Style = []
Footer.FormatMask = '#,##0.00'
Header.Caption = 'jenVDO'
Header.Font.Charset = DEFAULT_CHARSET
Header.Font.Color = clWindowText
Header.Font.Height = -11
Header.Font.Name = 'Tahoma'
Header.Font.Style = []
Index = 6
PlaceholderText = '1742.50'
Position = 6
Visible = False
FormatMask = '#,##0.00'
Max = 1.000000000000000000
NumericEditOptions = []
Increment = 1.000000000000000000
DataBinding.FieldName = 'colJenVDO'
InsertString = '0'
end
object colDatumObr: TNxDBTimeColumn6
Alignment = taCenter
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -19
Font.Name = 'Tahoma'
Font.Style = []
Footer.Font.Charset = DEFAULT_CHARSET
Footer.Font.Color = clWindowText
Footer.Font.Height = -11
Footer.Font.Name = 'Tahoma'
Footer.Font.Style = []
Footer.FormatMask = '#,##0.00'
Header.Caption = 'DatumOBR'
Header.Font.Charset = DEFAULT_CHARSET
Header.Font.Color = clWindowText
Header.Font.Height = -11
Header.Font.Name = 'Tahoma'
Header.Font.Style = []
Index = 7
PlaceholderText = 'Text Text'
Position = 7
Visible = False
HoursText = 'H'
MinutesText = 'M'
DataBinding.FieldName = 'colDatumOBR'
end
object colVDOproOBR: TNxDBCheckBoxColumn6
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -19
Font.Name = 'Tahoma'
Font.Style = []
Footer.Font.Charset = DEFAULT_CHARSET
Footer.Font.Color = clWindowText
Footer.Font.Height = -12
Footer.Font.Name = 'Segoe UI'
Footer.Font.Style = []
Footer.FormatMask = '#,##0.00'
Header.Caption = 'VDOproOBR'
Header.Font.Charset = DEFAULT_CHARSET
Header.Font.Color = clWindowText
Header.Font.Height = -12
Header.Font.Name = 'Segoe UI'
Header.Font.Style = []
Index = 8
PlaceholderText = 'True'
Position = 8
Visible = False
CheckedImageIndex = -1
UncheckedImageIndex = -1
DataBinding.FieldName = 'colVDOproOBR'
InsertString = 'False'
end
end
object cbJenVDO: TCheckBox
Left = 117
Top = 244
Width = 154
Height = 25
Caption = ' pro VDO'
TabOrder = 10
end
object edtRegCis: TLabeledEdit
Left = 180
Top = 48
Width = 169
Height = 31
Color = 15790320
EditLabel.Width = 81
EditLabel.Height = 23
EditLabel.Caption = 'Reg.'#269#237'slo:'
ReadOnly = True
TabOrder = 11
Text = ''
end
object edtDatObr: TDateTimePicker
Left = 426
Top = 308
Width = 135
Height = 31
Date = 44386.000000000000000000
Time = 0.350455891202727800
TabOrder = 5
Visible = False
end
object mInfo: TMemo
Left = 15
Top = 630
Width = 464
Height = 96
Color = 15790320
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -16
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
ReadOnly = True
TabOrder = 12
end
object cbZmenaDatumKonZakazka: TCheckBox
Left = 569
Top = 312
Width = 185
Height = 25
Caption = 'Zm'#283'na Datum KON'
TabOrder = 13
end
object tbl: TFDMemTable
AfterPost = tblAfterPost
FetchOptions.AssignedValues = [evMode]
FetchOptions.Mode = fmAll
ResourceOptions.AssignedValues = [rvSilentMode]
ResourceOptions.SilentMode = True
UpdateOptions.AssignedValues = [uvCheckRequired, uvAutoCommitUpdates]
UpdateOptions.CheckRequired = False
UpdateOptions.AutoCommitUpdates = True
Left = 633
Top = 141
object tblcolDatum: TDateTimeField
FieldName = 'colDatum'
DisplayFormat = 'd.m.yyyy hh:nn:ss'
end
object tblcolStav: TStringField
FieldName = 'colStav'
Size = 30
end
object tblcolPozn: TStringField
FieldName = 'colPoznamka'
Size = 500
end
object tblcolHistID: TIntegerField
FieldName = 'colHistID'
end
object tblcolRole: TStringField
FieldName = 'colRole'
Size = 5
end
object tblcolAutor: TStringField
FieldName = 'colAutor'
Size = 50
end
object tblcolJenVDO: TSmallintField
FieldName = 'colJenVDO'
Visible = False
end
object tblcolDatumOBR: TDateField
FieldName = 'colDatumOBR'
end
object tblcolVDOproOBR: TSmallintField
FieldName = 'colVDOproOBR'
end
object tblcolOBRproVDO: TSmallintField
FieldName = 'colOBRproVDO'
end
object tblcolDatumVDO: TDateField
FieldName = 'colDatumVDO'
end
object tblcolPoznamkaR: TSmallintField
FieldName = 'colPoznamkaR'
end
object tblcolPoznamka2: TStringField
FieldName = 'colPoznamka2'
Size = 500
end
end
object ds: TDataSource
DataSet = tbl
Left = 595
Top = 141
end
end

1018
frmSchvaleniZak.pas Normal file

File diff suppressed because it is too large Load Diff

506
frmVstupDat.dfm Normal file
View File

@ -0,0 +1,506 @@
object formVstupDat: TformVstupDat
Left = 0
Top = 0
BorderIcons = [biSystemMenu]
BorderStyle = bsSingle
Caption = ' VSTUP DAT '
ClientHeight = 652
ClientWidth = 854
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = []
OldCreateOrder = False
Position = poOwnerFormCenter
OnActivate = FormActivate
OnClose = FormClose
OnShow = FormShow
PixelsPerInch = 96
TextHeight = 25
object Label1: TLabel
Left = 33
Top = 81
Width = 134
Height = 40
Caption = 'Skladem:'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -33
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
end
object Label2: TLabel
Left = 63
Top = 161
Width = 146
Height = 40
Alignment = taRightJustify
Caption = 'Z v'#253'roby :'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -33
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
end
object Label3: TLabel
Left = 37
Top = 332
Width = 172
Height = 40
Alignment = taRightJustify
Caption = 'Expedovat :'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -33
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
end
object lblSkladem: TLabel
Left = 225
Top = 74
Width = 117
Height = 49
Alignment = taCenter
AutoSize = False
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -40
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
end
object lblNazev: TLabel
Left = 8
Top = 12
Width = 833
Height = 55
Alignment = taCenter
AutoSize = False
Font.Charset = DEFAULT_CHARSET
Font.Color = clRed
Font.Height = -40
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
end
object Label4: TLabel
Left = 5
Top = 248
Width = 149
Height = 40
Alignment = taRightJustify
Caption = 'Um'#237'st'#283'n'#237' :'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -33
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
end
object Label5: TLabel
Left = 10
Top = 416
Width = 199
Height = 40
Alignment = taRightJustify
Caption = 'Hmot. kg/ks :'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -33
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
end
object lblMDZ: TLabel
Left = 141
Top = 457
Width = 48
Height = 25
Caption = 'MDZ'
Font.Charset = DEFAULT_CHARSET
Font.Color = clRed
Font.Height = -21
Font.Name = 'Tahoma'
Font.Style = [fsBold]
ParentFont = False
Visible = False
end
object pnlCalc: TPanel
Left = 390
Top = 73
Width = 440
Height = 390
Caption = 'pnlCalc'
Color = 16776176
ParentBackground = False
TabOrder = 8
object tKeyb: TAdvTouchKeyboard
Left = 5
Top = 3
Width = 160
Height = 200
Margins.Left = 1
Margins.Top = 1
Margins.Right = 1
Margins.Bottom = 1
ParentCustomHint = False
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -33
Font.Name = 'Tahoma'
Font.Style = []
AutoPostKey = False
KeyboardType = ktNUMERIC
KeyDistance = 1
Keys = <
item
Caption = '7'
KeyValue = -1
ShiftKeyValue = -1
AltGrKeyValue = -1
Height = 100
Width = 100
SpecialKey = skNone
BorderColor = clGray
BorderColorDown = clBlack
Color = clSilver
ColorDown = clGray
TextColor = clBlack
TextColorDown = clBlack
ImageIndex = -1
X = 0
Y = 0
end
item
Caption = '8'
KeyValue = -1
ShiftKeyValue = -1
AltGrKeyValue = -1
Height = 100
Width = 100
SpecialKey = skNone
BorderColor = clGray
BorderColorDown = clBlack
Color = clSilver
ColorDown = clGray
TextColor = clBlack
TextColorDown = clBlack
ImageIndex = -1
X = 100
Y = 0
end
item
Caption = '9'
KeyValue = -1
ShiftKeyValue = -1
AltGrKeyValue = -1
Height = 100
Width = 100
SpecialKey = skNone
BorderColor = clGray
BorderColorDown = clBlack
Color = clSilver
ColorDown = clGray
TextColor = clBlack
TextColorDown = clBlack
ImageIndex = -1
X = 200
Y = 0
end
item
Caption = '4'
KeyValue = -1
ShiftKeyValue = -1
AltGrKeyValue = -1
Height = 100
Width = 100
SpecialKey = skNone
BorderColor = clGray
BorderColorDown = clBlack
Color = clSilver
ColorDown = clGray
TextColor = clBlack
TextColorDown = clBlack
ImageIndex = -1
X = 0
Y = 100
end
item
Caption = '5'
KeyValue = -1
ShiftKeyValue = -1
AltGrKeyValue = -1
Height = 100
Width = 100
SpecialKey = skNone
BorderColor = clGray
BorderColorDown = clBlack
Color = clSilver
ColorDown = clGray
TextColor = clBlack
TextColorDown = clBlack
ImageIndex = -1
X = 100
Y = 100
end
item
Caption = '6'
KeyValue = -1
ShiftKeyValue = -1
AltGrKeyValue = -1
Height = 100
Width = 100
SpecialKey = skNone
BorderColor = clGray
BorderColorDown = clBlack
Color = clSilver
ColorDown = clGray
TextColor = clBlack
TextColorDown = clBlack
ImageIndex = -1
X = 200
Y = 100
end
item
Caption = '1'
KeyValue = -1
ShiftKeyValue = -1
AltGrKeyValue = -1
Height = 100
Width = 100
SpecialKey = skNone
BorderColor = clGray
BorderColorDown = clBlack
Color = clSilver
ColorDown = clGray
TextColor = clBlack
TextColorDown = clBlack
ImageIndex = -1
X = 0
Y = 200
end
item
Caption = '2'
KeyValue = -1
ShiftKeyValue = -1
AltGrKeyValue = -1
Height = 100
Width = 100
SpecialKey = skNone
BorderColor = clGray
BorderColorDown = clBlack
Color = clSilver
ColorDown = clGray
TextColor = clBlack
TextColorDown = clBlack
ImageIndex = -1
X = 100
Y = 200
end
item
Caption = '3'
KeyValue = -1
ShiftKeyValue = -1
AltGrKeyValue = -1
Height = 100
Width = 100
SpecialKey = skNone
BorderColor = clGray
BorderColorDown = clBlack
Color = clSilver
ColorDown = clGray
TextColor = clBlack
TextColorDown = clBlack
ImageIndex = -1
X = 200
Y = 200
end
item
Caption = 'Sma'#382
KeyValue = -1
ShiftKeyValue = -1
AltGrKeyValue = -1
Height = 140
Width = 100
SpecialKey = skDelete
BorderColor = clGray
BorderColorDown = clBlack
Color = 3618815
ColorDown = clGray
TextColor = clBlack
TextColorDown = clBlack
ImageIndex = -1
X = 320
Y = 0
end
item
Caption = '0'
KeyValue = -1
ShiftKeyValue = -1
AltGrKeyValue = -1
Height = 80
Width = 200
SpecialKey = skNone
BorderColor = clGray
BorderColorDown = clBlack
Color = clSilver
ColorDown = clGray
TextColor = clBlack
TextColorDown = clBlack
ImageIndex = -1
X = 0
Y = 300
end
item
Caption = '.'
KeyValue = -1
ShiftKeyValue = -1
AltGrKeyValue = -1
Height = 80
Width = 100
SpecialKey = skDecimal
BorderColor = clGray
BorderColorDown = clBlack
Color = clSilver
ColorDown = clGray
TextColor = clBlack
TextColorDown = clBlack
ImageIndex = -1
X = 200
Y = 300
end>
SmallFont.Charset = DEFAULT_CHARSET
SmallFont.Color = clWindowText
SmallFont.Height = -16
SmallFont.Name = 'Tahoma'
SmallFont.Style = []
Version = '1.4.2.0'
OnKeyClick = tKeybKeyClick
OnKeyDown = tKeybKeyDown
object Button1: TButton
Left = -280
Top = 294
Width = 75
Height = 25
Caption = 'Button1'
TabOrder = 0
end
end
end
object edtVyroba: TRzNumericEdit
Left = 223
Top = 152
Width = 161
Height = 56
Alignment = taCenter
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -40
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
TabOrder = 0
OnClick = edtVyrobaClick
OnEnter = edtVyrobaEnter
DisplayFormat = ',0;(,0)'
end
object edtExpedice: TRzNumericEdit
Left = 223
Top = 322
Width = 161
Height = 56
Alignment = taCenter
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -40
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
TabOrder = 2
OnClick = edtExpediceClick
OnEnter = edtExpediceEnter
DisplayFormat = ',0;(,0)'
end
object btnOK: TButton
Left = 100
Top = 533
Width = 190
Height = 108
Caption = 'OK'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -33
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
TabOrder = 3
OnClick = btnOKClick
end
object btnStorno: TButton
Left = 401
Top = 571
Width = 137
Height = 70
Caption = 'Storno'
TabOrder = 4
OnClick = btnStornoClick
end
object edtUmisteni: TRzEdit
Left = 160
Top = 238
Width = 224
Height = 56
Text = ''
Alignment = taCenter
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -40
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
TabOrder = 1
OnClick = edtUmisteniClick
end
object edtHmotnost: TRzNumericEdit
Left = 223
Top = 406
Width = 161
Height = 56
Alignment = taCenter
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -40
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
TabOrder = 5
OnClick = edtHmotnostClick
IntegersOnly = False
DisplayFormat = '#,##0.###'
end
object btnDok: TButton
Left = 668
Top = 571
Width = 137
Height = 70
Caption = 'Dokumenty'
TabOrder = 6
Visible = False
OnClick = btnDokClick
end
object btnVahaAPI: TButton
Left = 222
Top = 465
Width = 163
Height = 37
Caption = 'Na'#269'ti z v'#225'hy'
TabOrder = 7
Visible = False
OnClick = btnVahaAPIClick
end
end

486
frmVstupDat.pas Normal file
View File

@ -0,0 +1,486 @@
unit frmVstupDat;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls,
Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.Mask, RzEdit, AdvTouchKeyboard, Vcl.ExtCtrls, IdHTTP, ddPlugin_TLB;
const
KLF_ACTIVATE = $00000001;
KLF_SETFORPROCESS = $00000100;
idScale = '5d370286e1780';
urlAPI = 'https://pd7wk7ht2l.execute-api.eu-central-1.amazonaws.com/alpha/scale';
type
TformVstupDat = class(TForm)
pnlCalc: TPanel;
tKeyb: TAdvTouchKeyboard;
edtVyroba: TRzNumericEdit;
edtExpedice: TRzNumericEdit;
btnOK: TButton;
btnStorno: TButton;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
lblSkladem: TLabel;
lblNazev: TLabel;
Label4: TLabel;
edtUmisteni: TRzEdit;
Label5: TLabel;
edtHmotnost: TRzNumericEdit;
lblMDZ: TLabel;
btnDok: TButton;
btnVahaAPI: TButton;
procedure FormShow(Sender: TObject);
procedure edtVyrobaClick(Sender: TObject);
procedure edtExpediceClick(Sender: TObject);
procedure tKeybKeyClick(Sender: TObject; Index: Integer);
procedure tKeybKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure btnOKClick(Sender: TObject);
procedure btnStornoClick(Sender: TObject);
procedure btnCalcCloseClick(Sender: TObject);
procedure FormActivate(Sender: TObject);
procedure edtVyrobaEnter(Sender: TObject);
procedure edtExpediceEnter(Sender: TObject);
procedure edtUmisteniClick(Sender: TObject);
procedure edtHmotnostClick(Sender: TObject);
procedure btnDokClick(Sender: TObject);
procedure btnVahaAPIClick(Sender: TObject);
private
public
Helios: IHelios;
idKZ: Integer;
jeMDZ: boolean;
mnVyroba: Extended;
mnExpedice: Extended;
mnZmet: Extended;
hmot: Extended;
umisteni: string;
rekl: boolean;
fokus: byte;
end;
var
lSQL: string;
formVstupDat: TformVstupDat;
ctrl: byte;
numPadVal, skladem: extended;
exitKeyb: Boolean;
layName: array[0..KL_NAMELENGTH+1] of Char;
http: TIdCustomHTTP;
implementation
uses System.StrUtils, System.JSON, helUtils;
{$R *.dfm}
procedure TformVstupDat.btnCalcCloseClick(Sender: TObject);
begin
pnlCalc.Enabled:= false;
case ctrl of
1: edtUmisteni.SetFocus;
2: btnOK.SetFocus;
end;
end;
procedure TformVstupDat.btnDokClick(Sender: TObject);
begin
if (idKZ>0) then
Helios.OpenBrowse(bidDok, 'TabDokumenty.ID IN (SELECT IDDok FROM ' + tblDokumVaz + ' WHERE IdentVazby=8 AND IDTab=' + idKZ.ToString + ')');
end;
procedure TformVstupDat.btnOKClick(Sender: TObject);
var lSQL: string;
begin
edtUmisteni.Text:= Trim(edtUmisteni.Text);
umisteni:= edtUmisteni.Text;
mnVyroba:= edtVyroba.Value;
mnExpedice:= edtExpedice.Value;
hmot:= edtHmotnost.Value;
if (mnVyroba-mnExpedice>0) and (umisteni='') then
begin
Helios.Error(#1'Nen<65> zad<61>no um<75>st<73>n<EFBFBD> na sklad !!'#1);
edtUmisteni.SetFocus;
end
else
begin
mnZmet:= 0;
if (mnExpedice=0) then
Helios.Info(#1'! Nen<65> zad<61>no MNO<4E>STV<54> K EXPEDICI !'#1);
if ((mnVyroba+skladem)<mnExpedice) then
begin
Helios.Error(#1'Nem<65><6D>ete expedovat v<>c ne<6E> m<>te z v<>roby a skladem.'#1);
edtExpedice.SetFocus;
end
else
begin
if (hmot>0) and (idKZ>0) then
begin
lSQL:= 'UPDATE ' + tblKZ + ' SET Hmotnost=' + StringReplace(hmot.ToString, ',', '.', [rfReplaceAll]) + ' WHERE ID=' + idKZ.ToString;
lSQL:= lSQL + ' AND Hmotnost<>' + StringReplace(hmot.ToString, ',', '.', [rfReplaceAll]);
Helios.ExecSQL(lSQL);
end;
ModalResult:= mrOk;
end;
end;
end;
procedure TformVstupDat.btnStornoClick(Sender: TObject);
begin
ModalResult:= mrCancel;
end;
// 4x faster than dateutils version
function UNIXTimeToDateTimeFAST(UnixTime: LongWord): TDateTime;
begin
result:= (UnixTime/86400) + 25569;
end;
procedure TformVstupDat.btnVahaAPIClick(Sender: TObject);
var lSQL, data, datStamp, datX, datHmot: string;
hm: Extended;
JObj: TJSONObject;
dat: TDateTime;
begin
hm:= 0;
http:= TIdHTTP.Create(nil);
try
try
data:= http.Get(urlAPI + '/' + idScale);
if (data<>'') then
begin
JObj:= TJSONObject.ParseJSONValue(TEncoding.Default.GetBytes(data),0) as TJSONObject;
// datStamp:= JObj.Get('timestamp').JsonValue.Value;
// if (Length(datStamp)=13) then
// datStamp:= LeftStr(datStamp, 10);
// dat:= UNIXTimeToDateTimeFAST(StrToInt64(datStamp));
// dat:= UnixToDateTime(StrToInt64(datStamp));
datHmot:= JObj.Get('weight').JsonValue.Value; // v gramech
hm:= 0;
if not(TryStrToFloat(datHmot,hm)) then
hm:= 0;
hm:= hm/1000;
end;
except on E:Exception do
Helios.Error('Chyba na<6E><61>t<EFBFBD>n<EFBFBD> hmotnosti: ' + CRLF + #1 + E.Message + #1);
end;
finally
if Assigned(JObj) then
JObj.Free;
http.Free;
end;
edtHmotnost.Value:= hm;
end;
procedure TformVstupDat.edtExpediceClick(Sender: TObject);
begin
edtVyroba.Color:= $f0f0f0;
edtUmisteni.Color:= $f0f0f0;
edtExpedice.Color:= clWebSalmon;
edtHmotnost.Color:= $f0f0f0;
if (jeMDZ) then
edtHmotnost.Color:= $33dfff;
pnlCalc.Enabled:= true;
ctrl:= 2;
end;
procedure TformVstupDat.edtExpediceEnter(Sender: TObject);
begin
edtExpediceClick(Sender);
end;
procedure TformVstupDat.edtHmotnostClick(Sender: TObject);
begin
edtVyroba.Color:= $f0f0f0;
edtUmisteni.Color:= $f0f0f0;
edtExpedice.Color:= $f0f0f0;
edtHmotnost.Color:= clWebSalmon;
ctrl:= 3;
end;
procedure TformVstupDat.edtUmisteniClick(Sender: TObject);
begin
edtVyroba.Color:= $f0f0f0;
edtUmisteni.Color:= clWebSalmon;
edtUmisteni.SetFocus;
edtExpedice.Color:= $f0f0f0;
edtHmotnost.Color:= $f0f0f0;
if (jeMDZ) then
edtHmotnost.Color:= $33dfff;
end;
procedure TformVstupDat.edtVyrobaClick(Sender: TObject);
begin
edtVyroba.Color:= clWebSalmon;
edtVyroba.SetFocus;
edtUmisteni.Color:= $f0f0f0;
edtExpedice.Color:= $f0f0f0;
edtHmotnost.Color:= $f0f0f0;
if (jeMDZ) then
edtHmotnost.Color:= $33dfff;
pnlCalc.Enabled:= true;
ctrl:= 1;
end;
procedure TformVstupDat.edtVyrobaEnter(Sender: TObject);
begin
edtVyrobaClick(Sender);
end;
procedure TformVstupDat.FormActivate(Sender: TObject);
begin
edtVyrobaClick(Sender);
end;
procedure TformVstupDat.FormClose(Sender: TObject; var Action: TCloseAction);
begin
if (layName[0]<>'') then
LoadKeyboardLayout(@layName, KLF_ACTIVATE or KLF_SETFORPROCESS);
Action:= caFree;
end;
procedure TformVstupDat.FormShow(Sender: TObject);
var m, m2: extended;
s: integer;
lSQL: string;
begin
tKeyb.Width:= 430;
tKeyb.Height:= 395;
pnlCalc.Enabled:= false;
edtVyroba.Value:= mnVyroba;
edtExpedice.Color:= clOlive;
edtExpedice.Value:= mnExpedice;
edtHmotnost.Value:= hmot;
lblMDZ.Visible:= false;
edtUmisteni.Color:= $f0f0f0;
edtExpedice.Color:= $f0f0f0;
edtHmotnost.Color:= $f0f0f0;
if (rekl) then
lblMDZ.Caption:= 'REKLAMACE';
if (jeMDZ) or (rekl) then
begin
edtHmotnost.Color:= $33dfff;
lblMDZ.Visible:= true;
end;
if (idKZ>0) then
begin
lblNazev.Caption:= Trim(helUtils.getHeliosStrVal(Helios, '', 'SELECT Nazev1 FROM ' + tblKZ + ' WHERE ID=' + idKZ.ToString));
edtUmisteni.Text:= umisteni;
s:= helUtils.getHeliosIntVal(Helios, 0, 'SELECT ID FROM ' + tblSS + ' WHERE IDSklad=N''100'' AND IDKmenZbozi=' + idKZ.ToString);
if (s>0) then
begin
m:= helUtils.getHeliosFloatVal(Helios, 0, 'SELECT ISNULL( (SELECT Mnozstvi FROM ' + tblSS + ' WHERE ID=' + s.ToString + '), 0)');
{
lSQL:= 'SELECT ISNULL( (SELECT SUM(Mnozstvi) FROM ' + tblPZ + ' WHERE SkutecneDatReal IS NULL AND DatPorizeni>=CONVERT(datetime,N''1.3.2019 00:00:01'',104)';
lSQL:= lSQL + ' AND DruhPohybuZbo IN (2,4) AND IDZboSklad=' + s.ToString + '), 0)';
}
// lSQL:= 'SELECT ISNULL( (SELECT MnozstviExp FROM dbo.hvw_StavSkladuProExpedici WHERE ID=' + s.ToString + '), 0)';
// m2:= helUtils.getHeliosFloatVal(Helios, 0, lSQL);
// skladem:= m-m2;
lSQL:= 'SELECT ISNULL( (SELECT MnozstviExp FROM dbo.hvw_StavSkladuProExpedici WHERE ID=' + s.ToString + '), 0)';
skladem:= helUtils.getHeliosFloatVal(Helios, 0, lSQL);
lblSkladem.Caption:= FormatFloat('#,##0', skladem);
end;
lSQL:= 'SELECT Hmotnost FROM ' + tblKZ + ' WHERE Hmotnost>0 AND ID=' + idKZ.ToString;
with Helios.OpenSQL(lSQL) do
if (RecordCount>0) then
edtHmotnost.Value:= StrToFloat(VarToStr(FieldValues(0)));
with Helios.OpenSQL('SELECT COUNT(*) FROM ' + tblDokumVaz + ' WHERE IdentVazby=8 AND IDTab=' + idKZ.ToString) do
btnDok.Visible:= (RecordCount>0);
end;
if GetKeyboardLayoutName(@layName) then
LoadKeyboardLayout('00020409', KLF_ACTIVATE or KLF_SETFORPROCESS);
http:= TIdHTTP.Create(nil);
try
try
http.Get(urlAPI + '/' + idScale, [404]);
except
btnVahaAPI.Visible:= false;
end;
finally
http.Free;
end;
btnVahaAPI.Visible:= false;
case fokus of
1: edtVyrobaClick(Sender);
2: edtUmisteniClick(Sender);
3: edtExpediceClick(Sender);
4: edtHmotnostClick(Sender);
end;
end;
procedure TformVstupDat.tKeybKeyClick(Sender: TObject; Index: Integer);
var i: integer;
lSQL, sql1, sql2: string;
desMisto, prepDesM: Boolean;
begin
prepDesM:= true;
if (Index<15) then
begin
if (Index=9) then
begin
case ctrl of
1: edtVyroba.Value:= 0;
2: edtExpedice.Value:= 0;
3: edtHmotnost.Value:= 0;
end;
end;
i:= -1;
case Index of
0: i:= 7;
1: i:= 8;
2: i:= 9;
3: i:= 4;
4: i:= 5;
5: i:= 6;
6: i:= 1;
7: i:= 2;
8: i:= 3;
// 9: edtNumVal.Value:= 0;
10: i:= 0;
11: begin
i:= 100;
prepDesM:= false;
desMisto:= true;
end;
end;
if (i>=0) then
begin
case ctrl of
1: begin
if (edtVyroba.Value=0) then
edtVyroba.IntValue:= i
else
edtVyroba.IntValue:= StrToInt(Trim(StringReplace(StringReplace(edtVyroba.Text,#160,'',[rfReplaceAll]),' ','',[rfReplaceAll])) + IntToStr(i));
edtVyroba.SelStart:= Length(edtVyroba.Text);
end;
2: begin
if (edtExpedice.Value=0) then
edtExpedice.IntValue:= i
else
edtExpedice.IntValue:= StrToInt(Trim(StringReplace(StringReplace(edtExpedice.Text,#160,'',[rfReplaceAll]),' ','',[rfReplaceAll])) + IntToStr(i));
edtExpedice.SelStart:= Length(edtExpedice.Text);
end;
3: begin
if (prepDesM) then
desMisto:= Pos(',', edtHmotnost.Text)>0;
if (edtHmotnost.Value=0) then
begin
if (i<100) and (desMisto=false) then
edtHmotnost.IntValue:= i
else
if (i<100) then
edtHmotnost.Text:= edtHmotnost.Text + IntToStr(i)
else
edtHmotnost.Text:= '0,';
end
else
begin
if (desMisto) then
begin
if (i=100) and (Pos(',', edtHmotnost.Text)=0) then
{
begin
edtHmotnost.Value:= StrToFloat(Trim(StringReplace(StringReplace(edtHmotnost.Text,#160,'',[rfReplaceAll]),' ','',[rfReplaceAll])) + ',' + IntToStr(i));
desMisto:= false;
end
else
}
edtHmotnost.Text:= edtHmotnost.Text + ',';
if (i<100) then
edtHmotnost.Text:= edtHmotnost.Text + IntToStr(i);
end
else
edtHmotnost.Value:= StrToFloat(Trim(StringReplace(StringReplace(edtHmotnost.Text,#160,'',[rfReplaceAll]),' ','',[rfReplaceAll])) + IntToStr(i));
end;
edtHmotnost.SelStart:= Length(edtHmotnost.Text);
end;
end;
end;
end
else
begin
{
case ctrl of
1: if (t1-t2)<10 then
edtVyroba.Value:= 0;
2: if (t1-t2)<10 then
edtExpedice.Value:= 0;
end;
}
end;
end;
procedure TformVstupDat.tKeybKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
var i: integer;
begin
{
case Key of
13: i:= 11;
46: i:= 9;
48: i:= 10; // 0
49: i:= 6;
50: i:= 7;
51: i:= 8;
52: i:= 3;
53: i:= 4;
54: i:= 5;
55: i:= 0;
56: i:= 1;
57: i:= 9;
end;
tKeybKeyClick(Sender, i);
}
end;
end.

BIN
ico.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.0 KiB

BIN
ico.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

73
plgKdynium.dpr Normal file
View File

@ -0,0 +1,73 @@
library plgKdynium;
//{$WEAKLINKRTTI ON}
//{$RTTI EXPLICIT METHODS([]) PROPERTIES([]) FIELDS([])}
//{$IFNDEF DEBUG}
// {$SetPEFlags $AC0E}
// {$SetPEOptFlags $AC0E}
//{$ELSE}
// {$SetPEFlags $AA02}
// {$SetPEOptFlags $AA02}
//{$ENDIF}
// IMAGE_FILE_RELOCS_STRIPPED = $0001
// IMAGE_FILE_EXECUTABLE_IMAGE = $0002 *
// IMAGE_FILE_LINE_NUMS_STRIPPED = $0004 *
// IMAGE_FILE_LOCAL_SYMS_STRIPPED = $0008 *
// IMAGE_FILE_AGGRESIVE_WS_TRIM = $0010
// IMAGE_FILE_LARGE_ADDRESS_AWARE = $0020
// IMAGE_FILE_BYTES_REVERSED_LO = $0080
// IMAGE_FILE_32BIT_MACHINE = $0100
// IMAGE_FILE_DEBUG_STRIPPED = $0200
// IMAGE_FILE_REMOVABLE_RUN_FROM_SWAP = $0400 *
// IMAGE_FILE_NET_RUN_FROM_SWAP = $0800 *
// IMAGE_FILE_SYSTEM = $1000
// IMAGE_FILE_DLL = $2000 *
// IMAGE_FILE_UP_SYSTEM_ONLY = $4000
// IMAGE_DLLCHARACTERISTICS_TERMINAL_SERVER_AWARE = $8000 *
uses
madExcept,
madLinkDisAsm,
madListHardware,
madListProcesses,
madListModules,
System.Win.ComServ,
ddPlugin_TLB,
ComObjekt in 'ComObjekt.pas',
frmGenPolos in 'frmGenPolos.pas' {formGenPolos},
frmOdlitek in 'frmOdlitek.pas' {formOdlitek},
frmOdvTavby in 'frmOdvTavby.pas' {formOdvTavby},
frmOdvLis in 'frmOdvLis.pas' {formOdvLis},
frmGenTPV in 'frmGenTPV.pas' {formGenTPV},
frmDavkyObecne in 'frmDavkyObecne.pas' {formDavkyObecne},
frmEvidOper in 'frmEvidOper.pas' {formEvidOper},
frmHrOdvOper in 'frmHrOdvOper.pas' {formHrOdvOper},
frmVstupDat in 'frmVstupDat.pas' {formVstupDat},
frmSchvaleniZak in 'frmSchvaleniZak.pas' {formSchvaleniZak},
frmInputNum in 'frmInputNum.pas' {formInputNum},
frmHrOdvOperZmetky in 'frmHrOdvOperZmetky.pas' {formHrOdvOperZmetky},
frmKoopObjUprava in 'frmKoopObjUprava.pas' {formKoopObjUprava},
dataMod in 'dataMod.pas' {dm: TDataModule},
frmOOPPohyb in 'frmOOPPohyb.pas' {formOOPPohyb};
// ,frmPlanLis in 'frmPlanLis.pas' {formPlanLis};
exports
DllGetClassObject,
DllCanUnloadNow,
DllRegisterServer,
DllUnregisterServer;
{$R *.RES}
BEGIN
END.
// 2022.524
// frmOdlitek - pridano Lisovaci skupina 2 + Llisovaci cas 2

240
plgKdynium.dproj Normal file
View File

@ -0,0 +1,240 @@
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectGuid>{CDF713A9-2CCE-4031-A570-C2BDF2C725A4}</ProjectGuid>
<MainSource>plgKdynium.dpr</MainSource>
<Base>True</Base>
<Config Condition="'$(Config)'==''">Release</Config>
<TargetedPlatforms>1</TargetedPlatforms>
<AppType>Library</AppType>
<FrameworkType>None</FrameworkType>
<ProjectVersion>20.3</ProjectVersion>
<Platform Condition="'$(Platform)'==''">Win32</Platform>
<ProjectName Condition="'$(ProjectName)'==''">plgKdynium</ProjectName>
</PropertyGroup>
<PropertyGroup Condition="'$(Config)'=='Base' or '$(Base)'!=''">
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Android' and '$(Base)'=='true') or '$(Base_Android)'!=''">
<Base_Android>true</Base_Android>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Android64' and '$(Base)'=='true') or '$(Base_Android64)'!=''">
<Base_Android64>true</Base_Android64>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Base)'=='true') or '$(Base_Win32)'!=''">
<Base_Win32>true</Base_Win32>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="'$(Config)'=='Release' or '$(Cfg_1)'!=''">
<Cfg_1>true</Cfg_1>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Cfg_1)'=='true') or '$(Cfg_1_Win32)'!=''">
<Cfg_1_Win32>true</Cfg_1_Win32>
<CfgParent>Cfg_1</CfgParent>
<Cfg_1>true</Cfg_1>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="'$(Config)'=='Debug' or '$(Cfg_2)'!=''">
<Cfg_2>true</Cfg_2>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Android64' and '$(Cfg_2)'=='true') or '$(Cfg_2_Android64)'!=''">
<Cfg_2_Android64>true</Cfg_2_Android64>
<CfgParent>Cfg_2</CfgParent>
<Cfg_2>true</Cfg_2>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Cfg_2)'=='true') or '$(Cfg_2_Win32)'!=''">
<Cfg_2_Win32>true</Cfg_2_Win32>
<CfgParent>Cfg_2</CfgParent>
<Cfg_2>true</Cfg_2>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="'$(Base)'!=''">
<DCC_E>false</DCC_E>
<DCC_F>false</DCC_F>
<DCC_K>false</DCC_K>
<DCC_N>false</DCC_N>
<DCC_S>false</DCC_S>
<DCC_ImageBase>00400000</DCC_ImageBase>
<GenDll>true</GenDll>
<SanitizedProjectName>plgKdynium</SanitizedProjectName>
<VerInfo_Locale>1029</VerInfo_Locale>
<VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=;CFBundleName=</VerInfo_Keys>
<DCC_Namespace>System;Xml;Data;Datasnap;Web;Soap;Vcl;Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;Vcl.Imaging;Vcl.Samples;$(DCC_Namespace)</DCC_Namespace>
</PropertyGroup>
<PropertyGroup Condition="'$(Base_Android)'!=''">
<Android_LauncherIcon192>$(BDS)\bin\Artwork\Android\FM_LauncherIcon_192x192.png</Android_LauncherIcon192>
<VerInfo_Keys>package=com.embarcadero.$(MSBuildProjectName);label=$(MSBuildProjectName);versionCode=1;versionName=1.0.0;persistent=False;restoreAnyVersion=False;installLocation=auto;largeHeap=False;theme=TitleBar;hardwareAccelerated=true;apiKey=</VerInfo_Keys>
<BT_BuildType>Debug</BT_BuildType>
<EnabledSysJars>activity-1.1.0.dex.jar;annotation-1.2.0.dex.jar;appcompat-1.2.0.dex.jar;appcompat-resources-1.2.0.dex.jar;asynclayoutinflater-1.0.0.dex.jar;billing-4.0.0.dex.jar;biometric-1.1.0.dex.jar;browser-1.0.0.dex.jar;cloud-messaging.dex.jar;collection-1.1.0.dex.jar;coordinatorlayout-1.0.0.dex.jar;core-1.5.0-rc02.dex.jar;core-common-2.1.0.dex.jar;core-runtime-2.1.0.dex.jar;cursoradapter-1.0.0.dex.jar;customview-1.0.0.dex.jar;documentfile-1.0.0.dex.jar;drawerlayout-1.0.0.dex.jar;firebase-annotations-16.0.0.dex.jar;firebase-common-20.0.0.dex.jar;firebase-components-17.0.0.dex.jar;firebase-datatransport-18.0.0.dex.jar;firebase-encoders-17.0.0.dex.jar;firebase-encoders-json-18.0.0.dex.jar;firebase-iid-interop-17.1.0.dex.jar;firebase-installations-17.0.0.dex.jar;firebase-installations-interop-17.0.0.dex.jar;firebase-measurement-connector-19.0.0.dex.jar;firebase-messaging-22.0.0.dex.jar;fmx.dex.jar;fragment-1.2.5.dex.jar;google-play-licensing.dex.jar;interpolator-1.0.0.dex.jar;javax.inject-1.dex.jar;legacy-support-core-ui-1.0.0.dex.jar;legacy-support-core-utils-1.0.0.dex.jar;lifecycle-common-2.2.0.dex.jar;lifecycle-livedata-2.0.0.dex.jar;lifecycle-livedata-core-2.2.0.dex.jar;lifecycle-runtime-2.2.0.dex.jar;lifecycle-service-2.0.0.dex.jar;lifecycle-viewmodel-2.2.0.dex.jar;lifecycle-viewmodel-savedstate-2.2.0.dex.jar;listenablefuture-1.0.dex.jar;loader-1.0.0.dex.jar;localbroadcastmanager-1.0.0.dex.jar;play-services-ads-20.1.0.dex.jar;play-services-ads-base-20.1.0.dex.jar;play-services-ads-identifier-17.0.0.dex.jar;play-services-ads-lite-20.1.0.dex.jar;play-services-base-17.5.0.dex.jar;play-services-basement-17.6.0.dex.jar;play-services-cloud-messaging-16.0.0.dex.jar;play-services-drive-17.0.0.dex.jar;play-services-games-21.0.0.dex.jar;play-services-location-18.0.0.dex.jar;play-services-maps-17.0.1.dex.jar;play-services-measurement-base-18.0.0.dex.jar;play-services-measurement-sdk-api-18.0.0.dex.jar;play-services-places-placereport-17.0.0.dex.jar;play-services-stats-17.0.0.dex.jar;play-services-tasks-17.2.0.dex.jar;print-1.0.0.dex.jar;room-common-2.1.0.dex.jar;room-runtime-2.1.0.dex.jar;savedstate-1.0.0.dex.jar;slidingpanelayout-1.0.0.dex.jar;sqlite-2.0.1.dex.jar;sqlite-framework-2.0.1.dex.jar;swiperefreshlayout-1.0.0.dex.jar;transport-api-3.0.0.dex.jar;transport-backend-cct-3.0.0.dex.jar;transport-runtime-3.0.0.dex.jar;user-messaging-platform-1.0.0.dex.jar;vectordrawable-1.1.0.dex.jar;vectordrawable-animated-1.1.0.dex.jar;versionedparcelable-1.1.1.dex.jar;viewpager-1.0.0.dex.jar;work-runtime-2.1.0.dex.jar</EnabledSysJars>
</PropertyGroup>
<PropertyGroup Condition="'$(Base_Android64)'!=''">
<Android_LauncherIcon192>$(BDS)\bin\Artwork\Android\FM_LauncherIcon_192x192.png</Android_LauncherIcon192>
<EnabledSysJars>activity-1.1.0.dex.jar;annotation-1.2.0.dex.jar;appcompat-1.2.0.dex.jar;appcompat-resources-1.2.0.dex.jar;asynclayoutinflater-1.0.0.dex.jar;billing-4.0.0.dex.jar;biometric-1.1.0.dex.jar;browser-1.0.0.dex.jar;cloud-messaging.dex.jar;collection-1.1.0.dex.jar;coordinatorlayout-1.0.0.dex.jar;core-1.5.0-rc02.dex.jar;core-common-2.1.0.dex.jar;core-runtime-2.1.0.dex.jar;cursoradapter-1.0.0.dex.jar;customview-1.0.0.dex.jar;documentfile-1.0.0.dex.jar;drawerlayout-1.0.0.dex.jar;firebase-annotations-16.0.0.dex.jar;firebase-common-20.0.0.dex.jar;firebase-components-17.0.0.dex.jar;firebase-datatransport-18.0.0.dex.jar;firebase-encoders-17.0.0.dex.jar;firebase-encoders-json-18.0.0.dex.jar;firebase-iid-interop-17.1.0.dex.jar;firebase-installations-17.0.0.dex.jar;firebase-installations-interop-17.0.0.dex.jar;firebase-measurement-connector-19.0.0.dex.jar;firebase-messaging-22.0.0.dex.jar;fmx.dex.jar;fragment-1.2.5.dex.jar;google-play-licensing.dex.jar;interpolator-1.0.0.dex.jar;javax.inject-1.dex.jar;legacy-support-core-ui-1.0.0.dex.jar;legacy-support-core-utils-1.0.0.dex.jar;lifecycle-common-2.2.0.dex.jar;lifecycle-livedata-2.0.0.dex.jar;lifecycle-livedata-core-2.2.0.dex.jar;lifecycle-runtime-2.2.0.dex.jar;lifecycle-service-2.0.0.dex.jar;lifecycle-viewmodel-2.2.0.dex.jar;lifecycle-viewmodel-savedstate-2.2.0.dex.jar;listenablefuture-1.0.dex.jar;loader-1.0.0.dex.jar;localbroadcastmanager-1.0.0.dex.jar;play-services-ads-20.1.0.dex.jar;play-services-ads-base-20.1.0.dex.jar;play-services-ads-identifier-17.0.0.dex.jar;play-services-ads-lite-20.1.0.dex.jar;play-services-base-17.5.0.dex.jar;play-services-basement-17.6.0.dex.jar;play-services-cloud-messaging-16.0.0.dex.jar;play-services-drive-17.0.0.dex.jar;play-services-games-21.0.0.dex.jar;play-services-location-18.0.0.dex.jar;play-services-maps-17.0.1.dex.jar;play-services-measurement-base-18.0.0.dex.jar;play-services-measurement-sdk-api-18.0.0.dex.jar;play-services-places-placereport-17.0.0.dex.jar;play-services-stats-17.0.0.dex.jar;play-services-tasks-17.2.0.dex.jar;print-1.0.0.dex.jar;room-common-2.1.0.dex.jar;room-runtime-2.1.0.dex.jar;savedstate-1.0.0.dex.jar;slidingpanelayout-1.0.0.dex.jar;sqlite-2.0.1.dex.jar;sqlite-framework-2.0.1.dex.jar;swiperefreshlayout-1.0.0.dex.jar;transport-api-3.0.0.dex.jar;transport-backend-cct-3.0.0.dex.jar;transport-runtime-3.0.0.dex.jar;user-messaging-platform-1.0.0.dex.jar;vectordrawable-1.1.0.dex.jar;vectordrawable-animated-1.1.0.dex.jar;versionedparcelable-1.1.1.dex.jar;viewpager-1.0.0.dex.jar;work-runtime-2.1.0.dex.jar</EnabledSysJars>
</PropertyGroup>
<PropertyGroup Condition="'$(Base_Win32)'!=''">
<BT_BuildType>Debug</BT_BuildType>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Keys>CompanyName=;FileDescription=Plugin Helios iNuvio pro Kdynium Kdyne;FileVersion=3.0.2024.1027;InternalName=plgKdynium;LegalCopyright=HD Consulting Stakonice, T. Buzin;LegalTrademarks=;OriginalFilename=;ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=XE11.3;ProgramID=com.embarcadero.$(MSBuildProjectName)</VerInfo_Keys>
<VerInfo_MajorVer>3</VerInfo_MajorVer>
<VerInfo_Release>2024</VerInfo_Release>
<VerInfo_Build>1027</VerInfo_Build>
<VerInfo_Locale>1029</VerInfo_Locale>
<VerInfo_DLL>true</VerInfo_DLL>
<Manifest_File>(None)</Manifest_File>
<AppDPIAwarenessMode>none</AppDPIAwarenessMode>
<Debugger_HostApplication>D:\Data\Helios\HeliosMain.exe</Debugger_HostApplication>
<Debugger_CWD>D:\Data\Helios</Debugger_CWD>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1)'!=''">
<DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
<DCC_DebugInformation>0</DCC_DebugInformation>
<DCC_LocalDebugSymbols>false</DCC_LocalDebugSymbols>
<DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1_Win32)'!=''">
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_MajorVer>3</VerInfo_MajorVer>
<VerInfo_Release>2025</VerInfo_Release>
<VerInfo_Build>514</VerInfo_Build>
<VerInfo_DLL>true</VerInfo_DLL>
<VerInfo_Keys>CompanyName=;FileDescription=Plugin Helios iNuvio pro Kdynium Kdyne;FileVersion=3.0.2025.514;InternalName=plgKdynium;LegalCopyright=HD Consulting Stakonice, T. Buzin;LegalTrademarks=;OriginalFilename=;ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=XE12.3.1;ProgramID=com.embarcadero.$(MSBuildProjectName);LastCompiledTime=2025.05.14 13:17:13</VerInfo_Keys>
<DCC_Define>madExcept;$(DCC_Define)</DCC_Define>
<DCC_MapFile>3</DCC_MapFile>
<DCC_DebugInformation>2</DCC_DebugInformation>
<DCC_LocalDebugSymbols>true</DCC_LocalDebugSymbols>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2)'!=''">
<DCC_Define>DEBUG;$(DCC_Define)</DCC_Define>
<DCC_Optimize>false</DCC_Optimize>
<DCC_GenerateStackFrames>true</DCC_GenerateStackFrames>
<DCC_RangeChecking>true</DCC_RangeChecking>
<DCC_IntegerOverflowCheck>true</DCC_IntegerOverflowCheck>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2_Android64)'!=''">
<BT_BuildType>Debug</BT_BuildType>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2_Win32)'!=''">
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Keys>CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=3.0.2024.1027;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName);LastCompiledTime=2025.05.14 13:12:34</VerInfo_Keys>
<DCC_DebugDCUs>true</DCC_DebugDCUs>
<DCC_DebugInfoInExe>true</DCC_DebugInfoInExe>
<VerInfo_DLL>true</VerInfo_DLL>
<VerInfo_MajorVer>3</VerInfo_MajorVer>
<VerInfo_Release>2024</VerInfo_Release>
<VerInfo_Build>1027</VerInfo_Build>
<VerInfo_Debug>true</VerInfo_Debug>
<DCC_Define>madExcept;$(DCC_Define)</DCC_Define>
<DCC_MapFile>3</DCC_MapFile>
</PropertyGroup>
<ItemGroup>
<DelphiCompile Include="$(MainSource)">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="ComObjekt.pas"/>
<DCCReference Include="frmGenPolos.pas">
<Form>formGenPolos</Form>
</DCCReference>
<DCCReference Include="frmOdlitek.pas">
<Form>formOdlitek</Form>
</DCCReference>
<DCCReference Include="frmOdvTavby.pas">
<Form>formOdvTavby</Form>
</DCCReference>
<DCCReference Include="frmOdvLis.pas">
<Form>formOdvLis</Form>
</DCCReference>
<DCCReference Include="frmGenTPV.pas">
<Form>formGenTPV</Form>
</DCCReference>
<DCCReference Include="frmDavkyObecne.pas">
<Form>formDavkyObecne</Form>
</DCCReference>
<DCCReference Include="frmEvidOper.pas">
<Form>formEvidOper</Form>
</DCCReference>
<DCCReference Include="frmHrOdvOper.pas">
<Form>formHrOdvOper</Form>
</DCCReference>
<DCCReference Include="frmVstupDat.pas">
<Form>formVstupDat</Form>
</DCCReference>
<DCCReference Include="frmSchvaleniZak.pas">
<Form>formSchvaleniZak</Form>
</DCCReference>
<DCCReference Include="frmInputNum.pas">
<Form>formInputNum</Form>
</DCCReference>
<DCCReference Include="frmHrOdvOperZmetky.pas">
<Form>formHrOdvOperZmetky</Form>
</DCCReference>
<DCCReference Include="frmKoopObjUprava.pas">
<Form>formKoopObjUprava</Form>
</DCCReference>
<DCCReference Include="dataMod.pas">
<Form>dm</Form>
<DesignClass>TDataModule</DesignClass>
</DCCReference>
<DCCReference Include="frmOOPPohyb.pas">
<Form>formOOPPohyb</Form>
</DCCReference>
<BuildConfiguration Include="Base">
<Key>Base</Key>
</BuildConfiguration>
<BuildConfiguration Include="Release">
<Key>Cfg_1</Key>
<CfgParent>Base</CfgParent>
</BuildConfiguration>
<BuildConfiguration Include="Debug">
<Key>Cfg_2</Key>
<CfgParent>Base</CfgParent>
</BuildConfiguration>
</ItemGroup>
<ProjectExtensions>
<Borland.Personality>Delphi.Personality.12</Borland.Personality>
<Borland.ProjectType/>
<BorlandProject>
<Delphi.Personality>
<Source>
<Source Name="MainSource">plgKdynium.dpr</Source>
</Source>
<Excluded_Packages>
<Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\23.0\Bpl\SVGIconImageList290.bpl">Ethea SVGIconImageList VCL components</Excluded_Packages>
<Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\23.0\Bpl\EssentialsDR290.bpl">TurboPack Essentials Delphi Runtime package</Excluded_Packages>
<Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\23.0\Bpl\PngComponentsD290.bpl">Png Components for Delphi</Excluded_Packages>
<Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\23.0\Bpl\dmvcframeworkRT120.bpl">DMVCFramework - CopyRight (2010-2024) Daniele Teti and the DMVCFramework Team</Excluded_Packages>
<Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\23.0\Bpl\dclSVGIconImageListFMX290.bpl">Ethea SVGIconImageList FMX components</Excluded_Packages>
<Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\23.0\Bpl\Vyvoj12_0.bpl">Helios Orange Components</Excluded_Packages>
<Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\23.0\Bpl\dcldxIconLibraryRS29.bpl">Express Cross Platform Library Icon Library by Developer Express Inc.</Excluded_Packages>
<Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\23.0\Bpl\LockBox3DR290.bpl">TurboPack LockBox 3 Delphi runtime package</Excluded_Packages>
<Excluded_Packages Name="C:\Program Files (x86)\Embarcadero\Studio\22.0\bin\dclstd280.bpl">Embarcadero Standard Components</Excluded_Packages>
<Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\23.0\Bpl\OrpheusDBDD290.bpl">TurboPack Orpheus Delphi datataware designtime package</Excluded_Packages>
<Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\23.0\Bpl\LockBox3VCLDD290.bpl">TurboPack LockBox 3 VCL designtime package</Excluded_Packages>
<Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\23.0\Bpl\LockBoxDD290.bpl">TurboPack LockBox Delphi designtime package</Excluded_Packages>
<Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\23.0\Bpl\dclIconFontsImageList290.bpl">Ethea IconFontsImageList VCL components</Excluded_Packages>
<Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\23.0\Bpl\dclIconFontsImageListFMX290.bpl">Ethea IconFontsImageList FMX components</Excluded_Packages>
<Excluded_Packages Name="$(BDSBIN)\dcloffice2k290.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages>
<Excluded_Packages Name="$(BDSBIN)\dclofficexp290.bpl">Microsoft Office XP Sample Automation Server Wrapper Components</Excluded_Packages>
</Excluded_Packages>
</Delphi.Personality>
<Platforms>
<Platform value="Android">False</Platform>
<Platform value="Android64">False</Platform>
<Platform value="Linux64">False</Platform>
<Platform value="Win32">True</Platform>
<Platform value="Win64">False</Platform>
</Platforms>
</BorlandProject>
<ProjectFileVersion>12</ProjectFileVersion>
</ProjectExtensions>
<Import Project="$(BDS)\Bin\CodeGear.Delphi.Targets" Condition="Exists('$(BDS)\Bin\CodeGear.Delphi.Targets')"/>
<Import Project="$(APPDATA)\Embarcadero\$(BDSAPPDATABASEDIR)\$(PRODUCTVERSION)\UserTools.proj" Condition="Exists('$(APPDATA)\Embarcadero\$(BDSAPPDATABASEDIR)\$(PRODUCTVERSION)\UserTools.proj')"/>
</Project>

BIN
plgKdynium.res Normal file

Binary file not shown.

BIN
regMe_x64_kdynium.reg Normal file

Binary file not shown.

BIN
regMe_x86_kdynium.reg Normal file

Binary file not shown.