diff --git a/A00通用窗体/U_CompanySel.pas b/A00通用窗体/U_CompanySel.pas index 41f7d35..93479f5 100644 --- a/A00通用窗体/U_CompanySel.pas +++ b/A00通用窗体/U_CompanySel.pas @@ -87,7 +87,7 @@ type procedure InitGrid(); { Private declarations } public - FCoType, FAuthority, FStores, FsqlStr: string; + FCoType, FAuthority, FStores, FsqlStr, CANSHU4: string; { Public declarations } end; @@ -145,12 +145,12 @@ begin begin Close; sql.Clear; - sql.Add('select A.*,B.* '); + sql.Add('select A.*,B.* '); sql.Add(',BankName=(select top 1 BankName from Bs_Company_Bank X where X.CoID=A.CoID ) '); sql.Add(',ContactsId=(select top 1 UserID from SY_User X where X.UserName=B.Contacts ) '); sql.Add('from BS_Company A '); sql.Add('left join BS_Company_contact B ON A.COID=B.COID and B.IsDefault=1 '); - sql.Add('where 1=1 '); + sql.Add('where 1=1 AND VALID=''Y'''); if Trim(FCoType) <> '' then begin sql.Add(' and A.CoType=''' + Trim(FCoType) + ''''); @@ -163,8 +163,8 @@ begin begin sql.add(FsqlStr); end; -// if FStores = '' then -// sql.Add(' and A.Stores=''' + Trim(FStores) + ''''); + if CANSHU4 = '' then + sql.Add(' and A.Stores=''' + Trim(CANSHU4) + ''''); // ShowMessage(sql.Text); Open; end; diff --git a/A00通用窗体/U_UserSel.pas b/A00通用窗体/U_UserSel.pas index 10380e3..449995f 100644 --- a/A00通用窗体/U_UserSel.pas +++ b/A00通用窗体/U_UserSel.pas @@ -214,7 +214,11 @@ end; procedure TfrmUserSel.Tv1DblClick(Sender: TObject); begin - btnOK.Click; + + FRTUserID := CDS_1.FieldByName('EECode').AsString; + FRTUserName := CDS_1.FieldByName('EENAME').AsString; + ModalResult := 1; +// btnOK.Click; end; procedure TfrmUserSel.EENamePropertiesChange(Sender: TObject); diff --git a/A01基础公司管理/Company.dproj b/A01基础公司管理/Company.dproj index 5581145..1da8f5e 100644 --- a/A01基础公司管理/Company.dproj +++ b/A01基础公司管理/Company.dproj @@ -79,7 +79,7 @@ true - E:\rtgit\trade\D10xhGemei\A01基础公司管理\testDll.exe + D:\D10V1W\项目代码\D10xhGemei\A01基础公司管理\testDll.exe CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName) diff --git a/A01基础公司管理/U_CustInput.dfm b/A01基础公司管理/U_CustInput.dfm index 62c2334..bf45158 100644 --- a/A01基础公司管理/U_CustInput.dfm +++ b/A01基础公司管理/U_CustInput.dfm @@ -351,7 +351,8 @@ inherited frmCustInput: TfrmCustInput #27425#26376'25'#21495 #27425#27425#26376'25'#21495 #27425#26376'30'#21495 - #27425#27425#26376'30'#21495) + #27425#27425#26376'30'#21495 + #29616#37329) TabOrder = 10 Width = 200 end diff --git a/A01基础公司管理/U_CustInput.pas b/A01基础公司管理/U_CustInput.pas index 8280af5..f240351 100644 --- a/A01基础公司管理/U_CustInput.pas +++ b/A01基础公司管理/U_CustInput.pas @@ -467,20 +467,7 @@ begin Application.MessageBox('ظ!', 'ʾ', 0); Exit; end; - with ADOQueryCmd do - begin - Close; - sql.Clear; - sql.Add('select * from BS_Company where CoAbbrName=' + quotedstr(trim(CoAbbrName.Text))); - sql.Add(' and CoType=''ͻ'' '); - Open; - end; - if ADOQueryCmd.RecordCount > 1 then - begin - ADOQueryCmd.Connection.RollbackTrans; - Application.MessageBox('ظ!', 'ʾ', 0); - Exit; - end; + ////////////// ϵ /////////////////// if not CDS_LXR.IsEmpty then begin @@ -617,16 +604,17 @@ begin Application.MessageBox('Ϊ!', 'ʾ', 0); Exit; end; - if Trim(CoAbbrName.Text) = '' then - begin - Application.MessageBox('ƲΪ!', 'ʾ', 0); - Exit; - end; if Trim(CoName.Text) = '' then begin Application.MessageBox('ȫƲΪ!', 'ʾ', 0); Exit; end; + if Trim(CoAbbrName.Text) = '' then + begin + CoAbbrName.Text := CoName.Text; + + end; + if Trim(Saleser.Text) = '' then begin Application.MessageBox('ҵԱΪ!', 'ʾ', 0); @@ -673,12 +661,12 @@ begin EnableControls; Exit; end; -// if Trim(FieldByName('mxarea').AsString) = '' then -// begin -// Application.MessageBox('Ϊ!', 'ʾ', 0); -// EnableControls; -// Exit; -// end; + if Trim(FieldByName('mxarea').AsString) = '' then + begin + Application.MessageBox('Ϊ!', 'ʾ', 0); + EnableControls; + Exit; + end; Next; end; EnableControls; @@ -808,6 +796,8 @@ begin MainType := 'Cust'; flag := 'AREA'; flagname := ''; + fnote := true; + V1Note.Caption := ''; if ShowModal = 1 then begin with CDS_LXR do diff --git a/A01基础公司管理/U_Customer.dfm b/A01基础公司管理/U_Customer.dfm index b2b84d7..7ddf30c 100644 --- a/A01基础公司管理/U_Customer.dfm +++ b/A01基础公司管理/U_Customer.dfm @@ -21,7 +21,7 @@ inherited frmCustomer: TfrmCustomer Height = 30 AutoSize = True ButtonHeight = 30 - ButtonWidth = 131 + ButtonWidth = 147 Caption = 'ToolBar1' Color = clWhite DisabledImages = DataLink_Company.cxImageList_bar @@ -119,16 +119,24 @@ inherited frmCustomer: TfrmCustomer ImageIndex = 16 OnClick = ToolButton1Click end - object TBClose: TToolButton + object ToolButton4: TToolButton Left = 925 Top = 0 AutoSize = True + Caption = #26597#30475#23458#25143#20108#32500#30721 + ImageIndex = 8 + OnClick = ToolButton4Click + end + object TBClose: TToolButton + Left = 1076 + Top = 0 + AutoSize = True Caption = #20851#38381 ImageIndex = 7 OnClick = TBCloseClick end object SetupStore: TToolButton - Left = 996 + Left = 1147 Top = 0 AutoSize = True Caption = #19968#38190#35774#32622#38376#24215 @@ -429,8 +437,8 @@ inherited frmCustomer: TfrmCustomer Align = alClient PopupMenu = PopupMenu1 TabOrder = 6 + ExplicitTop = 126 object Tv1: TcxGridDBTableView - PopupMenu = PopupMenu1 Navigator.Buttons.CustomButtons = <> Navigator.Buttons.Delete.Enabled = False Navigator.Buttons.Delete.Visible = False @@ -566,6 +574,20 @@ inherited frmCustomer: TfrmCustomer Options.Editing = False Width = 66 end + object Tv1Column18: TcxGridDBColumn + Caption = #20462#25913#20154 + DataBinding.FieldName = 'Editer' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 70 + end + object Tv1Column19: TcxGridDBColumn + Caption = #20462#25913#26102#38388 + DataBinding.FieldName = 'Edittime' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 89 + end object Tv1Column5: TcxGridDBColumn Caption = #29702#21333 DataBinding.FieldName = 'Tallyer' @@ -671,9 +693,10 @@ inherited frmCustomer: TfrmCustomer Top = 187 end object GPM_1: TcxGridPopupMenu + Grid = cxGrid1 PopupMenus = <> Left = 180 - Top = 216 + Top = 217 end object DS_1: TDataSource DataSet = CDS_1 @@ -730,4 +753,155 @@ inherited frmCustomer: TfrmCustomer Left = 521 Top = 566 end + object fRMDB_1: TfrxDBDataset + UserName = 'fRMDB_1' + CloseDataSource = False + DataSet = ADOQueryPrint + BCDToCurrency = False + Left = 539 + Top = 462 + end + object frxRichObject1: TfrxRichObject + Left = 539 + Top = 511 + end + object frxOLEObject1: TfrxOLEObject + Left = 622 + Top = 461 + end + object frxBarCodeObject1: TfrxBarCodeObject + Left = 456 + Top = 461 + end + object frxPPTXExport1: TfrxPPTXExport + UseFileCache = True + ShowProgress = True + OverwritePrompt = False + DataOnly = False + OpenAfterExport = False + PictureType = gpPNG + Left = 705 + Top = 461 + end + object frxReport1: TfrxReport + Version = '6.9.12' + DataSet = fRMDB_1 + DataSetName = 'fRMDB_1' + DotMatrixReport = False + IniFile = '\Software\Fast Reports' + PreviewOptions.Buttons = [pbPrint, pbLoad, pbSave, pbExport, pbZoom, pbFind, pbOutline, pbPageSetup, pbTools, pbEdit, pbNavigator, pbExportQuick, pbCopy, pbSelection] + PreviewOptions.Zoom = 1.000000000000000000 + PrintOptions.Printer = 'Default' + PrintOptions.PrintOnSheet = 0 + ReportOptions.CreateDate = 45471.682319444440000000 + ReportOptions.LastChange = 45471.682319444440000000 + ScriptLanguage = 'PascalScript' + ScriptText.Strings = ( + 'begin' + '' + 'end.') + ShowProgress = False + Left = 789 + Top = 462 + Datasets = <> + Variables = <> + Style = <> + object Data: TfrxDataPage + Height = 1000.000000000000000000 + Width = 1000.000000000000000000 + end + object Page1: TfrxReportPage + PaperWidth = 70.000000000000000000 + PaperHeight = 50.000000000000000000 + PaperSize = 256 + LeftMargin = 10.000000000000000000 + RightMargin = 10.000000000000000000 + TopMargin = 10.000000000000000000 + BottomMargin = 10.000000000000000000 + Frame.Typ = [] + MirrorMode = [] + end + end + object ADOQueryPrint: TADOQuery + Connection = DataLink_Company.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 788 + Top = 311 + end + object frxDBDataset1: TfrxDBDataset + UserName = 'fRMDB_1' + CloseDataSource = False + DataSet = ADOQuery1 + BCDToCurrency = False + Left = 547 + Top = 470 + end + object frxRichObject2: TfrxRichObject + Left = 547 + Top = 519 + end + object frxOLEObject2: TfrxOLEObject + Left = 630 + Top = 469 + end + object frxBarCodeObject2: TfrxBarCodeObject + Left = 464 + Top = 469 + end + object frxPPTXExport2: TfrxPPTXExport + UseFileCache = True + ShowProgress = True + OverwritePrompt = False + DataOnly = False + OpenAfterExport = False + PictureType = gpPNG + Left = 713 + Top = 469 + end + object frxReport2: TfrxReport + Version = '6.9.12' + DataSet = frxDBDataset1 + DataSetName = 'fRMDB_1' + DotMatrixReport = False + IniFile = '\Software\Fast Reports' + PreviewOptions.Buttons = [pbPrint, pbLoad, pbSave, pbExport, pbZoom, pbFind, pbOutline, pbPageSetup, pbTools, pbEdit, pbNavigator, pbExportQuick, pbCopy, pbSelection] + PreviewOptions.Zoom = 1.000000000000000000 + PrintOptions.Printer = 'Default' + PrintOptions.PrintOnSheet = 0 + ReportOptions.CreateDate = 45471.682319444440000000 + ReportOptions.LastChange = 45471.682319444440000000 + ScriptLanguage = 'PascalScript' + ScriptText.Strings = ( + 'begin' + '' + 'end.') + ShowProgress = False + Left = 797 + Top = 470 + Datasets = <> + Variables = <> + Style = <> + object Data: TfrxDataPage + Height = 1000.000000000000000000 + Width = 1000.000000000000000000 + end + object Page1: TfrxReportPage + PaperWidth = 70.000000000000000000 + PaperHeight = 50.000000000000000000 + PaperSize = 256 + LeftMargin = 10.000000000000000000 + RightMargin = 10.000000000000000000 + TopMargin = 10.000000000000000000 + BottomMargin = 10.000000000000000000 + Frame.Typ = [] + MirrorMode = [] + end + end + object ADOQuery1: TADOQuery + LockType = ltReadOnly + Parameters = <> + Left = 526 + Top = 305 + end end diff --git a/A01基础公司管理/U_Customer.pas b/A01基础公司管理/U_Customer.pas index 3e2a106..3b79f2e 100644 --- a/A01基础公司管理/U_Customer.pas +++ b/A01基础公司管理/U_Customer.pas @@ -18,7 +18,8 @@ uses FireDAC.DatS, FireDAC.Phys.Intf, FireDAC.DApt.Intf, FireDAC.Stan.Async, FireDAC.DApt, FireDAC.Comp.DataSet, FireDAC.Comp.Client, cxContainer, dxScrollbarAnnotations, Vcl.Menus, cxProgressBar, dxSkinsCore, - dxSkinsDefaultPainters, dxSkinWXI; + dxSkinsDefaultPainters, dxSkinWXI, frxClass, frxExportBaseDialog, + frxExportPPTX, frxBarcode, frxOLE, frxRich, frxDBSet; type TfrmCustomer = class(TfrmBaseList) @@ -106,6 +107,23 @@ type Tv1Column15: TcxGridDBColumn; Tv1Column16: TcxGridDBColumn; Tv1Column17: TcxGridDBColumn; + Tv1Column18: TcxGridDBColumn; + Tv1Column19: TcxGridDBColumn; + ToolButton4: TToolButton; + fRMDB_1: TfrxDBDataset; + frxRichObject1: TfrxRichObject; + frxOLEObject1: TfrxOLEObject; + frxBarCodeObject1: TfrxBarCodeObject; + frxPPTXExport1: TfrxPPTXExport; + frxReport1: TfrxReport; + ADOQueryPrint: TADOQuery; + frxDBDataset1: TfrxDBDataset; + frxRichObject2: TfrxRichObject; + frxOLEObject2: TfrxOLEObject; + frxBarCodeObject2: TfrxBarCodeObject; + frxPPTXExport2: TfrxPPTXExport; + frxReport2: TfrxReport; + ADOQuery1: TADOQuery; procedure FormDestroy(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure TBCloseClick(Sender: TObject); @@ -130,6 +148,7 @@ type procedure N1Click(Sender: TObject); procedure N2Click(Sender: TObject); procedure SetupStoreClick(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); //procedure btnStoreOKClick(Sender: TObject); private fFlileFlag: string; @@ -388,6 +407,48 @@ begin end; +procedure TfrmCustomer.ToolButton4Click(Sender: TObject); +var + fPrintFile: string; + Txt, fImagePath, Txt2, fImagePath2: string; + Moudle: Thandle; + Makebar: TMakebar; + Mixtext: TMixtext; +begin + + with ADOQueryPrint do + begin + Close; + SQL.Clear; + SQL.Add(' select ''' + trim(CDS_1.FieldByName('COID').AsString) + ''''); + + Open; + end; + if ADOQueryPrint.IsEmpty then + begin + Application.MessageBox('ǩδҵ', 'ʾϢ', MB_ICONERROR); + exit; + end; + + ExportFtErpFile('ͻά.fr3', ADOQueryBaseTemp); + fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\ͻά.fr3'; + if FileExists(fPrintFile) then + begin + + frxReport1.LoadFromFile(fPrintFile); + frxReport1.PrintOptions.Copies := 1; + frxReport1.PrintOptions.ShowDialog := false; + frxReport1.PrepareReport(True); + frxReport1.ShowReport(); + + end + else + begin + Application.MessageBox(PChar('ûҵ' + fPrintFile), 'ʾ', 0); + end; + +end; + procedure TfrmCustomer.CoCodeKeyPress(Sender: TObject; var Key: Char); begin if Key = #13 then diff --git a/A01基础公司管理/U_CustomerInput.pas b/A01基础公司管理/U_CustomerInput.pas index 4fc7b5f..92ca5ea 100644 --- a/A01基础公司管理/U_CustomerInput.pas +++ b/A01基础公司管理/U_CustomerInput.pas @@ -374,6 +374,7 @@ begin if SaveData() then begin Application.MessageBox('ɹ!', 'ʾ', 0); + ModalResult := 1; end; end; diff --git a/A01基础公司管理/testDll.res b/A01基础公司管理/testDll.res index e116c48..2465ca0 100644 Binary files a/A01基础公司管理/testDll.res and b/A01基础公司管理/testDll.res differ diff --git a/A02基础产品管理/ClothInfo.dproj b/A02基础产品管理/ClothInfo.dproj index 29a9360..ff08d23 100644 --- a/A02基础产品管理/ClothInfo.dproj +++ b/A02基础产品管理/ClothInfo.dproj @@ -80,7 +80,7 @@ CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName) - E:\rtgit\trade\D10xhGemei\A02基础产品管理\testDll.exe + D:\D10V1W\项目代码\D10xhGemei\A02基础产品管理\testDll.exe diff --git a/A02基础产品管理/U_ClothInfo.dfm b/A02基础产品管理/U_ClothInfo.dfm index 7a72c6b..e737f0a 100644 --- a/A02基础产品管理/U_ClothInfo.dfm +++ b/A02基础产品管理/U_ClothInfo.dfm @@ -385,7 +385,7 @@ inherited frmClothInfo: TfrmClothInfo object TCBNOR1: TComboBox Tag = 2 Left = 123 - Top = 4 + Top = 5 Width = 78 Height = 29 Anchors = [akLeft] @@ -641,17 +641,12 @@ inherited frmClothInfo: TfrmClothInfo Width = 104 end object Tv1Column14: TcxGridDBColumn - Caption = #21518#25972#29702#20013#25991 - DataBinding.FieldName = 'CraftName' + Caption = #24211#20301 + DataBinding.FieldName = 'StkPosition' DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter Width = 141 end - object Tv1Column15: TcxGridDBColumn - Caption = #21518#25972#29702#33521#25991 - DataBinding.FieldName = 'CraftEName' - DataBinding.IsNullValueType = True - Width = 125 - end object Tv1Column16: TcxGridDBColumn Caption = #20379#24212#21830 DataBinding.FieldName = 'FtyName' @@ -776,13 +771,13 @@ inherited frmClothInfo: TfrmClothInfo end inherited ADOQueryBaseCmd: TADOQuery Connection = DataLink_ClothInfo.ADOLink - Left = 634 - Top = 124 + Left = 623 + Top = 185 end inherited ADOQueryBaseTemp: TADOQuery Connection = DataLink_ClothInfo.ADOLink - Left = 695 - Top = 124 + Left = 694 + Top = 190 end object DS_Tree: TDataSource DataSet = CDS_Tree @@ -806,8 +801,8 @@ inherited frmClothInfo: TfrmClothInfo object ADOQueryCmd: TADOQuery Connection = DataLink_ClothInfo.ADOLink Parameters = <> - Left = 756 - Top = 124 + Left = 763 + Top = 165 end object GPM_1: TcxGridPopupMenu Grid = cxGrid1 @@ -824,8 +819,8 @@ inherited frmClothInfo: TfrmClothInfo Connection = DataLink_ClothInfo.ADOLink LockType = ltReadOnly Parameters = <> - Left = 817 - Top = 124 + Left = 915 + Top = 265 end object CDS_1: TClientDataSet Aggregates = <> @@ -894,8 +889,8 @@ inherited frmClothInfo: TfrmClothInfo object adoqueryPicture: TADOQuery Connection = DataLink_ClothInfo.ADOLink Parameters = <> - Left = 878 - Top = 124 + Left = 908 + Top = 197 end object OpenDialog1: TOpenDialog Left = 634 diff --git a/A02基础产品管理/U_ClothInfo.pas b/A02基础产品管理/U_ClothInfo.pas index e9aa064..fe96824 100644 --- a/A02基础产品管理/U_ClothInfo.pas +++ b/A02基础产品管理/U_ClothInfo.pas @@ -118,7 +118,6 @@ type Tv1Column3: TcxGridDBColumn; Tv1Column12: TcxGridDBColumn; Tv1Column14: TcxGridDBColumn; - Tv1Column15: TcxGridDBColumn; Tv1Column16: TcxGridDBColumn; Tv1Column17: TcxGridDBColumn; Tv1Column18: TcxGridDBColumn; @@ -728,6 +727,8 @@ begin TypeInt := 2; FBCIID := Trim(Self.CDS_1.fieldbyname('BCIID').AsString); FCTID := Trim(Self.CDS_Tree.fieldbyname('CTID').AsString); + fname := Trim(Self.CDS_1.fieldbyname('C_NAME').AsString); + //־ with ADOQueryCmd do begin @@ -743,6 +744,7 @@ begin sql.Add(')'); EXECSQL; end; + if ShowModal = 1 then begin Self.InitGrid(); @@ -799,6 +801,7 @@ begin with frmClothTypeSel do begin FCTType := Self.FCTType; + canshu4 := Self.canshu4; if showmodal = 1 then begin MCTID := trim(ADOQueryHelp.fieldbyname('CTID').asstring); @@ -915,6 +918,13 @@ begin FBCIID := Trim(Self.CDS_1.fieldbyname('BCIID').AsString); FCTID := Trim(Self.CDS_Tree.fieldbyname('CTID').AsString); ToolButton1.Visible := False; + + ToolButton6.Visible := false; + + ToolBar2.Visible := false; + ToolBar3.Visible := false; + ToolBar4.Visible := false; + if ShowModal = 1 then begin Self.InitGrid(); diff --git a/A02基础产品管理/U_ClothInfoInput.dfm b/A02基础产品管理/U_ClothInfoInput.dfm index e8e03df..d133b1c 100644 --- a/A02基础产品管理/U_ClothInfoInput.dfm +++ b/A02基础产品管理/U_ClothInfoInput.dfm @@ -428,12 +428,12 @@ object frmClothInfoInput: TfrmClothInfoInput end object quota: TcxCurrencyEdit Tag = 2 - Left = 510 + Left = 567 Top = 131 EditValue = 10.000000000000000000 Properties.AssignedValues.DisplayFormat = True TabOrder = 15 - Width = 234 + Width = 177 end object StkPosition: TcxMRUEdit Left = 119 @@ -464,6 +464,21 @@ object frmClothInfoInput: TfrmClothInfoInput OnKeyPress = CYColorKeyPress Width = 234 end + object quotaUNIT: TComboBox + Tag = 2 + Left = 510 + Top = 133 + Width = 57 + Height = 29 + Style = csDropDownList + Ctl3D = False + ParentCtl3D = False + TabOrder = 19 + Items.Strings = ( + '+' + '-' + '+-') + end end object Panel3: TPanel Left = 0 @@ -973,10 +988,18 @@ object frmClothInfoInput: TfrmClothInfoInput Visible = False OnClick = ToolButton11Click end - object ToolButton12: TToolButton + object ToolButton14: TToolButton Left = 284 Top = 0 AutoSize = True + Caption = #23548#20986 + ImageIndex = 38 + OnClick = ToolButton14Click + end + object ToolButton12: TToolButton + Left = 355 + Top = 0 + AutoSize = True Caption = #20840#37096#21024#38500 ImageIndex = 33 OnClick = ToolButton12Click @@ -984,14 +1007,15 @@ object frmClothInfoInput: TfrmClothInfoInput end object cxGrid1: TcxGrid Left = 1 - Top = 31 + Top = 72 Width = 548 - Height = 738 + Height = 697 Align = alClient TabOrder = 1 object TV1: TcxGridDBTableView Navigator.Buttons.CustomButtons = <> - FindPanel.DisplayMode = fpdmAlways + FilterBox.CustomizeDialog = False + FindPanel.DisplayMode = fpdmManual ScrollbarAnnotations.CustomAnnotations = <> DataController.DataSource = DS_1 DataController.Filter.AutoDataSetFilter = True @@ -1061,6 +1085,44 @@ object frmClothInfoInput: TfrmClothInfoInput GridView = TV1 end end + object Panel7: TPanel + Left = 1 + Top = 31 + Width = 548 + Height = 41 + Align = alTop + TabOrder = 2 + object Label8: TLabel + Left = 22 + Top = 10 + Width = 32 + Height = 21 + Caption = #39068#33394 + end + object Label17: TLabel + Left = 244 + Top = 10 + Width = 32 + Height = 21 + Caption = #33394#21495 + end + object C_COLOR: TcxTextEdit + Tag = 2 + Left = 72 + Top = 6 + Properties.OnChange = C_COLORPropertiesChange + TabOrder = 0 + Width = 150 + end + object C_COLORNO: TcxTextEdit + Tag = 2 + Left = 312 + Top = 6 + Properties.OnChange = C_COLORPropertiesChange + TabOrder = 1 + Width = 150 + end + end end object ADOQueryCmd: TADOQuery Connection = DataLink_ClothInfo.ADOLink diff --git a/A02基础产品管理/U_ClothInfoInput.pas b/A02基础产品管理/U_ClothInfoInput.pas index 23a27db..36911f0 100644 --- a/A02基础产品管理/U_ClothInfoInput.pas +++ b/A02基础产品管理/U_ClothInfoInput.pas @@ -140,6 +140,13 @@ type Process: TcxButtonEdit; ToolButton13: TToolButton; TV3Column1: TcxGridDBColumn; + Panel7: TPanel; + Label8: TLabel; + Label17: TLabel; + C_COLOR: TcxTextEdit; + C_COLORNO: TcxTextEdit; + ToolButton14: TToolButton; + quotaUNIT: TComboBox; procedure FormShow(Sender: TObject); procedure TBCloseClick(Sender: TObject); procedure ToolButton1Click(Sender: TObject); @@ -176,6 +183,8 @@ type procedure C_FromName5PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure CostPriceClick(Sender: TObject); procedure ToolButton13Click(Sender: TObject); + procedure C_COLORPropertiesChange(Sender: TObject); + procedure ToolButton14Click(Sender: TObject); private canshu1: string; Fint: Integer; @@ -190,7 +199,7 @@ type public FBCIID, FCTID: string; TypeInt: Integer; //0_1_2޸ - fbuzhongedit, canshu3, canshu4: string; + fbuzhongedit, canshu3, canshu4, fname: string; { Public declarations } end; @@ -380,7 +389,7 @@ begin SqlStr := 'SELECT A.* FROM BS_Cloth_Info_Sub A '; SqlStr := SqlStr + 'WHERE A.BCIID = ''' + Trim(FBCIID) + ''' '; - SqlStr := SqlStr + 'ORDER BY '; + SqlStr := SqlStr + 'ORDER BY CASE WHEN C_COLORNO NOT LIKE ''%[^0-9]%'' THEN dbo.getNum(C_Colorno) ELSE 9999999999 END, '; SqlStr := SqlStr + ' CASE '; SqlStr := SqlStr + ' WHEN C_ColorNo NOT LIKE ''%[^0-9]%'' THEN 0 '; SqlStr := SqlStr + ' ELSE 1 '; @@ -406,7 +415,7 @@ begin SqlStr := SqlStr + ' 0 '; SqlStr := SqlStr + ' END, '; SqlStr := SqlStr + ' C_ColorNo'; - // ShowMessage(sqlstr); + InitCDSData(ADO_1, CDS_1, Tv1, SqlStr, '', ''); SqlStr := 'select A.* from BS_Cloth_Info_GYSCP A '; @@ -617,6 +626,15 @@ begin end; +procedure TfrmClothInfoInput.C_COLORPropertiesChange(Sender: TObject); +begin + if ado_1.Active = False then + Exit; + SDofilter(ado_1, SGetFilters(Panel7, 1, 2)); + SCreateCDS(ado_1, CDS_1); + SInitCDSData(ado_1, CDS_1); +end; + procedure TfrmClothInfoInput.C_FromName2PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin if C_fromName.text = '' then @@ -849,6 +867,12 @@ begin FBCIID := ''; BCIID.text := ''; C_Code.text := ''; + + ClearCDSColumn(CDS_1, ['BCISID', 'BCIID']); + + ClearCDSColumn(CDS_3, ['CICID', 'BCIID']); + + ClearCDSColumn(CDS_2, ['BCIGID', 'BCIID']); end; if canshu3 = 'Ȩ' then begin @@ -866,7 +890,7 @@ end; function TfrmClothInfoInput.SaveData(): Boolean; var - MaxBCIID, MaxBCPID, maxId2, MAXID3, MAXID4: string; + MaxBCIID, MaxBCPID, maxId2, MAXID3, MAXID4, MAXID5: string; begin try ADOQueryCmd.Connection.BeginTrans; @@ -943,6 +967,16 @@ begin raise Exception.Create('ظ!'); end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select count(*) as AA from BS_Cloth_Info where C_name=''' + Trim(C_name.Text) + ''''); + Open; + if FieldByName('AA').AsInteger > 1 then + raise Exception.Create('ظ!'); + + end; //////////////// ////////////////////// /// //////////////// Ӳ ////////////////////// @@ -1136,17 +1170,80 @@ begin end; end; ////////////////////////// 浥λϵӱ ////////////////////////// - ADOQueryCmd.Connection.CommitTrans; +/// +/// +/// +/// +/// ////////////////////////// ӱɫʱ ////////////////////////// -// with ADOQueryCmd do -// begin -// Close; -// SQL.Clear; -// sql.Add(' exec P_BS_CloInfo_UpAllTab @BCIID=' + QuotedStr(trim(MaxBCIID))); -// Sql.Add(',@UpId=' + quotedstr(Trim(DCode))); -// Sql.Add(',@Uper=' + quotedstr(Trim(DName))); -// ExecSQL; -// end; + if TypeInt = 1 then + begin + with CDS_1 do + begin + First; + while not Eof do + begin + if Trim(CDS_1.fieldbyname('BCISID').AsString) = '' then + begin + if GetLSNo(ADOQueryTemp, MAXID5, 'YS', 'BS_Cloth_Info_Sub', 4, 1) = False then + raise Exception.Create('ȡˮʧ!'); + end + else + begin + MAXID5 := Trim(CDS_1.fieldbyname('BCISID').AsString); + end; + + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add(' select * from BS_Cloth_Info_Sub where '); + sql.Add(' BCISID=''' + Trim(MAXID5) + ''''); + Open; + end; + with ADOQueryCmd do + begin + if Trim(CDS_1.fieldbyname('BCISID').AsString) = '' then + begin + Append; + FieldByName('FillID').Value := Trim(DCode); + FieldByName('Filler').Value := Trim(DName); + FieldByName('FillTime').Value := SGetServerDateTime(ADOQueryTemp); + end + else + begin + Edit; + FieldByName('EditID').Value := Trim(DCode); + FieldByName('Editer').Value := Trim(DName); + FieldByName('EditTime').Value := SGetServerDateTime(ADOQueryTemp); + end; + FieldByName('BCIID').Value := Trim(MaxBCIID); + FieldByName('BCISID').Value := Trim(MAXID5); + RTSetSaveDataCDS(ADOQueryCmd, Tv1, CDS_1, 'BS_Cloth_Info_Sub', 0); + Post; + end; + Next; + end; + end; + + end; + + +////////////////////////// ӱɫ ////////////////////////// + ADOQueryCmd.Connection.CommitTrans; + if (fname <> '') and (fname <> (C_Name.Text)) then + begin + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add(' exec P_BS_CloInfo_UpAlLNAME @BCIID=' + QuotedStr(trim(MaxBCIID))); + Sql.Add(',@UpId=' + quotedstr(Trim(DCode))); + Sql.Add(',@Uper=' + quotedstr(Trim(DName))); + ExecSQL; + end; + + end; FBCIID := MaxBCIID; @@ -1351,6 +1448,13 @@ begin end; end; +procedure TfrmClothInfoInput.ToolButton14Click(Sender: TObject); +begin + if CDS_1.IsEmpty then + Exit; + TcxGridToExcel(C_CODE.TEXT + 'ɫϸ', cxGrid1); +end; + procedure TfrmClothInfoInput.ToolButton1Click(Sender: TObject); var MC_Code: string; diff --git a/A02基础产品管理/U_ClothTypeSel.pas b/A02基础产品管理/U_ClothTypeSel.pas index 8828c22..e62451f 100644 --- a/A02基础产品管理/U_ClothTypeSel.pas +++ b/A02基础产品管理/U_ClothTypeSel.pas @@ -6,8 +6,8 @@ uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, cxInplaceContainer, cxDBTL, cxControls, cxTLData, DB, ADODB, cxLookAndFeels, - cxLookAndFeelPainters, cxTLdxBarBuiltInMenu, - dxSkinsDefaultPainters, dxSkinsCore, cxFilter, dxScrollbarAnnotations; + cxLookAndFeelPainters, cxTLdxBarBuiltInMenu, dxSkinsDefaultPainters, + dxSkinsCore, cxFilter, dxScrollbarAnnotations; type TfrmClothTypeSel = class(TForm) @@ -22,7 +22,7 @@ type private { Private declarations } public - FCTType: string; + FCTType, canshu4: string; { Public declarations } end; @@ -55,7 +55,16 @@ begin begin Close; SQL.Clear; - SQL.Add('select * from BS_Cloth_Type where CTType=' + quotedstr(FCTType) + ' order by CTlevel,CTOrder,CTName'); +// SQL.Add('select * from BS_Cloth_Type where CTType=' + quotedstr(FCTType)); + if canshu4 = 'μӹ' then + begin + SQL.Add('SELECT * FROM dbo.F_BS_CloType(''CT2505100001'') A ORDER BY CTName '); + end + else + begin + SQL.Add('SELECT * FROM dbo.F_BS_CloType(''CT2412300003'') A ORDER BY CTName '); + end; +// sql.Add(' order by CTlevel,CTOrder,CTName'); Open; end; cxDBTreeList1.Items[0].Expand(false); diff --git a/A02基础产品管理/U_Edit.dfm b/A02基础产品管理/U_Edit.dfm index eb11e64..c75640a 100644 --- a/A02基础产品管理/U_Edit.dfm +++ b/A02基础产品管理/U_Edit.dfm @@ -32,9 +32,11 @@ object frmEdit: TfrmEdit PopupMenu = PopupMenu1 TabOrder = 0 object TV4: TcxGridDBTableView + OnKeyDown = TV4KeyDown Navigator.Buttons.CustomButtons = <> FindPanel.DisplayMode = fpdmAlways ScrollbarAnnotations.CustomAnnotations = <> + OnCustomDrawCell = TV4CustomDrawCell DataController.DataSource = DS_4 DataController.Filter.AutoDataSetFilter = True DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] @@ -96,6 +98,14 @@ object frmEdit: TfrmEdit HeaderAlignmentHorz = taCenter Width = 100 end + object TV4Column1: TcxGridDBColumn + Tag = 3 + Caption = #26159#21542#37325#22797 + DataBinding.FieldName = 'IsRepeat' + DataBinding.IsNullValueType = True + Visible = False + Width = 70 + end end object cxGridLevel4: TcxGridLevel GridView = TV4 diff --git a/A02基础产品管理/U_Edit.pas b/A02基础产品管理/U_Edit.pas index 40a2eaf..208c751 100644 --- a/A02基础产品管理/U_Edit.pas +++ b/A02基础产品管理/U_Edit.pas @@ -42,6 +42,7 @@ type CDS_LM: TClientDataSet; OpenDialog1: TOpenDialog; ToolButton5: TToolButton; + TV4Column1: TcxGridDBColumn; procedure Button2Click(Sender: TObject); procedure FormShow(Sender: TObject); procedure TBCloseClick(Sender: TObject); @@ -53,6 +54,8 @@ type procedure ToolButton3Click(Sender: TObject); procedure ToolButton4Click(Sender: TObject); procedure ToolButton5Click(Sender: TObject); + procedure TV4CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); + procedure TV4KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); private { Private declarations } public @@ -81,7 +84,7 @@ var SqlStr: string; begin readCxGrid(self.Caption + 'TV4', Tv4, 'Ʒ'); - SqlStr := 'select A.* from BS_Cloth_Info_Sub A '; + SqlStr := 'select A.*,IsRepeat=0 from BS_Cloth_Info_Sub A '; if FBCISID = '' then begin SqlStr := SqlStr + ' where 1<>1'; @@ -286,6 +289,24 @@ begin WriteCxGrid(self.Caption + 'TV4', Tv4, 'Ʒ'); end; +procedure TfrmEdit.TV4CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +begin + if '1' = AViewInfo.GridRecord.Values[TV4Column1.Index] then + ACanvas.Brush.Color := $008080FF; +end; + +procedure TfrmEdit.TV4KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); +begin + if Key = VK_DOWN then + begin + // ťĵ¼ Button1 İťƣ + ToolButton2.Click; + + // ѡֹ TreeView ƶҪɾУ + Key := 0; + end; +end; + function TfrmEdit.SaveData(): Boolean; var maxId4: string; @@ -341,16 +362,64 @@ begin end; end; + CDS_4.DisableControls; + try + // б + CDS_4.First; + while not CDS_4.Eof do + begin + CDS_4.Edit; + CDS_4.FieldByName('IsRepeat').AsString := '0'; + CDS_4.Post; + CDS_4.Next; + end; + + // ѯظɫ+ɫ + with ADOQueryTemp do + begin + Close; + SQL.Clear; + SQL.Add('select C_Color,C_ColorNo from BS_Cloth_Info_Sub where BCIID=''' + Trim(FBCIID) + ''''); + SQL.Add(' group by C_Color,C_ColorNo having count(*)>1'); + Open; + end; + + // ظ + while not ADOQueryTemp.Eof do + begin + CDS_4.First; + while not CDS_4.Eof do + begin + if (Trim(CDS_4.FieldByName('C_Color').AsString) = Trim(ADOQueryTemp.FieldByName('C_Color').AsString)) and (Trim(CDS_4.FieldByName('C_ColorNo').AsString) = Trim(ADOQueryTemp.FieldByName('C_ColorNo').AsString)) then + begin + CDS_4.Edit; + CDS_4.FieldByName('IsRepeat').AsString := '1'; // + CDS_4.Post; + end; + CDS_4.Next; + end; + ADOQueryTemp.Next; + end; + finally + CDS_4.EnableControls; + end; + +// ڶԭı׳ȫ䣩 with ADOQueryTemp do begin Close; sql.Clear; - sql.Add('select count(BCISID) as AA from BS_Cloth_Info_Sub where BCIID=''' + Trim(FBCIID) + ''''); - sql.Add(' group by C_Color,C_ColorNo having count(BCISID)>1'); + sql.Add('select count(BCISID) as AA,C_Color,C_ColorNo from BS_Cloth_Info_Sub where BCIID=''' + Trim(FBCIID) + ''''); + sql.Add(' group by C_Color,C_ColorNo having count(*)>1'); Open; end; - if StrToFloatDef(ADOQueryTemp.fieldbyname('AA').asstring, 1) > 1 then - raise Exception.Create('ɫɫظ!'); + if ADOQueryTemp.Active and not ADOQueryTemp.IsEmpty then + begin + if StrToFloatDef(ADOQueryTemp.fieldbyname('AA').asstring, 1) > 1 then + begin + raise Exception.Create('ɫظѱ'); + end; + end; with ADOQueryCmd do begin diff --git a/A02基础产品管理/U_GetDllForm.pas b/A02基础产品管理/U_GetDllForm.pas index fb31060..32b4ca8 100644 --- a/A02基础产品管理/U_GetDllForm.pas +++ b/A02基础产品管理/U_GetDllForm.pas @@ -75,7 +75,7 @@ begin user := 'rtsa'; pswd := 'rightsoft@5740'; DConString := 'Provider=SQLOLEDB.1;Password=' + pswd + ';Persist Security Info=True;User ID=' + user + ';Initial Catalog=' + dtbase + ';Data Source=' + server; -// DParameters1:='Ȩ'; + Parameters1 := ''; // Parameters2 := '֯'; Parameters2 := 'ͨ'; @@ -133,7 +133,7 @@ begin 191: // begin - with TfrmClothInfoProcessList.Create(Application.MainForm, Title, trim(Parameters1), trim(Parameters2), trim(Parameters3), trim(Parameters4), trim(Parameters5), trim(Parameters10),formId,title) do // + with TfrmClothInfoProcessList.Create(Application.MainForm, Title, trim(Parameters1), trim(Parameters2), trim(Parameters3), trim(Parameters4), trim(Parameters5), trim(Parameters10), FormID, Title) do // begin fFormID := FormID; FormStyle := mstyle; @@ -145,7 +145,7 @@ begin 192: //չ begin - with TfrmClothInfoTechnicsList.Create(Application.MainForm, Title, trim(Parameters1), trim(Parameters2), trim(Parameters3), trim(Parameters4), trim(Parameters5), trim(Parameters10),formId,title) do // + with TfrmClothInfoTechnicsList.Create(Application.MainForm, Title, trim(Parameters1), trim(Parameters2), trim(Parameters3), trim(Parameters4), trim(Parameters5), trim(Parameters10), FormID, Title) do // begin fFormID := FormID; FormStyle := mstyle; @@ -157,7 +157,7 @@ begin 111: // Ʒ begin - with TfrmClothType.Create(Application.MainForm, Title, trim(Parameters1), trim(Parameters2), trim(Parameters3), trim(Parameters4), trim(Parameters5), trim(Parameters10),formId,title) do // + with TfrmClothType.Create(Application.MainForm, Title, trim(Parameters1), trim(Parameters2), trim(Parameters3), trim(Parameters4), trim(Parameters5), trim(Parameters10), FormID, Title) do // begin fFormID := FormID; FormStyle := mstyle; @@ -169,7 +169,7 @@ begin 112: // ƷϢ begin - with TfrmClothInfo.Create(Application.MainForm, Title, trim(Parameters1), trim(Parameters2), trim(Parameters3), trim(Parameters4), trim(Parameters5), trim(Parameters10),formId,title) do // + with TfrmClothInfo.Create(Application.MainForm, Title, trim(Parameters1), trim(Parameters2), trim(Parameters3), trim(Parameters4), trim(Parameters5), trim(Parameters10), FormID, Title) do // begin fFormID := FormID; WindowState := mstate; @@ -179,7 +179,7 @@ begin 122: // Ϣ begin - with TfrmTatClothInfo.Create(Application.MainForm, Title, trim(Parameters1), trim(Parameters2), trim(Parameters3), trim(Parameters4), trim(Parameters5), trim(Parameters10),formId,title) do // + with TfrmTatClothInfo.Create(Application.MainForm, Title, trim(Parameters1), trim(Parameters2), trim(Parameters3), trim(Parameters4), trim(Parameters5), trim(Parameters10), FormID, Title) do // begin fFormID := FormID; FormStyle := mstyle; @@ -191,7 +191,7 @@ begin 132: // ֯ƷϢ begin - with TfrmKnitClothInfoList.Create(Application.MainForm, Title, trim(Parameters1), trim(Parameters2), trim(Parameters3), trim(Parameters4), trim(Parameters5), trim(Parameters10),formId,title) do // + with TfrmKnitClothInfoList.Create(Application.MainForm, Title, trim(Parameters1), trim(Parameters2), trim(Parameters3), trim(Parameters4), trim(Parameters5), trim(Parameters10), FormID, Title) do // begin fFormID := FormID; FormStyle := mstyle; diff --git a/A02基础产品管理/U_SelectQtyUnit.dfm b/A02基础产品管理/U_SelectQtyUnit.dfm index fd8018b..22202eb 100644 --- a/A02基础产品管理/U_SelectQtyUnit.dfm +++ b/A02基础产品管理/U_SelectQtyUnit.dfm @@ -25,7 +25,7 @@ inherited frmSelectQtyUnit: TfrmSelectQtyUnit Items.Strings = ( 'M' 'Y' - 'Kg' + 'KG' #20214 #21452 #24352 diff --git a/A02基础产品管理/testDll.res b/A02基础产品管理/testDll.res index e116c48..2465ca0 100644 Binary files a/A02基础产品管理/testDll.res and b/A02基础产品管理/testDll.res differ diff --git a/A09财务通用管理/Financial.dproj b/A09财务通用管理/Financial.dproj index 04fafe2..7384243 100644 --- a/A09财务通用管理/Financial.dproj +++ b/A09财务通用管理/Financial.dproj @@ -80,7 +80,7 @@ CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName) - E:\rtgit\trade\D10xhGemei\A09财务通用管理\testDll.exe + D:\D10V1W\项目代码\D10xhGemei\A09财务通用管理\testDll.exe diff --git a/A09财务通用管理/U_CollectInput.dfm b/A09财务通用管理/U_CollectInput.dfm index ab557ed..8352e44 100644 --- a/A09财务通用管理/U_CollectInput.dfm +++ b/A09财务通用管理/U_CollectInput.dfm @@ -65,6 +65,7 @@ object frmCollectInput: TfrmCollectInput ParentColor = False ParentCtl3D = False TabOrder = 1 + ExplicitTop = 36 object Label18: TLabel Left = 37 Top = 61 @@ -144,7 +145,7 @@ object frmCollectInput: TfrmCollectInput end object Label7: TLabel Left = 37 - Top = 200 + Top = 229 Width = 62 Height = 21 Caption = #22791' '#27880 @@ -170,6 +171,20 @@ object frmCollectInput: TfrmCollectInput Height = 21 Caption = #21457#31080#21495 end + object Label6: TLabel + Left = 38 + Top = 193 + Width = 62 + Height = 21 + Caption = #35843' '#22686 + end + object Label10: TLabel + Left = 276 + Top = 192 + Width = 62 + Height = 21 + Caption = #35843' '#20943 + end object OurCoName: TcxButtonEdit Left = 107 Top = 11 @@ -335,7 +350,7 @@ object frmCollectInput: TfrmCollectInput end object Note: TcxMemo Left = 107 - Top = 199 + Top = 228 TabOrder = 12 Height = 127 Width = 886 @@ -371,13 +386,27 @@ object frmCollectInput: TfrmCollectInput Default = True Kind = bkEllipsis end> - Properties.ReadOnly = True + Properties.ReadOnly = False Properties.OnButtonClick = cxButtonEdit1PropertiesButtonClick Style.ButtonStyle = btsDefault TabOrder = 15 OnDblClick = OurCoNameDblClick Width = 395 end + object ADDMONEY: TcxCurrencyEdit + Left = 107 + Top = 189 + Properties.AssignedValues.DisplayFormat = True + TabOrder = 16 + Width = 84 + end + object Deduction: TcxCurrencyEdit + Left = 345 + Top = 188 + Properties.AssignedValues.DisplayFormat = True + TabOrder = 17 + Width = 84 + end end object ADOQueryTemp: TADOQuery Connection = DataLink_Financial.ADOLink diff --git a/A09财务通用管理/U_CollectInput.pas b/A09财务通用管理/U_CollectInput.pas index 912735c..b9b5b5d 100644 --- a/A09财务通用管理/U_CollectInput.pas +++ b/A09财务通用管理/U_CollectInput.pas @@ -57,6 +57,10 @@ type ReconciliationDate: TcxDateEdit; Label4: TLabel; IVNo: TcxButtonEdit; + Label6: TLabel; + ADDMONEY: TcxCurrencyEdit; + Label10: TLabel; + Deduction: TcxCurrencyEdit; procedure FormDestroy(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure TBCloseClick(Sender: TObject); diff --git a/A09财务通用管理/U_CollectList.dfm b/A09财务通用管理/U_CollectList.dfm index 3aa7329..78a2a80 100644 --- a/A09财务通用管理/U_CollectList.dfm +++ b/A09财务通用管理/U_CollectList.dfm @@ -7,6 +7,7 @@ inherited frmCollectList: TfrmCollectList Font.Height = -16 FormStyle = fsMDIChild Visible = True + ExplicitLeft = -435 ExplicitWidth = 1641 ExplicitHeight = 629 PixelsPerInch = 96 @@ -82,6 +83,7 @@ inherited frmCollectList: TfrmCollectList AutoSize = True Caption = #25552#20132 ImageIndex = 12 + Visible = False OnClick = btnTJClick end object btnCXTJ: TToolButton @@ -90,6 +92,7 @@ inherited frmCollectList: TfrmCollectList AutoSize = True Caption = #25764#38144#25552#20132 ImageIndex = 11 + Visible = False OnClick = btnCXTJClick end object btnChk: TToolButton @@ -307,6 +310,7 @@ inherited frmCollectList: TfrmCollectList Align = alClient PopupMenu = PopupMenu1 TabOrder = 2 + ExplicitTop = 185 object Tv1: TcxGridDBTableView Navigator.Buttons.CustomButtons = <> Navigator.Buttons.Delete.Enabled = False @@ -519,6 +523,20 @@ inherited frmCollectList: TfrmCollectList Options.Editing = False Width = 82 end + object Tv1Column12: TcxGridDBColumn + Caption = #35843#22686 + DataBinding.FieldName = 'addmoney' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 70 + end + object Tv1Column13: TcxGridDBColumn + Caption = #35843#20943 + DataBinding.FieldName = 'Deduction' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 70 + end end object cxGridLevel1: TcxGridLevel GridView = Tv1 @@ -535,7 +553,6 @@ inherited frmCollectList: TfrmCollectList Properties.Style = 9 Properties.TabIndex = 0 Properties.Tabs.Strings = ( - #26410#25552#20132 #24453#23457#26680 #24050#23457#26680 #20840#37096) diff --git a/A09财务通用管理/U_CollectList.pas b/A09财务通用管理/U_CollectList.pas index 52f5a39..2e43a8f 100644 --- a/A09财务通用管理/U_CollectList.pas +++ b/A09财务通用管理/U_CollectList.pas @@ -88,6 +88,8 @@ type btnTJ: TToolButton; btnCXTJ: TToolButton; Tv1Column11: TcxGridDBColumn; + Tv1Column12: TcxGridDBColumn; + Tv1Column13: TcxGridDBColumn; procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure TBCloseClick(Sender: TObject); procedure btnDelClick(Sender: TObject); @@ -156,16 +158,16 @@ begin begin btnEdit.Enabled := true; btnDel.Enabled := true; - btnTJ.Enabled := true; + btnChk.Enabled := true; end; 1: begin - btnCXTJ.Enabled := true; - btnChk.Enabled := true; + btnReChk.Enabled := true; + end; 2: begin - btnReChk.Enabled := true; + end; 3: begin @@ -202,13 +204,10 @@ begin SqlStr := SqlStr + ' and isnull(A.status,''0'')=''0'' '; end; 1: - begin - SqlStr := SqlStr + ' and isnull(A.status,''0'')=''1'' '; - end; - 2: begin SqlStr := SqlStr + ' and isnull(A.status,''0'')=''9'' '; end; + end; SqlStr := SqlStr + ' and isnull(A.Store,'''')=' + QuotedStr(Trim(canshu4)); InitCDSData(ADOQueryMain, CDS_1, Tv1, SqlStr, SGetFilters(Panel1, 1, 2), 'FFID'); diff --git a/A09财务通用管理/U_CustStatement.dfm b/A09财务通用管理/U_CustStatement.dfm index 3efcae4..3410233 100644 --- a/A09财务通用管理/U_CustStatement.dfm +++ b/A09财务通用管理/U_CustStatement.dfm @@ -117,6 +117,7 @@ inherited frmCustStatement: TfrmCustStatement Left = 115 Top = 54 TabOrder = 0 + OnKeyPress = OppCoNameKeyPress Width = 265 end inline frmFrameDateSel1: TfrmFrameDateSel @@ -242,6 +243,14 @@ inherited frmCustStatement: TfrmCustStatement item Kind = skSum Column = Tv2Column2 + end + item + Kind = skSum + Column = Tv2Column3 + end + item + Kind = skSum + Column = Tv2Column4 end> DataController.Summary.SummaryGroups = <> OptionsCustomize.ColumnFiltering = False @@ -323,6 +332,20 @@ inherited frmCustStatement: TfrmCustStatement Options.Editing = False Width = 77 end + object Tv2Column3: TcxGridDBColumn + Caption = #35843#22686 + DataBinding.FieldName = 'BQaddmoney' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 80 + end + object Tv2Column4: TcxGridDBColumn + Caption = #35843#20943 + DataBinding.FieldName = 'BQDeduction' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 80 + end end object cxGridLevel1: TcxGridLevel GridView = Tv2 @@ -335,9 +358,10 @@ inherited frmCustStatement: TfrmCustStatement Height = 29 Align = alTop TabOrder = 3 + Visible = False Properties.CustomButtons.Buttons = <> Properties.Style = 9 - Properties.TabIndex = 0 + Properties.TabIndex = 1 Properties.Tabs.Strings = ( ' $ ' ' '#65509' ' diff --git a/A09财务通用管理/U_CustStatement.pas b/A09财务通用管理/U_CustStatement.pas index 5d289bf..e8052d4 100644 --- a/A09财务通用管理/U_CustStatement.pas +++ b/A09财务通用管理/U_CustStatement.pas @@ -51,6 +51,8 @@ type ToolButton5: TToolButton; ToolButton6: TToolButton; frmFrameDateSel1: TfrmFrameDateSel; + Tv2Column3: TcxGridDBColumn; + Tv2Column4: TcxGridDBColumn; procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure TBCloseClick(Sender: TObject); procedure FormShow(Sender: TObject); @@ -65,6 +67,7 @@ type procedure ToolButton5Click(Sender: TObject); procedure ToolButton6Click(Sender: TObject); procedure FormCreate(Sender: TObject); + procedure OppCoNameKeyPress(Sender: TObject; var Key: Char); private { Private declarations } FAuthority, canshu4: string; @@ -113,6 +116,9 @@ begin if FAuthority = '低权限' then sql.Add(' ,@DCode=' + QuotedStr(Trim(DCode))); + sql.Add(' ,@store=' + QuotedStr(Trim(CANSHU4))); + +// ShowMessage(sql.Text); Open; end; SCreateCDS(ADOQueryMain, CDS_HZ); @@ -156,6 +162,7 @@ begin ReadCxGrid(trim(self.Caption), Tv2, '财务管理'); frmFrameDateSel1.Enddate.Date := SGetServerDate(ADOQueryTemp); frmFrameDateSel1.begdate.Date := StartOfTheMonth(frmFrameDateSel1.Enddate.Date); + canshu4 := Trim(Self.fParameters4); InitGrid(); end; @@ -187,6 +194,14 @@ begin ToolButton2.Click; end; +procedure TfrmCustStatement.OppCoNameKeyPress(Sender: TObject; var Key: Char); +begin + if Key = #13 then + begin + InitGrid(); + end; +end; + procedure TfrmCustStatement.ToolButton3Click(Sender: TObject); begin if CDS_HZ.IsEmpty then diff --git a/A09财务通用管理/U_DataLink.dfm b/A09财务通用管理/U_DataLink.dfm index ac2490a..4949260 100644 --- a/A09财务通用管理/U_DataLink.dfm +++ b/A09财务通用管理/U_DataLink.dfm @@ -8,7 +8,6 @@ inherited DataLink_Financial: TDataLink_Financial StyleDisabled.LookAndFeel.SkinName = '' StyleFocused.LookAndFeel.SkinName = '' StyleHot.LookAndFeel.SkinName = '' - StyleReadOnly.LookAndFeel.SkinName = '' PixelsPerInch = 96 end inherited cxImageList_bar: TcxImageList diff --git a/A09财务通用管理/U_FtyStatement.dfm b/A09财务通用管理/U_FtyStatement.dfm index e4fccff..d4d3bd2 100644 --- a/A09财务通用管理/U_FtyStatement.dfm +++ b/A09财务通用管理/U_FtyStatement.dfm @@ -19,7 +19,7 @@ inherited frmFtyStatement: TfrmFtyStatement Height = 30 AutoSize = True ButtonHeight = 30 - ButtonWidth = 95 + ButtonWidth = 115 Caption = 'ToolBar1' Color = clWhite DisabledImages = DataLink_Financial.ImageList_new32 @@ -37,7 +37,7 @@ inherited frmFtyStatement: TfrmFtyStatement OnClick = TBRafreshClick end object ToolButton2: TToolButton - Left = 63 + Left = 71 Top = 0 AutoSize = True Caption = #36807#28388 @@ -45,7 +45,7 @@ inherited frmFtyStatement: TfrmFtyStatement OnClick = ToolButton2Click end object ToolButton3: TToolButton - Left = 126 + Left = 142 Top = 0 AutoSize = True Caption = #26597#30475#23545#36134#21333 @@ -53,7 +53,7 @@ inherited frmFtyStatement: TfrmFtyStatement OnClick = ToolButton3Click end object ToolButton4: TToolButton - Left = 225 + Left = 261 Top = 0 AutoSize = True Caption = #24212#20184#27454#27719#24635 @@ -61,7 +61,7 @@ inherited frmFtyStatement: TfrmFtyStatement OnClick = ToolButton4Click end object ToolButton5: TToolButton - Left = 324 + Left = 380 Top = 0 AutoSize = True Caption = #24212#20184#26126#32454#21333 @@ -69,7 +69,7 @@ inherited frmFtyStatement: TfrmFtyStatement OnClick = ToolButton5Click end object ToolButton6: TToolButton - Left = 423 + Left = 499 Top = 0 AutoSize = True Caption = #26356#26032#25968#25454 @@ -77,7 +77,7 @@ inherited frmFtyStatement: TfrmFtyStatement OnClick = ToolButton6Click end object ToolButton1: TToolButton - Left = 510 + Left = 602 Top = 0 AutoSize = True Caption = #20445#23384#26684#24335 @@ -85,7 +85,7 @@ inherited frmFtyStatement: TfrmFtyStatement OnClick = ToolButton1Click end object TBClose: TToolButton - Left = 597 + Left = 705 Top = 0 AutoSize = True Caption = #20851#38381 @@ -93,7 +93,7 @@ inherited frmFtyStatement: TfrmFtyStatement OnClick = TBCloseClick end object ToolButton7: TToolButton - Left = 660 + Left = 776 Top = 0 AutoSize = True Caption = #23548#20986 @@ -112,7 +112,6 @@ inherited frmFtyStatement: TfrmFtyStatement Color = clWhite ParentBackground = False TabOrder = 5 - ExplicitWidth = 304 object Label3: TLabel Left = 20 Top = 51 @@ -145,7 +144,7 @@ inherited frmFtyStatement: TfrmFtyStatement TabOrder = 1 ExplicitLeft = 2 ExplicitTop = 2 - ExplicitWidth = 300 + ExplicitWidth = 1243 ExplicitHeight = 37 inherited lbl2: TLabel Width = 16 @@ -163,6 +162,7 @@ inherited frmFtyStatement: TfrmFtyStatement Align = alClient PopupMenu = PM_1 TabOrder = 2 + ExplicitTop = 148 object Tv2: TcxGridDBTableView Navigator.Buttons.CustomButtons = <> Navigator.Buttons.Delete.Enabled = False @@ -342,6 +342,20 @@ inherited frmFtyStatement: TfrmFtyStatement HeaderAlignmentHorz = taCenter Width = 77 end + object Tv2Column3: TcxGridDBColumn + Caption = #35843#22686 + DataBinding.FieldName = 'BQaddmoney' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 70 + end + object Tv2Column4: TcxGridDBColumn + Caption = #35843#20943 + DataBinding.FieldName = 'BQDeduction' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 70 + end end object cxGridLevel1: TcxGridLevel GridView = Tv2 @@ -354,9 +368,10 @@ inherited frmFtyStatement: TfrmFtyStatement Height = 29 Align = alTop TabOrder = 3 + Visible = False Properties.CustomButtons.Buttons = <> Properties.Style = 9 - Properties.TabIndex = 0 + Properties.TabIndex = 1 Properties.Tabs.Strings = ( ' $ ' ' '#65509' ' diff --git a/A09财务通用管理/U_FtyStatement.pas b/A09财务通用管理/U_FtyStatement.pas index 42fc935..63d6f98 100644 --- a/A09财务通用管理/U_FtyStatement.pas +++ b/A09财务通用管理/U_FtyStatement.pas @@ -58,6 +58,8 @@ type ToolButton6: TToolButton; frmFrameDateSel1: TfrmFrameDateSel; ToolButton7: TToolButton; + Tv2Column3: TcxGridDBColumn; + Tv2Column4: TcxGridDBColumn; procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure TBCloseClick(Sender: TObject); procedure FormShow(Sender: TObject); diff --git a/A09财务通用管理/U_GetDllForm.pas b/A09财务通用管理/U_GetDllForm.pas index d6b9f91..4a69f4e 100644 --- a/A09财务通用管理/U_GetDllForm.pas +++ b/A09财务通用管理/U_GetDllForm.pas @@ -83,7 +83,7 @@ begin // Parameters1 := ''; // Parameters1 := '¼'; DCode := '005'; - Parameters4 := ''; + Parameters4 := ''; DName := 'ADMIN'; end else diff --git a/A09财务通用管理/U_InvoiceOutList.dfm b/A09财务通用管理/U_InvoiceOutList.dfm index 60d3465..5bce4fd 100644 --- a/A09财务通用管理/U_InvoiceOutList.dfm +++ b/A09财务通用管理/U_InvoiceOutList.dfm @@ -235,12 +235,11 @@ inherited frmInvoiceOutList: TfrmInvoiceOutList ExplicitTop = 2 ExplicitWidth = 1554 ExplicitHeight = 37 - inherited TimeType: TcxComboBox - ExplicitHeight = 29 - end - inherited jqModel: TcxCheckBox - ExplicitWidth = 84 - ExplicitHeight = 25 + inherited lbl2: TLabel + Width = 16 + Height = 21 + ExplicitWidth = 16 + ExplicitHeight = 21 end end end diff --git a/A09财务通用管理/U_PayInput.dfm b/A09财务通用管理/U_PayInput.dfm index 08d87bb..1d1f26b 100644 --- a/A09财务通用管理/U_PayInput.dfm +++ b/A09财务通用管理/U_PayInput.dfm @@ -65,6 +65,7 @@ object frmPayInput: TfrmPayInput ParentColor = False ParentCtl3D = False TabOrder = 1 + ExplicitTop = 36 object Label18: TLabel Left = 41 Top = 61 @@ -144,7 +145,7 @@ object frmPayInput: TfrmPayInput end object Label7: TLabel Left = 41 - Top = 200 + Top = 234 Width = 62 Height = 21 Caption = #22791' '#27880 @@ -170,6 +171,20 @@ object frmPayInput: TfrmPayInput Height = 21 Caption = #23545#36134#26085#26399 end + object Label6: TLabel + Left = 38 + Top = 193 + Width = 62 + Height = 21 + Caption = #35843' '#22686 + end + object Label10: TLabel + Left = 276 + Top = 192 + Width = 62 + Height = 21 + Caption = #35843' '#20943 + end object OurCoName: TcxButtonEdit Left = 108 Top = 11 @@ -347,7 +362,7 @@ object frmPayInput: TfrmPayInput end object Note: TcxMemo Left = 107 - Top = 199 + Top = 233 ParentColor = True TabOrder = 12 Height = 127 @@ -395,6 +410,20 @@ object frmPayInput: TfrmPayInput TabOrder = 15 Width = 151 end + object ADDMONEY: TcxCurrencyEdit + Left = 107 + Top = 189 + Properties.AssignedValues.DisplayFormat = True + TabOrder = 16 + Width = 84 + end + object Deduction: TcxCurrencyEdit + Left = 345 + Top = 188 + Properties.AssignedValues.DisplayFormat = True + TabOrder = 17 + Width = 84 + end end object ADOQueryTemp: TADOQuery Connection = DataLink_Financial.ADOLink diff --git a/A09财务通用管理/U_PayInput.pas b/A09财务通用管理/U_PayInput.pas index daf90ae..db94e12 100644 --- a/A09财务通用管理/U_PayInput.pas +++ b/A09财务通用管理/U_PayInput.pas @@ -57,6 +57,10 @@ type CollectHeader: TcxButtonEdit; Label25: TLabel; ReconciliationDate: TcxDateEdit; + Label6: TLabel; + ADDMONEY: TcxCurrencyEdit; + Label10: TLabel; + Deduction: TcxCurrencyEdit; procedure FormDestroy(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure TBCloseClick(Sender: TObject); diff --git a/A09财务通用管理/U_PayList.dfm b/A09财务通用管理/U_PayList.dfm index c210b1b..6fc87cd 100644 --- a/A09财务通用管理/U_PayList.dfm +++ b/A09财务通用管理/U_PayList.dfm @@ -7,6 +7,7 @@ inherited frmPayList: TfrmPayList Font.Height = -16 FormStyle = fsMDIChild Visible = True + ExplicitLeft = -25 ExplicitWidth = 1556 ExplicitHeight = 629 PixelsPerInch = 96 @@ -74,6 +75,7 @@ inherited frmPayList: TfrmPayList AutoSize = True Caption = #25552#20132 ImageIndex = 12 + Visible = False OnClick = btnTJClick end object btnCXTJ: TToolButton @@ -160,7 +162,6 @@ inherited frmPayList: TfrmPayList Color = clWhite ParentBackground = False TabOrder = 5 - ExplicitWidth = 304 object Label3: TLabel Left = 28 Top = 48 @@ -269,7 +270,7 @@ inherited frmPayList: TfrmPayList TabOrder = 6 ExplicitLeft = 2 ExplicitTop = 2 - ExplicitWidth = 300 + ExplicitWidth = 1536 ExplicitHeight = 37 inherited lbl2: TLabel Width = 16 @@ -287,6 +288,7 @@ inherited frmPayList: TfrmPayList Align = alClient PopupMenu = PopupMenu1 TabOrder = 2 + ExplicitTop = 185 object Tv1: TcxGridDBTableView Navigator.Buttons.CustomButtons = <> Navigator.Buttons.Delete.Enabled = False @@ -473,6 +475,20 @@ inherited frmPayList: TfrmPayList Options.Editing = False Width = 57 end + object Tv1Column9: TcxGridDBColumn + Caption = #35843#22686 + DataBinding.FieldName = 'addmoney' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 66 + end + object Tv1Column10: TcxGridDBColumn + Caption = #35843#20943 + DataBinding.FieldName = 'Deduction' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 70 + end end object cxGridLevel1: TcxGridLevel GridView = Tv1 @@ -489,7 +505,6 @@ inherited frmPayList: TfrmPayList Properties.Style = 9 Properties.TabIndex = 0 Properties.Tabs.Strings = ( - #26410#25552#20132 #24453#23457#26680 #24050#23457#26680 #20840#37096) diff --git a/A09财务通用管理/U_PayList.pas b/A09财务通用管理/U_PayList.pas index 4557aea..63f1693 100644 --- a/A09财务通用管理/U_PayList.pas +++ b/A09财务通用管理/U_PayList.pas @@ -83,6 +83,8 @@ type Tv1Column8: TcxGridDBColumn; btnTJ: TToolButton; btnCXTJ: TToolButton; + Tv1Column9: TcxGridDBColumn; + Tv1Column10: TcxGridDBColumn; procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure TBCloseClick(Sender: TObject); procedure btnDelClick(Sender: TObject); @@ -139,16 +141,16 @@ begin begin btnEdit.Enabled := true; btnDel.Enabled := true; - btnTJ.Enabled := true; + btnChk.Enabled := true; end; 1: begin - btnCXTJ.Enabled := true; - btnChk.Enabled := true; + btnReChk.Enabled := true; + end; 2: begin - btnReChk.Enabled := true; + end; 3: begin @@ -177,13 +179,10 @@ begin SqlStr := SqlStr + ' and isnull(A.status,''0'')=''0'' '; end; 1: - begin - SqlStr := SqlStr + ' and isnull(A.status,''0'')=''1'' '; - end; - 2: begin SqlStr := SqlStr + ' and isnull(A.status,''0'')=''9'' '; end; + end; InitCDSData(ADOQueryMain, CDS_1, Tv1, SqlStr, SGetFilters(Panel1, 1, 2), 'FFID'); diff --git a/A09财务通用管理/U_PayableList.dfm b/A09财务通用管理/U_PayableList.dfm index 028a745..8d77ea0 100644 --- a/A09财务通用管理/U_PayableList.dfm +++ b/A09财务通用管理/U_PayableList.dfm @@ -82,6 +82,7 @@ inherited frmPayableList: TfrmPayableList AutoSize = True Caption = #25552#20132 ImageIndex = 12 + Visible = False OnClick = btnTJClick end object btnCXTJ: TToolButton @@ -90,6 +91,7 @@ inherited frmPayableList: TfrmPayableList AutoSize = True Caption = #25764#38144#25552#20132 ImageIndex = 11 + Visible = False OnClick = btnCXTJClick end object btnChk: TToolButton @@ -160,7 +162,6 @@ inherited frmPayableList: TfrmPayableList Color = clWhite ParentBackground = False TabOrder = 5 - ExplicitWidth = 304 object Label3: TLabel Left = 26 Top = 50 @@ -274,7 +275,7 @@ inherited frmPayableList: TfrmPayableList TabOrder = 6 ExplicitLeft = 2 ExplicitTop = 2 - ExplicitWidth = 300 + ExplicitWidth = 1621 ExplicitHeight = 37 inherited lbl2: TLabel Width = 16 @@ -669,7 +670,6 @@ inherited frmPayableList: TfrmPayableList Properties.Style = 9 Properties.TabIndex = 0 Properties.Tabs.Strings = ( - #26410#25552#20132 #24453#23457#26680 #24050#23457#26680 #20840#37096) diff --git a/A09财务通用管理/U_PayableList.pas b/A09财务通用管理/U_PayableList.pas index 70140e6..47a7f69 100644 --- a/A09财务通用管理/U_PayableList.pas +++ b/A09财务通用管理/U_PayableList.pas @@ -165,17 +165,16 @@ begin begin btnEdit.Enabled := true; btnDel.Enabled := true; - btnTJ.Enabled := true; + btnChk.Enabled := true; end; 1: begin - btnCXTJ.Enabled := true; - btnChk.Enabled := true; + btnReChk.Enabled := true; + btnDJXG.Enabled := true; end; 2: begin - btnReChk.Enabled := true; - btnDJXG.Enabled := true; + end; 3: begin @@ -204,13 +203,10 @@ begin SqlStr := SqlStr + ' and isnull(A.status,''0'')=''0'' '; end; 1: - begin - SqlStr := SqlStr + ' and isnull(A.status,''0'')=''1'' '; - end; - 2: begin SqlStr := SqlStr + ' and isnull(A.status,''0'')=''9'' '; end; + end; InitCDSData(ADOQueryMain, CDS_1, Tv1, SqlStr, SGetFilters(Panel1, 1, 2), 'FFID'); diff --git a/A09财务通用管理/U_ReceivableInput.dfm b/A09财务通用管理/U_ReceivableInput.dfm index fdfd0b2..6da28cd 100644 --- a/A09财务通用管理/U_ReceivableInput.dfm +++ b/A09财务通用管理/U_ReceivableInput.dfm @@ -60,12 +60,14 @@ object frmReceivableInput: TfrmReceivableInput Height = 447 Width = 1353 object cxGrid1: TcxGrid - Left = 4 - Top = 23 - Width = 1345 - Height = 408 + Left = 2 + Top = 26 + Width = 1349 + Height = 419 Align = alClient TabOrder = 0 + ExplicitLeft = -22 + ExplicitTop = 48 object Tv1: TcxGridDBTableView Navigator.Buttons.CustomButtons = <> ScrollbarAnnotations.CustomAnnotations = <> @@ -77,10 +79,27 @@ object frmReceivableInput: TfrmReceivableInput OptionsView.Indicator = True OptionsView.IndicatorWidth = 50 OnCustomDrawIndicatorCell = Tv1CustomDrawIndicatorCell + object Tv1Column4: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'F_CODE' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 81 + end object Tv1Column1: TcxGridDBColumn Caption = #33394#24067#21517#31216 DataBinding.FieldName = 'F_Name' DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxLookupComboBoxProperties' + Properties.IncrementalFilteringOptions = [ifoUseContainsOperator] + Properties.KeyFieldNames = 'c_NAME' + Properties.ListColumns = < + item + FieldName = 'C_name' + end> + Properties.ListOptions.ShowHeader = False + Properties.ListSource = DS_PM + Properties.OnEditValueChanged = Tv1Column1PropertiesEditValueChanged HeaderAlignmentHorz = taCenter Width = 94 end @@ -88,8 +107,21 @@ object frmReceivableInput: TfrmReceivableInput Caption = #33394#21495 DataBinding.FieldName = 'F_ColorNo' DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxLookupComboBoxProperties' + Properties.IncrementalFilteringOptions = [ifoUseContainsOperator] + Properties.KeyFieldNames = 'C_ColorNo' + Properties.ListColumns = < + item + FieldName = 'C_ColorNo' + end + item + FieldName = 'C_Color' + end> + Properties.ListOptions.ShowHeader = False + Properties.ListSource = DS_YS + Properties.OnEditValueChanged = Tv1Column2PropertiesEditValueChanged HeaderAlignmentHorz = taCenter - Width = 70 + Width = 127 end object Tv1Column3: TcxGridDBColumn Caption = #39068#33394 @@ -286,6 +318,7 @@ object frmReceivableInput: TfrmReceivableInput ParentColor = False ParentCtl3D = False TabOrder = 3 + ExplicitTop = 36 object Label2: TLabel Left = 262 Top = 15 @@ -293,13 +326,6 @@ object frmReceivableInput: TfrmReceivableInput Height = 21 Caption = #23545#26041#21333#20301 end - object Label6: TLabel - Left = 28 - Top = 100 - Width = 62 - Height = 21 - Caption = #32534' '#21495 - end object Label7: TLabel Left = 27 Top = 143 @@ -357,8 +383,8 @@ object frmReceivableInput: TfrmReceivableInput Caption = #25688' '#35201 end object Label18: TLabel - Left = 263 - Top = 99 + Left = 25 + Top = 102 Width = 64 Height = 21 Caption = #26159#21542#21547#31246 @@ -493,15 +519,15 @@ object frmReceivableInput: TfrmReceivableInput Width = 151 end object IsInvoice: TcxComboBox - Left = 337 - Top = 95 + Left = 99 + Top = 98 Properties.DropDownListStyle = lsEditFixedList Properties.Items.Strings = ( #26159 #21542) TabOrder = 8 Text = #26159 - Width = 159 + Width = 151 end object Note: TcxMemo Left = 95 @@ -517,26 +543,11 @@ object frmReceivableInput: TfrmReceivableInput TabOrder = 10 Width = 151 end - object F_Code: TcxButtonEdit - Left = 99 - Top = 96 - Properties.Buttons = < - item - Default = True - Kind = bkEllipsis - end> - Properties.ReadOnly = True - Properties.OnButtonClick = F_CodePropertiesButtonClick - Style.ButtonStyle = btsDefault - TabOrder = 11 - OnDblClick = OurCoNameDblClick - Width = 151 - end object ExchangeRate: TcxCurrencyEdit Left = 1074 Top = 53 Properties.AssignedValues.DisplayFormat = True - TabOrder = 12 + TabOrder = 11 Width = 150 end end @@ -544,8 +555,8 @@ object frmReceivableInput: TfrmReceivableInput Connection = DataLink_Financial.ADOLink LockType = ltReadOnly Parameters = <> - Left = 648 - Top = 321 + Left = 643 + Top = 454 end object ADOQueryCmd: TADOQuery Connection = DataLink_Financial.ADOLink @@ -557,14 +568,14 @@ object frmReceivableInput: TfrmReceivableInput Connection = DataLink_Financial.ADOLink LockType = ltReadOnly Parameters = <> - Left = 580 - Top = 321 + Left = 586 + Top = 453 end object CDS_1: TClientDataSet Aggregates = <> Params = <> - Left = 716 - Top = 321 + Left = 733 + Top = 399 end object DS_1: TDataSource DataSet = CDS_1 @@ -588,4 +599,40 @@ object frmReceivableInput: TfrmReceivableInput Left = 920 Top = 518 end + object DS_YS: TDataSource + DataSet = ADO_YS + Left = 355 + Top = 660 + end + object DS_PM: TDataSource + DataSet = ADO_PM + Left = 601 + Top = 598 + end + object ADO_PM: TADOQuery + Connection = DataLink_Financial.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 273 + Top = 476 + end + object ADO_YS: TADOQuery + Connection = DataLink_Financial.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 437 + Top = 475 + end + object DS_DanWei: TDataSource + DataSet = ADO_DanWei + Left = 452 + Top = 671 + end + object ADO_DanWei: TADOQuery + Connection = DataLink_Financial.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 534 + Top = 486 + end end diff --git a/A09财务通用管理/U_ReceivableInput.pas b/A09财务通用管理/U_ReceivableInput.pas index d5c4216..49f1ead 100644 --- a/A09财务通用管理/U_ReceivableInput.pas +++ b/A09财务通用管理/U_ReceivableInput.pas @@ -15,7 +15,8 @@ uses cxTextEdit, cxDropDownEdit, BtnEdit, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, dxDateRanges, dxBarBuiltInMenu, U_BaseList, cxContainer, cxCurrencyEdit, dxCore, cxDateUtils, cxMemo, dxSkinsCore, - dxSkinsDefaultPainters, dxScrollbarAnnotations, cxGroupBox, dxCoreGraphics; + dxSkinsDefaultPainters, dxScrollbarAnnotations, cxGroupBox, dxCoreGraphics, + cxDBLookupComboBox; type TfrmReceivableInput = class(TForm) @@ -55,7 +56,6 @@ type Tv1Column28: TcxGridDBColumn; ScrollBox1: TScrollBox; Label2: TLabel; - Label6: TLabel; Label7: TLabel; Label8: TLabel; Label5: TLabel; @@ -78,11 +78,17 @@ type IsInvoice: TcxComboBox; Note: TcxMemo; ReconciliationDate: TcxDateEdit; - F_Code: TcxButtonEdit; ExchangeRate: TcxCurrencyEdit; CDS_2: TClientDataSet; DS_2: TDataSource; ADO2: TADOQuery; + Tv1Column4: TcxGridDBColumn; + DS_YS: TDataSource; + DS_PM: TDataSource; + ADO_PM: TADOQuery; + ADO_YS: TADOQuery; + DS_DanWei: TDataSource; + ADO_DanWei: TADOQuery; procedure FormDestroy(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure TBCloseClick(Sender: TObject); @@ -102,12 +108,13 @@ type procedure ConNoPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure OrderNoPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure FFAbstractPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); - procedure F_CodePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure ToolButton1Click(Sender: TObject); procedure ToolButton2Click(Sender: TObject); procedure v1QtyPropertiesEditValueChanged(Sender: TObject); procedure Tv1CustomDrawIndicatorCell(Sender: TcxGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxCustomGridIndicatorItemViewInfo; var ADone: Boolean); procedure ConNoPropertiesChange(Sender: TObject); + procedure Tv1Column1PropertiesEditValueChanged(Sender: TObject); + procedure Tv1Column2PropertiesEditValueChanged(Sender: TObject); private { Private declarations } procedure InitGrid(); @@ -161,8 +168,8 @@ begin Filtered := False; Close; SQL.Clear; -// sql.Add(' select * from Finance_Flow where FFID=''' + Trim(FFFID) + ''''); - sql.Add(' select * from Finance_Flow where FromID1=''' + Trim(FFFID) + ''''); + sql.Add(' select * from Finance_Flow where ISNULL(FROMID1,FFID)=''' + Trim(FFFID) + ''''); +// sql.Add(' select * from Finance_Flow where FromID1=''' + Trim(FFFID) + ''''); Open; end; SCreateCDS(ADOQueryMain, CDS_1); @@ -194,7 +201,7 @@ begin with frmCompanySel do begin FCoType := 'ͻ'; - + CANSHU4 := Self.canshu4; if self.FAuthority = 'Ȩ' then FAuthority := 'ҵ'; @@ -265,7 +272,7 @@ begin self.ConNo.Text := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('ConNo').AsString); self.OrderNo.Text := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('OrderNo').AsString); - self.F_Code.Text := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('C_Code').AsString); +// self.F_Code.Text := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('C_Code').AsString); self.OppCoName.Text := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('CustName').AsString); // ѡָʾϢ First; @@ -276,6 +283,8 @@ begin Append; Self.CDS_1.FieldByName('QtyUnit').AsString := frmFinTradePlanSel.CDS_1.FieldByName('OrdUnit').AsString; Self.CDS_1.FieldByName('F_Name').AsString := frmFinTradePlanSel.CDS_1.FieldByName('C_Name').AsString; + + Self.CDS_1.FieldByName('F_code').AsString := frmFinTradePlanSel.CDS_1.FieldByName('C_code').AsString; Self.CDS_1.FieldByName('F_ColorNo').AsString := frmFinTradePlanSel.CDS_1.FieldByName('C_ColorNo').AsString; Self.CDS_1.FieldByName('F_Color').AsString := frmFinTradePlanSel.CDS_1.FieldByName('C_Color').AsString; Self.CDS_1.FieldByName('Price').AsString := frmFinTradePlanSel.CDS_1.FieldByName('ProcessingPrice').AsString; @@ -422,8 +431,8 @@ begin with frmFinTradePlanSel.CDS_1 do begin self.ConNo.Text := Trim(frmFinTradeSalesContractSel.CDS_1.fieldbyname('ConNo').AsString); - self.F_Code.Text := Trim(frmFinTradeSalesContractSel.CDS_1.fieldbyname('C_Code').AsString); - +// self.F_Code.Text := Trim(frmFinTradeSalesContractSel.CDS_1.fieldbyname('C_Code').AsString); + Fieldbyname('F_code').value := trim(frmFinTradePlanSel.CDS_1.Fieldbyname('F_code').AsString); Fieldbyname('F_Name').value := trim(frmFinTradePlanSel.CDS_1.Fieldbyname('F_Name').AsString); Fieldbyname('F_Pattern').value := trim(frmFinTradePlanSel.CDS_1.Fieldbyname('F_Pattern').AsString); Fieldbyname('F_ColorNo').value := trim(frmFinTradePlanSel.CDS_1.Fieldbyname('F_ColorNo').AsString); @@ -516,42 +525,44 @@ begin begin Close; SQL.Clear; - sql.Add(' select top 1 * from BS_Company where CoType=''˾'' order by CoCode '); + sql.Add(' select top 1 * from BS_Company where CoType=''˾'' AND VALID=''Y'' order by CoCode '); Open; end; OurCoName.Text := Trim(ADOQueryTemp.fieldbyname('CoAbbrName').AsString); OurCoName.Properties.LookupItems.Text := Trim(ADOQueryTemp.fieldbyname('CoCode').AsString); end; InitGrid(); -end; -procedure TfrmReceivableInput.F_CodePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); -begin - try - frmClothInfoSel := TfrmClothInfoSel.Create(Application); - with frmClothInfoSel do - begin - FCTType := 'ͨ'; - if ShowModal = 1 then - begin - with frmFinTradePlanSel.CDS_1 do - begin + with ADO_PM do + begin + Close; + sql.Clear; + sql.Add(' SELECT distinct A.C_Code,A.C_Name,A.qtyunit,A.HotQty,StkQty = SUM(B.StkQty) '); + SQL.ADD(' FROM Bs_Cloth_Info A LEFT JOIN Bs_Cloth_Io B on A.C_Code=B.C_Code'); + sql.add(' where B.ioflag='''' '); + if Trim(canshu4) = '' then + sql.Add(' and isnull(STKNAME,'''')='''' '); + SQL.add('group by A.C_Code,A.C_Name,A.qtyunit,A.HotQty'); + SQL.ADD('order by A.C_Code '); +// showmessage(SQL.text); + Open; + end; + with ADO_YS do + begin + Close; + sql.Clear; + sql.Add(' SELECT distinct A.C_Code,B.C_Color,B.C_ColorNo,B.referencePrice AS Price FROM Bs_Cloth_Info A inner join BS_Cloth_Info_Sub B on A.BCIID=B.BCIID '); + sql.Add(' where 1=2 '); + Open; + end; - self.F_Code.Text := Trim(frmFinTradePlanSel.CDS_1.fieldbyname('C_Code').AsString); - - Fieldbyname('F_Name').value := trim(frmFinTradePlanSel.CDS_1.Fieldbyname('F_Name').AsString); - Fieldbyname('F_Pattern').value := trim(frmFinTradePlanSel.CDS_1.Fieldbyname('F_Pattern').AsString); - Fieldbyname('F_ColorNo').value := trim(frmFinTradePlanSel.CDS_1.Fieldbyname('F_ColorNo').AsString); - Fieldbyname('F_Width').value := trim(frmFinTradePlanSel.CDS_1.Fieldbyname('F_Width').AsString); - Fieldbyname('F_GramWeight').value := trim(frmFinTradePlanSel.CDS_1.Fieldbyname('F_GramWeight').AsString); - Fieldbyname('F_Color').value := trim(frmFinTradePlanSel.CDS_1.Fieldbyname('F_Color').AsString); - - end; - - end; - end; - finally - frmClothInfoSel.Free; + with ADO_DanWei do + begin + Close; + sql.Clear; + sql.Add(' SELECT distinct A.C_Code,B.CICUnit FROM Bs_Cloth_Info A inner join Bs_Cloth_Info_Coefficient B on A.BCIID=B.BCIID '); + sql.Add(' where 2=1 '); + Open; end; end; @@ -698,6 +709,72 @@ begin end; end; +procedure TfrmReceivableInput.Tv1Column1PropertiesEditValueChanged(Sender: TObject); +var + mvalue, FFieldName: string; +begin + FFieldName := Trim(Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName); + mvalue := TcxTextEdit(Sender).EditingText; + + with CDS_1 do + begin + + Edit; + FieldByName(FFieldName).Value := Trim(mvalue); + Post; + ADO_PM.Locate('C_Name', mvalue, []); + Edit; + FieldByName('F_Code').Value := ADO_PM.FieldByName('C_Code').Value; + FieldByName('QtyUnit').Value := ADO_PM.FieldByName('qtyunit').Value; + + Post; + end; + with ADO_YS do + begin + Close; + sql.Clear; + sql.Add(' SELECT DISTINCT A.C_Code,B.C_Color,B.C_ColorNo,B.referencePrice AS Price FROM Bs_Cloth_Info A inner join BS_Cloth_Info_Sub B on A.BCIID=B.BCIID '); + sql.Add(' where A.C_Code= ' + QuotedStr(CDS_1.FieldByName('F_Code').AsString)); + SQL.ADD(' order by B.C_ColorNo'); + //ShowMessage(sql.text); + Open; + end; +end; + +procedure TfrmReceivableInput.Tv1Column2PropertiesEditValueChanged(Sender: TObject); +var + mvalue, FFieldName: string; + FIncludeTax: Double; +begin + with ADOQueryTemp do + begin + close; + sql.Clear; + sql.Add(' select isnull(IncludeTax,0)IncludeTax from Bs_Company a '); + sql.Add('where CoCode=' + QuotedStr(OppCoName.Properties.LookupItems.Text)); + open; + end; + + FIncludeTax := ADOQueryTemp.Fieldbyname('IncludeTax').asfloat; + + FFieldName := Trim(Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName); + mvalue := TcxTextEdit(Sender).EditingText; + + with CDS_1 do + begin + Edit; + FieldByName(FFieldName).Value := Trim(mvalue); + Post; + ADO_YS.Locate('C_ColorNo', mvalue, []); + Edit; + FieldByName('F_Color').Value := ADO_YS.FieldByName('C_Color').Value; + FieldByName('price').Value := ADO_YS.FieldByName('price').Value * (1 + (FIncludeTax / 100)); + FieldByName('referencePrice').Value := ADO_YS.FieldByName('Price').Value; + Post; + end; + +end; + procedure TfrmReceivableInput.Tv1CustomDrawIndicatorCell(Sender: TcxGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxCustomGridIndicatorItemViewInfo; var ADone: Boolean); var FValue: string; diff --git a/A09财务通用管理/U_ReceivableList.dfm b/A09财务通用管理/U_ReceivableList.dfm index 7056aef..6fd8628 100644 --- a/A09财务通用管理/U_ReceivableList.dfm +++ b/A09财务通用管理/U_ReceivableList.dfm @@ -82,6 +82,7 @@ inherited frmReceivableList: TfrmReceivableList AutoSize = True Caption = #25552#20132 ImageIndex = 12 + Visible = False OnClick = btnTJClick end object btnCXTJ: TToolButton @@ -90,6 +91,7 @@ inherited frmReceivableList: TfrmReceivableList AutoSize = True Caption = #25764#38144#25552#20132 ImageIndex = 11 + Visible = False OnClick = btnCXTJClick end object btnChk: TToolButton @@ -517,6 +519,13 @@ inherited frmReceivableList: TfrmReceivableList Options.Editing = False Width = 66 end + object Tv1Column42: TcxGridDBColumn + Caption = #19994#21153#21592 + DataBinding.FieldName = 'saleser2' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 77 + end object Tv1Column31: TcxGridDBColumn Caption = #32568#21495 DataBinding.FieldName = 'F_BatchNO' @@ -722,7 +731,6 @@ inherited frmReceivableList: TfrmReceivableList Properties.Style = 9 Properties.TabIndex = 0 Properties.Tabs.Strings = ( - #26410#25552#20132 #24453#23457#26680 #24050#23457#26680 #20840#37096) diff --git a/A09财务通用管理/U_ReceivableList.pas b/A09财务通用管理/U_ReceivableList.pas index ff7f91a..bb72c28 100644 --- a/A09财务通用管理/U_ReceivableList.pas +++ b/A09财务通用管理/U_ReceivableList.pas @@ -113,6 +113,7 @@ type btnCXTJ: TToolButton; Tv1Column40: TcxGridDBColumn; Tv1Column41: TcxGridDBColumn; + Tv1Column42: TcxGridDBColumn; procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure TBCloseClick(Sender: TObject); procedure btnDelClick(Sender: TObject); @@ -173,18 +174,19 @@ begin begin btnEdit.Enabled := true; btnDel.Enabled := true; - btnTJ.Enabled := true; + btnDJXG.Enabled := true; + btnChk.Enabled := true; end; 1: begin - btnCXTJ.Enabled := true; - btnChk.Enabled := true; + btnReChk.Enabled := true; + btnDJXG.Enabled := true; + end; 2: begin - btnReChk.Enabled := true; - btnDJXG.Enabled := true; + end; 3: begin @@ -201,7 +203,7 @@ var SqlStr: string; begin - SqlStr := ' select A.*,B.Tallyer,B.CoAbbrName '; + SqlStr := ' select A.*,B.Tallyer,B.CoAbbrName,saleser2=Saleser '; SqlStr := SqlStr + ',FJFlag=CAST((CASE WHEN (SELECT COUNT(X.FileName) FROM FJ_File X where X.TFType=''ˮ'' and X.WBID=A.FFID)>0 THEN 1 ELSE 0 END) AS BIT)'; SqlStr := SqlStr + ',ConDate=(select top 1 ConDate from Bs_Contract_Main X where X.ConNo=A.ConNo)'; SqlStr := SqlStr + ',DlyNote=(select top 1 DlyNote from Bs_Contract_Main X where X.ConNo=A.ConNo)'; @@ -223,18 +225,15 @@ begin SqlStr := SqlStr + ' and isnull(A.status,''0'')=''0'' '; end; 1: - begin - SqlStr := SqlStr + ' and isnull(A.status,''0'')=''1'' '; - end; - 2: begin SqlStr := SqlStr + ' and isnull(A.status,''0'')=''9'' '; end; + end; SqlStr := SqlStr + ' and isnull(A.store,'''')=' + QuotedStr(Trim(canshu4)); -// ShowMessage(SqlStr); + InitCDSData(ADOQueryMain, CDS_1, Tv1, SqlStr, SGetFilters(Panel1, 1, 2), 'FFID'); end; @@ -704,8 +703,17 @@ begin with frmReceivableInput do begin canshu4 := Self.canshu4; - FFFID := Trim(SELF.CDS_1.fieldbyname('FromID1').AsString); -// FFFID := Trim(SELF.CDS_1.fieldbyname('FFID').AsString); + if Trim(SELF.CDS_1.fieldbyname('FromID1').AsString) = '' then + begin + FFFID := Trim(SELF.CDS_1.fieldbyname('FFID').AsString); + end + else + begin + FFFID := Trim(SELF.CDS_1.fieldbyname('FromID1').AsString); + end; + +// FFFID := Trim(SELF.CDS_1.fieldbyname('FromID1').AsString); + FAuthority := Self.FAuthority; if ShowModal = 1 then begin diff --git a/A09财务通用管理/U_SingleCustStatement.dfm b/A09财务通用管理/U_SingleCustStatement.dfm index 16eeabf..1d6f72d 100644 --- a/A09财务通用管理/U_SingleCustStatement.dfm +++ b/A09财务通用管理/U_SingleCustStatement.dfm @@ -190,7 +190,7 @@ object frmSingleCustStatement: TfrmSingleCustStatement end item Caption = #23545#36134#20449#24687 - Width = 396 + Width = 483 end item Caption = #24320#31080#20449#24687 @@ -599,6 +599,26 @@ object frmSingleCustStatement: TfrmSingleCustStatement Position.ColIndex = 3 Position.RowIndex = 0 end + object TV1Column2: TcxGridDBBandedColumn + Caption = #35843#22686 + DataBinding.FieldName = 'ADDMONEY' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 70 + Position.BandIndex = 1 + Position.ColIndex = 3 + Position.RowIndex = 0 + end + object TV1Column3: TcxGridDBBandedColumn + Caption = #35843#20943 + DataBinding.FieldName = 'Deduction' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 70 + Position.BandIndex = 1 + Position.ColIndex = 4 + Position.RowIndex = 0 + end end object cxGridLevel1: TcxGridLevel GridView = TV1 diff --git a/A09财务通用管理/U_SingleCustStatement.pas b/A09财务通用管理/U_SingleCustStatement.pas index 9021810..79d1d51 100644 --- a/A09财务通用管理/U_SingleCustStatement.pas +++ b/A09财务通用管理/U_SingleCustStatement.pas @@ -93,6 +93,8 @@ type TV1Column9: TcxGridDBBandedColumn; TV1Column10: TcxGridDBBandedColumn; TV1Column11: TcxGridDBBandedColumn; + TV1Column2: TcxGridDBBandedColumn; + TV1Column3: TcxGridDBBandedColumn; procedure FormDestroy(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure TBCloseClick(Sender: TObject); diff --git a/A09财务通用管理/U_SingleFtyStatement.dfm b/A09财务通用管理/U_SingleFtyStatement.dfm index 99f86f5..6b9888e 100644 --- a/A09财务通用管理/U_SingleFtyStatement.dfm +++ b/A09财务通用管理/U_SingleFtyStatement.dfm @@ -237,15 +237,13 @@ object frmSingleFtyStatement: TfrmSingleFtyStatement OptionsData.Editing = False OptionsView.Footer = True OptionsView.GroupByBox = False - Styles.Header = DataLink_Financial.Default - Styles.BandHeader = DataLink_Financial.Default Bands = < item Width = 473 end item Caption = #23545#36134#20449#24687 - Width = 488 + Width = 542 end item Caption = #24320#31080#20449#24687 @@ -578,7 +576,7 @@ object frmSingleFtyStatement: TfrmSingleFtyStatement HeaderAlignmentHorz = taCenter Width = 72 Position.BandIndex = 1 - Position.ColIndex = 3 + Position.ColIndex = 5 Position.RowIndex = 0 end object TV1Column3: TcxGridDBBandedColumn @@ -644,6 +642,26 @@ object frmSingleFtyStatement: TfrmSingleFtyStatement Position.ColIndex = 5 Position.RowIndex = 0 end + object TV1Column9: TcxGridDBBandedColumn + Caption = #35843#22686 + DataBinding.FieldName = 'ADDMONEY' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 80 + Position.BandIndex = 1 + Position.ColIndex = 3 + Position.RowIndex = 0 + end + object TV1Column10: TcxGridDBBandedColumn + Caption = #35843#20943 + DataBinding.FieldName = 'Deduction' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 70 + Position.BandIndex = 1 + Position.ColIndex = 4 + Position.RowIndex = 0 + end end object cxGridLevel1: TcxGridLevel GridView = TV1 diff --git a/A09财务通用管理/U_SingleFtyStatement.pas b/A09财务通用管理/U_SingleFtyStatement.pas index 0582863..401358c 100644 --- a/A09财务通用管理/U_SingleFtyStatement.pas +++ b/A09财务通用管理/U_SingleFtyStatement.pas @@ -97,6 +97,8 @@ type TV1Column6: TcxGridDBBandedColumn; TV1Column7: TcxGridDBBandedColumn; TV1Column8: TcxGridDBBandedColumn; + TV1Column9: TcxGridDBBandedColumn; + TV1Column10: TcxGridDBBandedColumn; procedure FormDestroy(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure TBCloseClick(Sender: TObject); diff --git a/A09财务通用管理/testDll.res b/A09财务通用管理/testDll.res index e116c48..2465ca0 100644 Binary files a/A09财务通用管理/testDll.res and b/A09财务通用管理/testDll.res differ diff --git a/T02贸易汇总仓库/TradeTotalClothStk.dpr b/T02贸易汇总仓库/TradeTotalClothStk.dpr index 9a4f2dd..46993f1 100644 --- a/T02贸易汇总仓库/TradeTotalClothStk.dpr +++ b/T02贸易汇总仓库/TradeTotalClothStk.dpr @@ -37,7 +37,7 @@ uses U_TradeFtyClothOutList in 'U_TradeFtyClothOutList.pas' {frmTradeFtyClothOutList}, U_TradeFtyClothOutEdit in 'U_TradeFtyClothOutEdit.pas' {frmTradeFtyClothOutEdit}, U_TradeFtyClothStkList in 'U_TradeFtyClothStkList.pas' {frmTradeFtyClothStkList}, - U_TradeXinYuStkList in 'U_TradeXinYuStkList.pas' {frmTradeXinYuStkList}, + U_TradeXinYuTHStkList in 'U_TradeXinYuTHStkList.pas' {frmTradeXinYuthStkList}, U_TradePackClothInList in 'U_TradePackClothInList.pas' {frmTradePackClothInList}, U_TradePackClothOutList in 'U_TradePackClothOutList.pas' {frmTradePackClothOutList}, U_TradePackClothStkList in 'U_TradePackClothStkList.pas' {frmTradePackClothStkList}, diff --git a/T02贸易汇总仓库/TradeTotalClothStk.dproj b/T02贸易汇总仓库/TradeTotalClothStk.dproj index a87508f..26fbc1f 100644 --- a/T02贸易汇总仓库/TradeTotalClothStk.dproj +++ b/T02贸易汇总仓库/TradeTotalClothStk.dproj @@ -80,7 +80,7 @@ CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName) - E:\rtgit\trade\D10xhGemei\T02贸易汇总仓库\testDll.exe + D:\D10V1W\项目代码\D10xhGemei\T02贸易汇总仓库\testDll.exe @@ -189,8 +189,8 @@
frmTradeFtyClothStkList
dfm - -
frmTradeXinYuStkList
+ +
frmTradeXinYuthStkList
dfm
diff --git a/T02贸易汇总仓库/U_GetDllForm.pas b/T02贸易汇总仓库/U_GetDllForm.pas index 3ab3ebe..d78cc08 100644 --- a/T02贸易汇总仓库/U_GetDllForm.pas +++ b/T02贸易汇总仓库/U_GetDllForm.pas @@ -23,7 +23,9 @@ uses U_TradeSampleClothOutList, U_TradeSampleClothStkList, U_ClothPurchaseEnterList, U_ClothScheduleList, U_TradeClothTotalStkList, U_TradeClothTotalInList, U_TradeClothTotalOutList, U_TradeDeliveryRequest, U_TradeRRList, - U_PlanScanInEdit, U_ItemizedListList, U_TradeXinYuStkList, U_TradeXinYuOutList; + U_PlanScanInEdit, U_ItemizedListList, U_TradeXinYuStkList, U_TradeXinYuOutList, + U_TradeXinYuTHStkList, U_TradeXinYuOutTHList, U_PlanScanInEdit2, + U_PlanScanInEdit3; ///////////////////////////////////////////////////////////////// // ˵:ȡDllеô // @@ -85,9 +87,9 @@ begin DConString := 'Provider=SQLOLEDB.1;Password=' + pswd + ';Persist Security Info=True;User ID=' + user + ';Initial Catalog=' + dtbase + ';Data Source=' + server; Parameters1 := ''; -// Parameters2 := 'óײƥ'; -// Parameters2 := 'ŵ'; -// Parameters2 := ''; + Parameters2 := 'óײƥ'; + Parameters2 := 'ŵ'; + Parameters2 := ''; DName := 'ADMIN'; DCode := 'ADMIN'; end @@ -170,7 +172,17 @@ begin 921: //óײƥ begin - Parameters2 := ''; +// Parameters2 := ''; + with TfrmTradeClothTotalInList.Create(Application.MainForm, Title, trim(Parameters1), trim(Parameters2), trim(Parameters3), trim(Parameters4), trim(Parameters5), trim(Parameters10), FormID, Title) do // + begin + fFormID := FormID; + WindowState := mstate; + mnewHandle := Handle; + end; + end; + 9211: //óײƥ + begin + Parameters2 := ''; with TfrmTradeClothTotalInList.Create(Application.MainForm, Title, trim(Parameters1), trim(Parameters2), trim(Parameters3), trim(Parameters4), trim(Parameters5), trim(Parameters10), FormID, Title) do // begin fFormID := FormID; @@ -178,7 +190,6 @@ begin mnewHandle := Handle; end; end; - 221: //˻ begin with TfrmTradeRRList.Create(Application.MainForm, Title, trim(Parameters1), trim(Parameters2), trim(Parameters3), trim(Parameters4), trim(Parameters5), trim(Parameters10), FormID, Title) do // @@ -229,6 +240,15 @@ begin end; end; + 9241: //ۿ + begin + with TfrmTradeXinYuthStkList.Create(Application.MainForm, Title, trim(Parameters1), trim(Parameters2), trim(Parameters3), trim(Parameters4), trim(Parameters5), trim(Parameters10), FormID, Title) do // + begin + fFormID := FormID; + WindowState := mstate; + mnewHandle := Handle; + end; + end; 925: // begin with TfrmTradeXinYuOutList.Create(Application.MainForm, Title, trim(Parameters1), trim(Parameters2), trim(Parameters3), trim(Parameters4), trim(Parameters5), trim(Parameters10), FormID, Title) do // @@ -238,7 +258,15 @@ begin mnewHandle := Handle; end; end; - + 9251: // + begin + with tfrmTradeXinYuOutTHList.Create(Application.MainForm, Title, trim(Parameters1), trim(Parameters2), trim(Parameters3), trim(Parameters4), trim(Parameters5), trim(Parameters10), FormID, Title) do // + begin + fFormID := FormID; + WindowState := mstate; + mnewHandle := Handle; + end; + end; 511: // begin with TfrmTradeSampleClothInList.Create(Application.MainForm, Title, trim(Parameters1), trim(Parameters2), trim(Parameters3), trim(Parameters4), trim(Parameters5), trim(Parameters10), FormID, Title) do // @@ -275,6 +303,26 @@ begin begin with TfrmPlanScanInEdit.Create(Application.MainForm, Title, trim(Parameters1), trim(Parameters2), trim(Parameters3), trim(Parameters4), trim(Parameters5), trim(Parameters10), FormID, Title) do // begin +// FSTKName := 'ó'; + fFormID := FormID; + WindowState := mstate; + mnewHandle := Handle; + end; + end; + 667: //ɨ + begin + with TfrmPlanScanInEdit2.Create(Application.MainForm, Title, trim(Parameters1), trim(Parameters2), trim(Parameters3), trim(Parameters4), trim(Parameters5), trim(Parameters10), FormID, Title) do // + begin +// FSTKName := 'ó'; + fFormID := FormID; + WindowState := mstate; + mnewHandle := Handle; + end; + end; + 668: //ص + begin + with TfrmPlanScanInEdit3.Create(Application.MainForm, Title, trim(Parameters1), trim(Parameters2), trim(Parameters3), trim(Parameters4), trim(Parameters5), trim(Parameters10), FormID, Title) do // + begin // FSTKName := 'ó'; fFormID := FormID; WindowState := mstate; diff --git a/T02贸易汇总仓库/U_InputReceiptType.dfm b/T02贸易汇总仓库/U_InputReceiptType.dfm index 753b4a6..729c0fc 100644 --- a/T02贸易汇总仓库/U_InputReceiptType.dfm +++ b/T02贸易汇总仓库/U_InputReceiptType.dfm @@ -21,10 +21,8 @@ object frmInputReceiptType: TfrmInputReceiptType Height = 159 Align = alClient TabOrder = 0 - ExplicitWidth = 467 - ExplicitHeight = 86 object Button1: TButton - Left = 308 + Left = 309 Top = 14 Width = 111 Height = 59 @@ -59,7 +57,7 @@ object frmInputReceiptType: TfrmInputReceiptType Left = 24 Top = 73 Width = 257 - Height = 60 + Height = 21 TabOrder = 2 OnKeyPress = FHDBCIONoKeyPress end diff --git a/T02贸易汇总仓库/U_ItemizedListInPut.dfm b/T02贸易汇总仓库/U_ItemizedListInPut.dfm index 552de02..8ee9c75 100644 --- a/T02贸易汇总仓库/U_ItemizedListInPut.dfm +++ b/T02贸易汇总仓库/U_ItemizedListInPut.dfm @@ -134,6 +134,7 @@ inherited frmItemizedListInPut: TfrmItemizedListInPut PopupMenu = PopupMenu2 TabOrder = 0 object Tv1: TcxGridDBTableView + OnKeyDown = Tv1KeyDown OnMouseDown = Tv1MouseDown Navigator.Buttons.CustomButtons = <> ScrollbarAnnotations.CustomAnnotations = <> diff --git a/T02贸易汇总仓库/U_ItemizedListInPut.pas b/T02贸易汇总仓库/U_ItemizedListInPut.pas index c0b78dc..0a35aa5 100644 --- a/T02贸易汇总仓库/U_ItemizedListInPut.pas +++ b/T02贸易汇总仓库/U_ItemizedListInPut.pas @@ -116,6 +116,7 @@ type procedure ToolButton1Click(Sender: TObject); procedure Tv1Column8PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); + procedure Tv1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); private FSCXDH: string; FShowKeyid: integer; @@ -1596,6 +1597,20 @@ begin end; end; +procedure TfrmItemizedListInPut.Tv1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); +begin + + // жϰµ ¼ + if Key = VK_DOWN then + begin + // ťĵ¼ Button1 İťƣ + btnAdd.Click; + + // ѡֹ TreeView ƶҪɾУ + Key := 0; + end; +end; + procedure TfrmItemizedListInPut.Tv1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin if not ADO_YS.IsEmpty then diff --git a/T02贸易汇总仓库/U_ItemizedListQtyInPut.dfm b/T02贸易汇总仓库/U_ItemizedListQtyInPut.dfm index 14e7bef..9b709c1 100644 --- a/T02贸易汇总仓库/U_ItemizedListQtyInPut.dfm +++ b/T02贸易汇总仓库/U_ItemizedListQtyInPut.dfm @@ -20,8 +20,6 @@ inherited frmItemizedListQtyInPut: TfrmItemizedListQtyInPut Align = alClient Caption = 'pnl1' TabOrder = 0 - ExplicitWidth = 552 - ExplicitHeight = 350 object cxGrid1: TcxGrid Tag = 2 Left = 1 @@ -31,9 +29,6 @@ inherited frmItemizedListQtyInPut: TfrmItemizedListQtyInPut Align = alClient PopupMenu = PopupMenu1 TabOrder = 0 - ExplicitTop = 97 - ExplicitWidth = 550 - ExplicitHeight = 252 object Tv1: TcxGridDBTableView OnKeyDown = Tv1KeyDown Navigator.Buttons.CustomButtons = <> @@ -135,8 +130,6 @@ inherited frmItemizedListQtyInPut: TfrmItemizedListQtyInPut ParentFont = False ShowCaptions = True TabOrder = 1 - ExplicitWidth = 550 - ExplicitHeight = 30 object TBSave: TToolButton Left = 0 Top = 0 @@ -201,8 +194,6 @@ inherited frmItemizedListQtyInPut: TfrmItemizedListQtyInPut Height = 66 Align = alTop TabOrder = 2 - ExplicitTop = 31 - ExplicitWidth = 550 object Label9: TLabel Left = 33 Top = 7 diff --git a/T02贸易汇总仓库/U_PlanScanInEdit.dfm b/T02贸易汇总仓库/U_PlanScanInEdit.dfm index 4cdc6c5..e6d33bc 100644 --- a/T02贸易汇总仓库/U_PlanScanInEdit.dfm +++ b/T02贸易汇总仓库/U_PlanScanInEdit.dfm @@ -1,17 +1,18 @@ inherited frmPlanScanInEdit: TfrmPlanScanInEdit Caption = #24211#23384#24211#20301#25195#25551 - ClientHeight = 473 + ClientHeight = 565 ClientWidth = 1172 + FormStyle = fsMDIChild Visible = True ExplicitWidth = 1188 - ExplicitHeight = 512 + ExplicitHeight = 604 PixelsPerInch = 96 TextHeight = 17 object Panel1: TPanel [0] Left = 0 Top = 0 Width = 1172 - Height = 145 + Height = 178 Align = alTop BevelInner = bvRaised BevelOuter = bvLowered @@ -20,9 +21,11 @@ inherited frmPlanScanInEdit: TfrmPlanScanInEdit Left = 2 Top = 2 Width = 1168 - Height = 141 + Height = 174 Align = alClient TabOrder = 0 + ExplicitLeft = 3 + ExplicitTop = -1 object Label6: TLabel Left = 13 Top = 68 @@ -51,8 +54,8 @@ inherited frmPlanScanInEdit: TfrmPlanScanInEdit Visible = False end object Label2: TLabel - Left = 670 - Top = 51 + Left = 224 + Top = 131 Width = 66 Height = 33 Caption = #36710#36742 @@ -64,8 +67,8 @@ inherited frmPlanScanInEdit: TfrmPlanScanInEdit ParentFont = False end object Label5: TLabel - Left = 1016 - Top = 148 + Left = 34 + Top = 180 Width = 48 Height = 17 Caption = #20837#24211#21333#21495 @@ -88,8 +91,8 @@ inherited frmPlanScanInEdit: TfrmPlanScanInEdit Visible = False end object Label3: TLabel - Left = 471 - Top = 54 + Left = 25 + Top = 134 Width = 66 Height = 33 Caption = #21496#26426 @@ -181,8 +184,8 @@ inherited frmPlanScanInEdit: TfrmPlanScanInEdit OnBtnClick = wlCompanyBtnClick end object InNo: TEdit - Left = 1070 - Top = 144 + Left = 88 + Top = 176 Width = 100 Height = 25 TabOrder = 3 @@ -215,16 +218,16 @@ inherited frmPlanScanInEdit: TfrmPlanScanInEdit end object carPlate: TBtnEditA Tag = 1 - Left = 742 - Top = 54 + Left = 296 + Top = 134 Width = 121 Height = 26 TabOrder = 6 OnBtnClick = carPlateBtnClick end object Tqueren: TButton - Left = 869 - Top = 37 + Left = 499 + Top = 50 Width = 153 Height = 70 Caption = #30830#23450#32465#23450 @@ -239,8 +242,8 @@ inherited frmPlanScanInEdit: TfrmPlanScanInEdit end object Driver: TBtnEditA Tag = 1 - Left = 536 - Top = 56 + Left = 90 + Top = 136 Width = 121 Height = 26 TabOrder = 8 @@ -255,21 +258,36 @@ inherited frmPlanScanInEdit: TfrmPlanScanInEdit TabOrder = 9 Visible = False end + object Button1: TButton + Left = 715 + Top = 50 + Width = 153 + Height = 70 + Caption = #21024#38500 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #24494#36719#38597#40657 + Font.Style = [] + ParentFont = False + TabOrder = 10 + OnClick = Button1Click + end end end object Panel2: TPanel [1] Left = 0 - Top = 145 + Top = 178 Width = 1172 - Height = 328 + Height = 387 Align = alClient Caption = 'Panel2' TabOrder = 3 object cxGrid3: TcxGrid Left = 1 Top = 1 - Width = 1170 - Height = 326 + Width = 769 + Height = 385 Align = alClient TabOrder = 0 object Tv3: TcxGridDBTableView @@ -300,6 +318,8 @@ inherited frmPlanScanInEdit: TfrmPlanScanInEdit OptionsCustomize.ColumnFiltering = False OptionsView.Footer = True OptionsView.GroupByBox = False + OptionsView.Indicator = True + OptionsView.IndicatorWidth = 50 object cxGridDBColumn4: TcxGridDBColumn Caption = #21333#25454#32534#21495 DataBinding.FieldName = 'TMMNo' @@ -324,14 +344,90 @@ inherited frmPlanScanInEdit: TfrmPlanScanInEdit GridView = Tv3 end end + object GroupBox1: TGroupBox + Left = 770 + Top = 1 + Width = 401 + Height = 385 + Align = alRight + Caption = #35013#36710#21333 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -21 + Font.Name = #24494#36719#38597#40657 + Font.Style = [] + ParentFont = False + TabOrder = 1 + Visible = False + object cxGrid1: TcxGrid + Left = 2 + Top = 30 + Width = 397 + Height = 353 + Align = alClient + TabOrder = 0 + object TV1: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + ScrollbarAnnotations.CustomAnnotations = <> + DataController.DataSource = DS_1 + DataController.Filter.AutoDataSetFilter = True + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Format = #21367#25968#37327#65306'#' + Kind = skCount + end + item + Kind = skSum + end + item + Kind = skCount + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + object cxGridDBColumn1: TcxGridDBColumn + Caption = #35013#36710#21333#21495 + DataBinding.FieldName = 'ZCID' + DataBinding.IsNullValueType = True + FooterAlignmentHorz = taCenter + HeaderAlignmentHorz = taCenter + HeaderGlyphAlignmentHorz = taCenter + Options.Editing = False + Width = 232 + end + end + object cxGridLevel2: TcxGridLevel + GridView = TV1 + end + end + end + end + inherited loadProcess: TPanel + Left = 501 + Top = 231 + ExplicitLeft = 501 + ExplicitTop = 231 end inherited cxProgressBar2: TcxProgressBar + Left = 454 + Top = 307 + ExplicitLeft = 454 + ExplicitTop = 307 ExplicitHeight = 25 end inherited ADOQueryBaseCmd: TADOQuery Connection = DataLink_TradeTotalClothStk.ADOLink - Left = 785 - Top = 200 + Left = 677 + Top = 249 end inherited ADOQueryBaseTemp: TADOQuery Connection = DataLink_TradeTotalClothStk.ADOLink diff --git a/T02贸易汇总仓库/U_PlanScanInEdit.pas b/T02贸易汇总仓库/U_PlanScanInEdit.pas index ba62f84..ee5926f 100644 --- a/T02贸易汇总仓库/U_PlanScanInEdit.pas +++ b/T02贸易汇总仓库/U_PlanScanInEdit.pas @@ -73,6 +73,12 @@ type Label3: TLabel; Driver: TBtnEditA; Driverid: TEdit; + GroupBox1: TGroupBox; + cxGrid1: TcxGrid; + TV1: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridLevel2: TcxGridLevel; + Button1: TButton; procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure FormDestroy(Sender: TObject); procedure FormShow(Sender: TObject); @@ -85,12 +91,15 @@ type procedure carPlateBtnClick(Sender: TObject); procedure TquerenClick(Sender: TObject); procedure DriverBtnClick(Sender: TObject); + procedure Button1Click(Sender: TObject); private { Private declarations } FScan, FSubIds, FZCID: string; procedure PlayWav(MWav: string); procedure InitKC(); - procedure InitStatus(); + + procedure InitZCD(); + procedure InitStatus(ZCID: string); procedure ScanKW(); procedure ScanCIID(); function SaveData(): Boolean; @@ -115,24 +124,68 @@ begin PlaySound(PChar(ExtractFilePath(Application.ExeName) + 'wav\' + MWav + '.wav'), 0, SND_ASYNC); end; +procedure TfrmPlanScanInEdit.InitZCD(); +begin + +// if carPlate.Text = '' then +// exit; + + + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Trade_Market_CarTransport A WHERE STATUS=''0'' '); + + sql.Add('AND EXISTS (SELECT * FROM Trade_Market_CarTransportSUB B WHERE B.ZCID=A.ZCID) '); + + Open; + end; + SCreateCDS(ADOQueryTemp, CDS_1); + SInitCDSData(ADOQueryTemp, CDS_1); + +end; + procedure TfrmPlanScanInEdit.InitKC(); begin - if carPlate.Text = '' then - exit; +// if carPlate.Text = '' then +// exit; + with ADOQueryTemp do begin Close; sql.Clear; sql.Add('select * from Trade_Market_Main A '); - sql.add(' left join Trade_Market_CarTransportSub B on A.TmMid=B.TmMid '); + sql.Add('where isnull(A.Status,''0'')=''2'' '); sql.add('and A.TMMId =' + QuotedStr(TRIm(FScan))); + SQL.Add('AND NOT EXISTS(SELECT * FROM Trade_Market_CarTransportSub B WHERE A.TmMid=B.TmMid)'); Open; end; - SCreateCDS(ADOQueryTemp, CDS_3); - SInitCDSData(ADOQueryTemp, CDS_3); + if ADOQueryTemp.IsEmpty then + begin + application.MessageBox('Ѱ', 'ʾϢ', 0); + Exit; + end + else + begin + if CDS_3.Locate('TMMID', ADOQueryTemp.FieldByName('TMMID').AsString, []) then + begin + Application.MessageBox('õбУظ', 'ʾϢ', 0); + Exit; // ֱ˳ִ Append + end; + with CDS_3 do + begin + Append; + FIELDBYNAME('TMMNo').VALUE := ADOQueryTemp.FieldByName('TMMNo').AsString; + + FIELDBYNAME('CUSTNAME').VALUE := ADOQueryTemp.FieldByName('CUSTNAME').AsString; + FIELDBYNAME('tmmid').VALUE := ADOQueryTemp.FieldByName('tmmid').AsString; + Post; + end; + end; end; @@ -222,8 +275,22 @@ procedure TfrmPlanScanInEdit.FormShow(Sender: TObject); begin inherited; ReadCxGrid(self.caption + 'Tv3', Tv3, 'Ʒֿ'); - InitKC(); +// InitKC(); CRTime.DateTime := SGetServerDate(ADOQueryTemp); + + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Trade_Market_Main A '); + + sql.Add('where 1<>1 '); + + Open; + end; + SCreateCDS(ADOQueryTemp, CDS_3); + SInitCDSData(ADOQueryTemp, CDS_3); + initzcd(); end; procedure TfrmPlanScanInEdit.edtScanKeyPress(Sender: TObject; var Key: Char); @@ -231,8 +298,15 @@ var maxno, SMFlag, KYCKFlag, FMainId, ff: string; FFQty: Integer; begin + if Length(edtScan.Text) = 12 then + begin + Key := #13; // ǿưѵǰɻس + edtScan.SelectAll; // ѡѡȫ´θɨ + end; if Key = #13 then begin + if edtScan.Text = '' then + EXIT; FScan := TRIM(edtScan.Text); edtScan.Text := ''; // if Copy(FScan, 1, 2) = 'KW' then @@ -257,7 +331,7 @@ begin with frmLabelPrint do begin FLMType := 'TradeClothIn1'; - FFiltration1 := Trim(Self.InNo.Text); + FFiltration1 := Trim(CDS_1.FieldByName('zcid').AsString); if ShowModal = 1 then begin @@ -288,6 +362,15 @@ begin end; end; +procedure TfrmPlanScanInEdit.Button1Click(Sender: TObject); +begin + with CDS_3 do + begin + Delete; + end; + +end; + procedure TfrmPlanScanInEdit.carPlateBtnClick(Sender: TObject); begin inherited; @@ -355,8 +438,20 @@ begin if SaveData() then begin Application.MessageBox('ɹ!', 'ʾ', 0); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Trade_Market_Main A '); - Exit; + sql.Add('where 1<>1 '); + + Open; + end; + SCreateCDS(ADOQueryTemp, CDS_3); + SInitCDSData(ADOQueryTemp, CDS_3); + initzcd(); +// Exit; end; end; //procedure TfrmPlanScanInEdit.TquerenClick(Sender: TObject); @@ -414,15 +509,8 @@ begin First; while not Eof do begin - if Trim(CDS_3.fieldbyname('ZCMXID').AsString) = '' then - begin - if GetLSNo(ADOQueryCmd, MaxSid, 'DS', 'Trade_Market_CarTransportSub', 4, 1) = False then - raise Exception.Create('ȡˮʧܣ'); - end - else - begin - MaxSid := Trim(CDS_3.fieldbyname('ZCMXID').AsString); - end; + if GetLSNo(ADOQueryCmd, MaxSid, 'DS', 'Trade_Market_CarTransportSub', 4, 1) = False then + raise Exception.Create('ȡˮʧܣ'); with ADOQueryCmd do begin @@ -447,9 +535,10 @@ begin FieldByName('TmMid').Value := CDS_3.fieldbyname('TMMId').Value; Post; end; - InitStatus(); - CDS_3.Edit; - CDS_3.FieldByName('ZCMXID').Value := Trim(MaxSid); + +// CDS_3.Edit; +// CDS_3.FieldByName('ZCMXID').Value := Trim(MaxSid); + InitStatus(MaxMid); Next; end; end; @@ -457,15 +546,16 @@ begin ///////////////// ӱ ///////////////// FZCID := Trim(MaxMid); ADOQueryCmd.Connection.CommitTrans; -// Result := True; + + Result := True; except ADOQueryCmd.Connection.RollbackTrans; application.MessageBox(PChar(Exception(ExceptObject).Message), 'ʾϢ', 0); -// Result := False; + Result := False; end; end; -procedure TfrmPlanScanInEdit.InitStatus(); +procedure TfrmPlanScanInEdit.InitStatus(ZCID: string); begin with ADOQueryCmd do @@ -473,6 +563,10 @@ begin close; sql.Clear; sql.Add('update Trade_Market_Main SET status=''9'' '); + SQL.Add(',zctime=GETDATE()'); + SQL.Add(',Driver=' + QuotedStr(Driver.Text)); + SQL.Add(',carPlate= ' + QuotedStr(carPlate.Text)); + SQL.Add(',zcid= ' + QuotedStr(ZCID)); sql.Add('where TMMId=' + quotedstr(trim(CDS_3.fieldbyname('TMMId').AsString))); sql.Add('insert into Finance_Need_Up(UType,UDataId,UOperation,UOperator,UModule,UDetails) '); diff --git a/T02贸易汇总仓库/U_PlanScanInEdit2.dfm b/T02贸易汇总仓库/U_PlanScanInEdit2.dfm new file mode 100644 index 0000000..965a083 --- /dev/null +++ b/T02贸易汇总仓库/U_PlanScanInEdit2.dfm @@ -0,0 +1,490 @@ +inherited frmPlanScanInEdit2: TfrmPlanScanInEdit2 + Caption = #24211#23384#24211#20301#25195#25551 + ClientHeight = 565 + ClientWidth = 1172 + FormStyle = fsMDIChild + Visible = True + ExplicitWidth = 1188 + ExplicitHeight = 604 + PixelsPerInch = 96 + TextHeight = 17 + object Panel1: TPanel [0] + Left = 0 + Top = 0 + Width = 1172 + Height = 178 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 2 + object Panel3: TPanel + Left = 2 + Top = 2 + Width = 1168 + Height = 174 + Align = alClient + TabOrder = 0 + object Label6: TLabel + Left = 13 + Top = 68 + Width = 66 + Height = 33 + Caption = #25195#25551 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label1: TLabel + Left = 1070 + Top = 78 + Width = 66 + Height = 33 + Caption = #21306#22495 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label2: TLabel + Left = 224 + Top = 131 + Width = 66 + Height = 33 + Caption = #36710#36742 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label5: TLabel + Left = 34 + Top = 180 + Width = 48 + Height = 17 + Caption = #20837#24211#21333#21495 + Visible = False + end + object Label4: TLabel + Left = 1022 + Top = 179 + Width = 48 + Height = 17 + Caption = #20837#24211#26102#38388 + Visible = False + end + object Label11: TLabel + Left = 1022 + Top = 205 + Width = 48 + Height = 17 + Caption = #20837#24211#31867#22411 + Visible = False + end + object Label3: TLabel + Left = 25 + Top = 134 + Width = 66 + Height = 33 + Caption = #21496#26426 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object ToolBar3: TToolBar + Tag = 1 + Left = 1 + Top = 1 + Width = 1166 + Height = 30 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clWhite + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeTotalClothStk.cxImageList_bar + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object ToolButton3: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #30721#21333#25171#21360 + ImageIndex = 21 + Visible = False + OnClick = ToolButton3Click + end + object ToolButton8: TToolButton + Left = 87 + Top = 0 + AutoSize = True + Caption = #20445#23384#26684#24335 + ImageIndex = 16 + OnClick = ToolButton8Click + end + object ToolButton7: TToolButton + Left = 174 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 7 + OnClick = ToolButton7Click + end + object btnGetOutNo: TToolButton + Left = 237 + Top = 0 + AutoSize = True + Caption = #21462#21495 + ImageIndex = 2 + Visible = False + OnClick = btnGetOutNoClick + end + end + object edtScan: TEdit + Left = 85 + Top = 44 + Width = 379 + Height = 72 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -64 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 1 + OnKeyPress = edtScanKeyPress + end + object wlCompany: TBtnEditA + Tag = 1 + Left = 1135 + Top = 80 + Width = 121 + Height = 26 + TabOrder = 2 + Visible = False + OnBtnClick = wlCompanyBtnClick + end + object InNo: TEdit + Left = 88 + Top = 176 + Width = 100 + Height = 25 + TabOrder = 3 + Visible = False + end + object CRTime: TDateTimePicker + Left = 1070 + Top = 175 + Width = 100 + Height = 20 + Date = 41337.000000000000000000 + Format = 'yyyy-MM-dd' + Time = 0.663190821760508700 + TabOrder = 4 + Visible = False + end + object CRType: TComboBox + Left = 1070 + Top = 201 + Width = 100 + Height = 25 + Style = csDropDownList + ItemIndex = 0 + TabOrder = 5 + Text = #26816#39564#20837#24211 + Visible = False + Items.Strings = ( + #26816#39564#20837#24211 + #36864#36135#20837#24211) + end + object carPlate: TBtnEditA + Tag = 1 + Left = 296 + Top = 134 + Width = 121 + Height = 26 + TabOrder = 6 + OnBtnClick = carPlateBtnClick + end + object Tqueren: TButton + Left = 499 + Top = 50 + Width = 153 + Height = 70 + Caption = #30830#23450#20986#36710 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #24494#36719#38597#40657 + Font.Style = [] + ParentFont = False + TabOrder = 7 + OnClick = TquerenClick + end + object Driver: TBtnEditA + Tag = 1 + Left = 90 + Top = 136 + Width = 121 + Height = 26 + TabOrder = 8 + OnBtnClick = DriverBtnClick + end + object Driverid: TEdit + Tag = 1 + Left = 1102 + Top = 26 + Width = 100 + Height = 25 + TabOrder = 9 + Visible = False + end + end + end + object Panel2: TPanel [1] + Left = 0 + Top = 178 + Width = 1172 + Height = 387 + Align = alClient + Caption = 'Panel2' + TabOrder = 3 + object cxGrid3: TcxGrid + Left = 1 + Top = 1 + Width = 769 + Height = 385 + Align = alClient + TabOrder = 0 + object Tv3: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + ScrollbarAnnotations.CustomAnnotations = <> + DataController.DataSource = DS_3 + DataController.Filter.AutoDataSetFilter = True + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Format = #21367#25968#37327#65306'#' + Kind = skCount + end + item + Kind = skSum + end + item + Kind = skCount + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + OptionsView.IndicatorWidth = 50 + object cxGridDBColumn4: TcxGridDBColumn + Caption = #21333#25454#32534#21495 + DataBinding.FieldName = 'TMMNo' + DataBinding.IsNullValueType = True + FooterAlignmentHorz = taCenter + HeaderAlignmentHorz = taCenter + HeaderGlyphAlignmentHorz = taCenter + Options.Editing = False + Width = 232 + end + object Tv3Column1: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustName' + DataBinding.IsNullValueType = True + FooterAlignmentHorz = taCenter + HeaderAlignmentHorz = taCenter + HeaderGlyphAlignmentHorz = taCenter + Width = 90 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv3 + end + end + object GroupBox1: TGroupBox + Left = 770 + Top = 1 + Width = 401 + Height = 385 + Align = alRight + Caption = #35013#36710#21333 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -21 + Font.Name = #24494#36719#38597#40657 + Font.Style = [] + ParentFont = False + TabOrder = 1 + Visible = False + object cxGrid1: TcxGrid + Left = 2 + Top = 30 + Width = 397 + Height = 353 + Align = alClient + TabOrder = 0 + object TV1: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + ScrollbarAnnotations.CustomAnnotations = <> + DataController.DataSource = DS_1 + DataController.Filter.AutoDataSetFilter = True + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Format = #21367#25968#37327#65306'#' + Kind = skCount + end + item + Kind = skSum + end + item + Kind = skCount + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + object cxGridDBColumn1: TcxGridDBColumn + Caption = #35013#36710#21333#21495 + DataBinding.FieldName = 'ZCID' + DataBinding.IsNullValueType = True + FooterAlignmentHorz = taCenter + HeaderAlignmentHorz = taCenter + HeaderGlyphAlignmentHorz = taCenter + Options.Editing = False + Width = 232 + end + end + object cxGridLevel2: TcxGridLevel + GridView = TV1 + end + end + end + end + inherited loadProcess: TPanel + Left = 501 + Top = 231 + ExplicitLeft = 501 + ExplicitTop = 231 + end + inherited cxProgressBar2: TcxProgressBar + Left = 454 + Top = 307 + ExplicitLeft = 454 + ExplicitTop = 307 + ExplicitHeight = 25 + end + inherited ADOQueryBaseCmd: TADOQuery + Connection = DataLink_TradeTotalClothStk.ADOLink + Left = 677 + Top = 249 + end + inherited ADOQueryBaseTemp: TADOQuery + Connection = DataLink_TradeTotalClothStk.ADOLink + Left = 697 + Top = 185 + end + object GPM_1: TcxGridPopupMenu + PopupMenus = <> + Left = 168 + Top = 400 + end + object CDS_1: TClientDataSet + Aggregates = <> + Params = <> + Left = 264 + Top = 400 + end + object DS_1: TDataSource + DataSet = CDS_1 + Left = 336 + Top = 408 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeTotalClothStk.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 704 + Top = 248 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeTotalClothStk.ADOLink + Parameters = <> + Left = 792 + Top = 256 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeTotalClothStk.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 872 + Top = 256 + end + object CDS_2: TClientDataSet + Aggregates = <> + Params = <> + Left = 264 + Top = 328 + end + object DS_2: TDataSource + DataSet = CDS_2 + Left = 336 + Top = 328 + end + object GPM_2: TcxGridPopupMenu + PopupMenus = <> + Left = 176 + Top = 324 + end + object DS_3: TDataSource + DataSet = CDS_3 + Left = 808 + Top = 408 + end + object CDS_3: TClientDataSet + Aggregates = <> + Params = <> + Left = 760 + Top = 408 + end + object GPM_3: TcxGridPopupMenu + Grid = cxGrid3 + PopupMenus = <> + Left = 712 + Top = 408 + end +end diff --git a/T02贸易汇总仓库/U_PlanScanInEdit2.pas b/T02贸易汇总仓库/U_PlanScanInEdit2.pas new file mode 100644 index 0000000..1975be8 --- /dev/null +++ b/T02贸易汇总仓库/U_PlanScanInEdit2.pas @@ -0,0 +1,527 @@ +unit U_PlanScanInEdit2; + +interface + +uses + Windows, Messages, strUtils, SysUtils, Variants, Classes, Graphics, Controls, + Forms, Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, StdCtrls, ExtCtrls, ADODB, DBClient, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, MMSystem, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses, + cxControls, cxGridCustomView, cxGrid, MovePanel, cxCheckBox, Menus, ComCtrls, + cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, U_BaseList, dxSkinsCore, + dxSkinsDefaultPainters, dxDateRanges, dxBarBuiltInMenu, RM_Common, RM_Class, + RM_GridReport, RM_Dataset, Vcl.ToolWin, dxSkinBasic, dxSkinBlack, dxSkinBlue, + dxSkinBlueprint, dxSkinCaramel, dxSkinCoffee, dxSkinDarkroom, dxSkinDarkSide, + dxSkinDevExpressDarkStyle, dxSkinDevExpressStyle, dxSkinFoggy, + dxSkinGlassOceans, dxSkinHighContrast, dxSkiniMaginary, dxSkinLilian, + dxSkinLiquidSky, dxSkinLondonLiquidSky, dxSkinMcSkin, dxSkinMetropolis, + dxSkinMetropolisDark, dxSkinMoneyTwins, dxSkinOffice2007Black, + dxSkinOffice2007Blue, dxSkinOffice2007Green, dxSkinOffice2007Pink, + dxSkinOffice2007Silver, dxSkinOffice2010Black, dxSkinOffice2010Blue, + dxSkinOffice2010Silver, dxSkinOffice2013DarkGray, dxSkinOffice2013LightGray, + dxSkinOffice2013White, dxSkinOffice2016Colorful, dxSkinOffice2016Dark, + dxSkinOffice2019Black, dxSkinOffice2019Colorful, dxSkinOffice2019DarkGray, + dxSkinOffice2019White, dxSkinPumpkin, dxSkinSeven, dxSkinSevenClassic, + dxSkinSharp, dxSkinSharpPlus, dxSkinSilver, dxSkinSpringtime, dxSkinStardust, + dxSkinSummer2008, dxSkinTheAsphaltWorld, dxSkinTheBezier, dxSkinValentine, + dxSkinVisualStudio2013Blue, dxSkinVisualStudio2013Dark, + dxSkinVisualStudio2013Light, dxSkinVS2010, dxSkinWhiteprint, dxSkinWXI, + dxSkinXmas2008Blue, dxScrollbarAnnotations, cxContainer, cxProgressBar, + BtnEdit; + +type + TfrmPlanScanInEdit2 = class(TfrmBaseList) + GPM_1: TcxGridPopupMenu; + CDS_1: TClientDataSet; + DS_1: TDataSource; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + Panel1: TPanel; + CDS_2: TClientDataSet; + DS_2: TDataSource; + GPM_2: TcxGridPopupMenu; + DS_3: TDataSource; + CDS_3: TClientDataSet; + GPM_3: TcxGridPopupMenu; + Panel2: TPanel; + cxGrid3: TcxGrid; + Tv3: TcxGridDBTableView; + cxGridDBColumn4: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + Panel3: TPanel; + ToolBar3: TToolBar; + ToolButton3: TToolButton; + btnGetOutNo: TToolButton; + ToolButton7: TToolButton; + ToolButton8: TToolButton; + edtScan: TEdit; + Label6: TLabel; + Label1: TLabel; + Label2: TLabel; + wlCompany: TBtnEditA; + Label5: TLabel; + InNo: TEdit; + Label4: TLabel; + CRTime: TDateTimePicker; + Label11: TLabel; + CRType: TComboBox; + carPlate: TBtnEditA; + Tv3Column1: TcxGridDBColumn; + Tqueren: TButton; + Label3: TLabel; + Driver: TBtnEditA; + Driverid: TEdit; + GroupBox1: TGroupBox; + cxGrid1: TcxGrid; + TV1: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridLevel2: TcxGridLevel; + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormDestroy(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure btnGetOutNoClick(Sender: TObject); + procedure ToolButton7Click(Sender: TObject); + procedure ToolButton8Click(Sender: TObject); + procedure edtScanKeyPress(Sender: TObject; var Key: Char); + procedure wlCompanyBtnClick(Sender: TObject); + procedure carPlateBtnClick(Sender: TObject); + procedure TquerenClick(Sender: TObject); + procedure DriverBtnClick(Sender: TObject); + private + { Private declarations } + FScan, FSubIds, FZCID: string; + procedure PlayWav(MWav: string); + procedure InitKC(); + + procedure InitZCD(); + procedure InitStatus(ZCID: string); + procedure ScanKW(); + procedure ScanCIID(); + function SaveData(): Boolean; + public + + { Public declarations } + end; + +var + frmPlanScanInEdit2: TfrmPlanScanInEdit2; + +implementation + +uses + U_DataLink, U_RTFun, U_LabelPrint, U_ZDYHelp, U_MachineManageSel, U_UserSel; //U_TradeClothWaitStorage, U_PositionSel + +{$R *.dfm} + +procedure TfrmPlanScanInEdit2.PlayWav(MWav: string); +begin + if FileExists(PChar(ExtractFilePath(Application.ExeName) + 'wav\' + MWav + '.wav')) then + PlaySound(PChar(ExtractFilePath(Application.ExeName) + 'wav\' + MWav + '.wav'), 0, SND_ASYNC); +end; + +procedure TfrmPlanScanInEdit2.InitZCD(); +begin + +// if carPlate.Text = '' then +// exit; + + + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Trade_Market_CarTransport A WHERE STATUS=''0'' '); + + sql.Add('AND EXISTS (SELECT * FROM Trade_Market_CarTransportSUB B WHERE B.ZCID=A.ZCID) '); + + Open; + end; + SCreateCDS(ADOQueryTemp, CDS_1); + SInitCDSData(ADOQueryTemp, CDS_1); + +end; + +procedure TfrmPlanScanInEdit2.InitKC(); +begin + +// if carPlate.Text = '' then +// exit; + + + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Trade_Market_Main A '); + + sql.Add('where '); + sql.add(' ZCID =(select zcid from Trade_Market_Main b where b.tmmid=' + QuotedStr(TRIm(FScan))); + sql.add(')'); + SQL.Add('AND cctime IS NULL '); + sql.Add('and ISNULL(stATUS,''0'')=''9'''); + + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + application.MessageBox('ѳ', 'ʾϢ', 0); + Exit; + end + else + begin + SCreateCDS(ADOQueryTemp, CDS_3); + SInitCDSData(ADOQueryTemp, CDS_3); + Driver.Text := ADOQueryTemp.FieldByName('Driver').AsString; + carPlate.Text := ADOQueryTemp.FieldByName('carPlate').AsString; + + end; + +end; + +procedure TfrmPlanScanInEdit2.ScanKW(); +var + MStkIds: string; +begin + try + with ADOQueryTemp do + begin + close; + SQL.Clear; + sql.Add('select * from Bs_Position where POSID =''' + trim(FScan) + ''' '); + open; + end; + + wlCompany.Text := ADOQueryTemp.FieldByName('posno').AsString; + + btnGetOutNo.Click; + except + + end; + +end; + +procedure TfrmPlanScanInEdit2.ScanCIID(); +var + MStkIds: string; +begin + try + if Trim(wlCompany.Text) = '' then + raise Exception.Create('λΪ!'); + if Trim(InNo.Text) = '' then + raise Exception.Create('ⵥŲΪ!'); + + MStkIds := FScan; + + try + ADOQueryCmd.Connection.BeginTrans; + + with ADOQueryCmd do + begin + Close; + Sql.Clear; + Sql.Add('exec P_Market_Position_In '); + Sql.Add('@StkIds=' + quotedstr(trim(MStkIds))); + Sql.Add(',@IOTime=' + Quotedstr(FormatDateTime('yyyy-MM-dd', CRTime.DateTime))); + Sql.Add(',@IOType=' + Quotedstr(crtype.Text)); + Sql.Add(',@IONO=' + Quotedstr(InNo.Text)); + Sql.Add(',@StkPosition=' + Quotedstr(wlCompany.Text)); + Sql.Add(',@FillId=' + Quotedstr(DCode)); + Sql.Add(',@Filler=' + Quotedstr(DName)); +// ShowMessage(sql.Text); + Open; + end; + if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then + begin + raise Exception.Create(pchar(trim(ADOQueryCmd.FieldByName('ShowMsg').AsString))); + end; + ADOQueryCmd.Connection.CommitTrans; + PlayWav('ȷ'); + except + ADOQueryCmd.Connection.RollbackTrans; + raise Exception.Create(PChar(Exception(ExceptObject).Message)); + end; + + except + application.MessageBox(PChar(Exception(ExceptObject).Message), 'ʾϢ', 0); +// PlayWav(''); + end; + +end; + +procedure TfrmPlanScanInEdit2.FormClose(Sender: TObject; var Action: TCloseAction); +begin + inherited; + Action := caFree; +end; + +procedure TfrmPlanScanInEdit2.FormDestroy(Sender: TObject); +begin + inherited; + frmPlanScanInEdit2 := nil; +end; + +procedure TfrmPlanScanInEdit2.FormShow(Sender: TObject); +begin + inherited; + ReadCxGrid(self.caption + 'Tv3', Tv3, 'Ʒֿ'); +// InitKC(); + CRTime.DateTime := SGetServerDate(ADOQueryTemp); + + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Trade_Market_Main A '); + + sql.Add('where 1<>1 '); + + Open; + end; + SCreateCDS(ADOQueryTemp, CDS_3); + SInitCDSData(ADOQueryTemp, CDS_3); + initzcd(); +end; + +procedure TfrmPlanScanInEdit2.edtScanKeyPress(Sender: TObject; var Key: Char); +var + maxno, SMFlag, KYCKFlag, FMainId, ff: string; + FFQty: Integer; +begin + // =13 ʱԶģⰴس + if Length(edtScan.Text) = 12 then + begin + Key := #13; // ǿưѵǰɻس + edtScan.SelectAll; // ѡѡȫ´θɨ + end; + if Key = #13 then + begin + if edtScan.Text = '' then + EXIT; + FScan := TRIM(edtScan.Text); + edtScan.Text := ''; +// if Copy(FScan, 1, 2) = 'KW' then +// begin +// ScanKW(); +// end +// else +// begin +// ScanCIID(); +// end; + InitKC(); + end; +end; + +procedure TfrmPlanScanInEdit2.ToolButton3Click(Sender: TObject); +begin + if Trim(InNo.Text) = '' then + Exit; + + try + frmLabelPrint := TfrmLabelPrint.Create(Application); + with frmLabelPrint do + begin + FLMType := 'TradeClothIn1'; + FFiltration1 := Trim(CDS_1.FieldByName('zcid').AsString); + if ShowModal = 1 then + begin + + end; + end; + finally + frmLabelPrint.Free; + end; + +end; + +procedure TfrmPlanScanInEdit2.wlCompanyBtnClick(Sender: TObject); +begin + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + MainType := 'Cust'; + flag := 'AREA'; + flagname := ''; + if ShowModal = 1 then + begin + wlCompany.text := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmPlanScanInEdit2.carPlateBtnClick(Sender: TObject); +begin + inherited; + try + frmMachineManageSel := TfrmMachineManageSel.Create(Application); + with frmMachineManageSel do + begin + if ShowModal = 1 then + begin + carPlate.text := Trim(CDS_1.fieldbyname('VNO').AsString); + end; + end; + finally + frmMachineManageSel.Free; + end; +end; + +procedure TfrmPlanScanInEdit2.DriverBtnClick(Sender: TObject); +begin + + try + frmUserSel := TfrmUserSel.Create(Application); + with frmUserSel do + begin + Fdept := 'ͻ'; + if ShowModal = 1 then + begin + self.Driverid.Text := Trim(CDS_1.fieldbyname('EECode').AsString); + self.Driver.Text := Trim(CDS_1.fieldbyname('EEName').AsString); + end; + end; + finally + frmUserSel.Free; + end; +end; + +procedure TfrmPlanScanInEdit2.btnGetOutNoClick(Sender: TObject); +var + maxNo: string; +begin + if GetLSNo(ADOQueryCmd, maxNo, 'RK', 'Trade_Cloth_IO', 3, 1) = False then + begin + Application.MessageBox('ȡⵥʧ!', 'ʾ', 0); + Exit; + end; + InNo.Text := Trim(maxNo); + CRTime.DateTime := SGetServerDate(ADOQueryTemp); + InitKC(); +end; + +procedure TfrmPlanScanInEdit2.ToolButton7Click(Sender: TObject); +begin + tv3.Controller.EditingController.ShowEdit(); + Close; + +end; + +procedure TfrmPlanScanInEdit2.ToolButton8Click(Sender: TObject); +begin + WriteCxGrid(self.caption + 'Tv3', Tv3, 'Ʒֿ'); +end; + +procedure TfrmPlanScanInEdit2.TquerenClick(Sender: TObject); +begin + if Driver.Text = '' then + begin + Application.MessageBox('˾Ϊ!', 'ʾ', 0); + Exit; + end; + if carPlate.Text = '' then + begin + Application.MessageBox('Ϊ!', 'ʾ', 0); + Exit; + end; + if SaveData() then + begin + Application.MessageBox('ɹ!', 'ʾ', 0); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Trade_Market_Main A '); + + sql.Add('where 1<>1 '); + + Open; + end; + SCreateCDS(ADOQueryTemp, CDS_3); + SInitCDSData(ADOQueryTemp, CDS_3); + initzcd(); + + end; +end; +//procedure TfrmPlanScanInEdit.TquerenClick(Sender: TObject); + +function TfrmPlanScanInEdit2.SaveData(): Boolean; +var + MaxMid, MaxSid: string; +begin + try + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update Trade_Market_Main '); + SQL.Add('set Cctime=GETDATE()'); + SQL.Add(',Driver=' + QuotedStr(Driver.Text)); + SQL.Add(',carPlate= ' + QuotedStr(carPlate.Text)); + + sql.Add('where ZCID=' + quotedstr(trim(CDS_3.fieldbyname('ZCID').AsString))); + + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); + sql.Add(' ' + quotedstr(trim(DName))); + sql.Add(',getdate() '); + sql.Add(',' + quotedstr(trim(self.Caption))); + sql.Add(',' + quotedstr(trim('ƻ'))); + sql.Add(',' + quotedstr(trim('ţ' + trim(CDS_3.FieldByName('ZCID').AsString)))); + sql.Add(',' + quotedstr(trim('ɹ'))); + sql.Add(')'); + execsql; + end; + ADOQueryCmd.Connection.CommitTrans; + + Result := True; + except + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox(PChar(Exception(ExceptObject).Message), 'ʾϢ', 0); + Result := False; + end; +end; + +procedure TfrmPlanScanInEdit2.InitStatus(ZCID: string); +begin + + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update Trade_Market_Main SET status=''9'' '); + SQL.Add(',zctime=GETDATE()'); + SQL.Add(',Driver=' + QuotedStr(Driver.Text)); + SQL.Add(',carPlate= ' + QuotedStr(carPlate.Text)); + SQL.Add(',zcid= ' + QuotedStr(ZCID)); + sql.Add('where TMMId=' + quotedstr(trim(CDS_3.fieldbyname('TMMId').AsString))); + + sql.Add('insert into Finance_Need_Up(UType,UDataId,UOperation,UOperator,UModule,UDetails) '); + sql.Add('values(''óײ'' '); + sql.Add(',' + quotedstr(trim(CDS_3.fieldbyname('TMMId').AsString))); + sql.Add(','''' '); + sql.Add(',' + quotedstr(DName)); + sql.Add(',' + quotedstr(trim(self.Caption))); + sql.Add(',' + quotedstr(trim(CDS_3.fieldbyname('TMMId').AsString))); + sql.Add(') '); + + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); + sql.Add(' ' + quotedstr(trim(DName))); + sql.Add(',getdate() '); + sql.Add(',' + quotedstr(trim(self.Caption))); + sql.Add(',' + quotedstr(trim('ƻ'))); + sql.Add(',' + quotedstr(trim('ƻţ' + trim(CDS_3.FieldByName('TMMNO').AsString)))); + sql.Add(',' + quotedstr(trim('ɹ'))); + sql.Add(')'); + execsql; + end; + +end; + +end. + diff --git a/T02贸易汇总仓库/U_PlanScanInEdit3.dfm b/T02贸易汇总仓库/U_PlanScanInEdit3.dfm new file mode 100644 index 0000000..1f7611e --- /dev/null +++ b/T02贸易汇总仓库/U_PlanScanInEdit3.dfm @@ -0,0 +1,511 @@ +inherited frmPlanScanInEdit3: TfrmPlanScanInEdit3 + Caption = #24211#23384#24211#20301#25195#25551 + ClientHeight = 565 + ClientWidth = 1172 + FormStyle = fsMDIChild + Visible = True + ExplicitWidth = 1188 + ExplicitHeight = 604 + PixelsPerInch = 96 + TextHeight = 17 + object Panel1: TPanel [0] + Left = 0 + Top = 0 + Width = 1172 + Height = 178 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 2 + object Panel3: TPanel + Left = 2 + Top = 2 + Width = 1168 + Height = 174 + Align = alClient + TabOrder = 0 + ExplicitLeft = 3 + ExplicitTop = -1 + object Label6: TLabel + Left = 13 + Top = 68 + Width = 66 + Height = 33 + Caption = #25195#25551 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end + object Label1: TLabel + Left = 1070 + Top = 78 + Width = 66 + Height = 33 + Caption = #21306#22495 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label2: TLabel + Left = 224 + Top = 131 + Width = 66 + Height = 33 + Caption = #36710#36742 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object Label5: TLabel + Left = 34 + Top = 180 + Width = 48 + Height = 17 + Caption = #20837#24211#21333#21495 + Visible = False + end + object Label4: TLabel + Left = 1022 + Top = 179 + Width = 48 + Height = 17 + Caption = #20837#24211#26102#38388 + Visible = False + end + object Label11: TLabel + Left = 1022 + Top = 205 + Width = 48 + Height = 17 + Caption = #20837#24211#31867#22411 + Visible = False + end + object Label3: TLabel + Left = 25 + Top = 134 + Width = 66 + Height = 33 + Caption = #21496#26426 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -32 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + Visible = False + end + object ToolBar3: TToolBar + Tag = 1 + Left = 1 + Top = 1 + Width = 1166 + Height = 30 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clWhite + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeTotalClothStk.cxImageList_bar + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object ToolButton3: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #30721#21333#25171#21360 + ImageIndex = 21 + Visible = False + OnClick = ToolButton3Click + end + object ToolButton8: TToolButton + Left = 87 + Top = 0 + AutoSize = True + Caption = #20445#23384#26684#24335 + ImageIndex = 16 + OnClick = ToolButton8Click + end + object ToolButton7: TToolButton + Left = 174 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 7 + OnClick = ToolButton7Click + end + object btnGetOutNo: TToolButton + Left = 237 + Top = 0 + AutoSize = True + Caption = #21462#21495 + ImageIndex = 2 + Visible = False + OnClick = btnGetOutNoClick + end + end + object edtScan: TEdit + Left = 85 + Top = 44 + Width = 379 + Height = 72 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -64 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 1 + OnKeyPress = edtScanKeyPress + end + object wlCompany: TBtnEditA + Tag = 1 + Left = 1135 + Top = 80 + Width = 121 + Height = 26 + TabOrder = 2 + Visible = False + OnBtnClick = wlCompanyBtnClick + end + object InNo: TEdit + Left = 88 + Top = 176 + Width = 100 + Height = 25 + TabOrder = 3 + Visible = False + end + object CRTime: TDateTimePicker + Left = 1070 + Top = 175 + Width = 100 + Height = 20 + Date = 41337.000000000000000000 + Format = 'yyyy-MM-dd' + Time = 0.663190821760508700 + TabOrder = 4 + Visible = False + end + object CRType: TComboBox + Left = 1070 + Top = 201 + Width = 100 + Height = 25 + Style = csDropDownList + ItemIndex = 0 + TabOrder = 5 + Text = #26816#39564#20837#24211 + Visible = False + Items.Strings = ( + #26816#39564#20837#24211 + #36864#36135#20837#24211) + end + object carPlate: TBtnEditA + Tag = 1 + Left = 296 + Top = 134 + Width = 121 + Height = 26 + TabOrder = 6 + Visible = False + OnBtnClick = carPlateBtnClick + end + object Tqueren: TButton + Left = 499 + Top = 50 + Width = 153 + Height = 70 + Caption = #30830#23450#22238#21333 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #24494#36719#38597#40657 + Font.Style = [] + ParentFont = False + TabOrder = 7 + OnClick = TquerenClick + end + object Driver: TBtnEditA + Tag = 1 + Left = 90 + Top = 136 + Width = 121 + Height = 26 + TabOrder = 8 + Visible = False + OnBtnClick = DriverBtnClick + end + object Driverid: TEdit + Tag = 1 + Left = 1102 + Top = 26 + Width = 100 + Height = 25 + TabOrder = 9 + Visible = False + end + object Button1: TButton + Left = 715 + Top = 50 + Width = 153 + Height = 70 + Caption = #21024#38500 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -19 + Font.Name = #24494#36719#38597#40657 + Font.Style = [] + ParentFont = False + TabOrder = 10 + OnClick = Button1Click + end + end + end + object Panel2: TPanel [1] + Left = 0 + Top = 178 + Width = 1172 + Height = 387 + Align = alClient + Caption = 'Panel2' + TabOrder = 3 + object cxGrid3: TcxGrid + Left = 1 + Top = 1 + Width = 769 + Height = 385 + Align = alClient + TabOrder = 0 + object Tv3: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + ScrollbarAnnotations.CustomAnnotations = <> + DataController.DataSource = DS_3 + DataController.Filter.AutoDataSetFilter = True + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Format = #21367#25968#37327#65306'#' + Kind = skCount + end + item + Kind = skSum + end + item + Kind = skCount + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + OptionsView.IndicatorWidth = 50 + object cxGridDBColumn4: TcxGridDBColumn + Caption = #21333#25454#32534#21495 + DataBinding.FieldName = 'TMMNo' + DataBinding.IsNullValueType = True + FooterAlignmentHorz = taCenter + HeaderAlignmentHorz = taCenter + HeaderGlyphAlignmentHorz = taCenter + Options.Editing = False + Width = 232 + end + object Tv3Column1: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustName' + DataBinding.IsNullValueType = True + FooterAlignmentHorz = taCenter + HeaderAlignmentHorz = taCenter + HeaderGlyphAlignmentHorz = taCenter + Width = 90 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv3 + end + end + object GroupBox1: TGroupBox + Left = 770 + Top = 1 + Width = 401 + Height = 385 + Align = alRight + Caption = #35013#36710#21333 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -21 + Font.Name = #24494#36719#38597#40657 + Font.Style = [] + ParentFont = False + TabOrder = 1 + Visible = False + object cxGrid1: TcxGrid + Left = 2 + Top = 30 + Width = 397 + Height = 353 + Align = alClient + TabOrder = 0 + object TV1: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + ScrollbarAnnotations.CustomAnnotations = <> + DataController.DataSource = DS_1 + DataController.Filter.AutoDataSetFilter = True + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Format = #21367#25968#37327#65306'#' + Kind = skCount + end + item + Kind = skSum + end + item + Kind = skCount + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + object cxGridDBColumn1: TcxGridDBColumn + Caption = #35013#36710#21333#21495 + DataBinding.FieldName = 'ZCID' + DataBinding.IsNullValueType = True + FooterAlignmentHorz = taCenter + HeaderAlignmentHorz = taCenter + HeaderGlyphAlignmentHorz = taCenter + Options.Editing = False + Width = 232 + end + end + object cxGridLevel2: TcxGridLevel + GridView = TV1 + end + end + end + end + inherited loadProcess: TPanel + Left = 501 + Top = 231 + ExplicitLeft = 501 + ExplicitTop = 231 + end + inherited cxProgressBar2: TcxProgressBar + Left = 454 + Top = 307 + ExplicitLeft = 454 + ExplicitTop = 307 + ExplicitHeight = 25 + end + inherited ADOQueryBaseCmd: TADOQuery + Connection = DataLink_TradeTotalClothStk.ADOLink + Left = 677 + Top = 249 + end + inherited ADOQueryBaseTemp: TADOQuery + Connection = DataLink_TradeTotalClothStk.ADOLink + Left = 697 + Top = 185 + end + object GPM_1: TcxGridPopupMenu + PopupMenus = <> + Left = 168 + Top = 400 + end + object CDS_1: TClientDataSet + Aggregates = <> + Params = <> + Left = 264 + Top = 400 + end + object DS_1: TDataSource + DataSet = CDS_1 + Left = 336 + Top = 408 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeTotalClothStk.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 704 + Top = 248 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeTotalClothStk.ADOLink + Parameters = <> + Left = 792 + Top = 256 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeTotalClothStk.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 872 + Top = 256 + end + object CDS_2: TClientDataSet + Aggregates = <> + Params = <> + Left = 264 + Top = 328 + end + object DS_2: TDataSource + DataSet = CDS_2 + Left = 336 + Top = 328 + end + object GPM_2: TcxGridPopupMenu + PopupMenus = <> + Left = 176 + Top = 324 + end + object DS_3: TDataSource + DataSet = CDS_3 + Left = 808 + Top = 408 + end + object CDS_3: TClientDataSet + Aggregates = <> + Params = <> + Left = 760 + Top = 408 + end + object GPM_3: TcxGridPopupMenu + Grid = cxGrid3 + PopupMenus = <> + Left = 712 + Top = 408 + end +end diff --git a/T02贸易汇总仓库/U_PlanScanInEdit3.pas b/T02贸易汇总仓库/U_PlanScanInEdit3.pas new file mode 100644 index 0000000..7f22aec --- /dev/null +++ b/T02贸易汇总仓库/U_PlanScanInEdit3.pas @@ -0,0 +1,557 @@ +unit U_PlanScanInEdit3; + +interface + +uses + Windows, Messages, strUtils, SysUtils, Variants, Classes, Graphics, Controls, + Forms, Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, StdCtrls, ExtCtrls, ADODB, DBClient, + cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, MMSystem, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses, + cxControls, cxGridCustomView, cxGrid, MovePanel, cxCheckBox, Menus, ComCtrls, + cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, U_BaseList, dxSkinsCore, + dxSkinsDefaultPainters, dxDateRanges, dxBarBuiltInMenu, RM_Common, RM_Class, + RM_GridReport, RM_Dataset, Vcl.ToolWin, dxSkinBasic, dxSkinBlack, dxSkinBlue, + dxSkinBlueprint, dxSkinCaramel, dxSkinCoffee, dxSkinDarkroom, dxSkinDarkSide, + dxSkinDevExpressDarkStyle, dxSkinDevExpressStyle, dxSkinFoggy, + dxSkinGlassOceans, dxSkinHighContrast, dxSkiniMaginary, dxSkinLilian, + dxSkinLiquidSky, dxSkinLondonLiquidSky, dxSkinMcSkin, dxSkinMetropolis, + dxSkinMetropolisDark, dxSkinMoneyTwins, dxSkinOffice2007Black, + dxSkinOffice2007Blue, dxSkinOffice2007Green, dxSkinOffice2007Pink, + dxSkinOffice2007Silver, dxSkinOffice2010Black, dxSkinOffice2010Blue, + dxSkinOffice2010Silver, dxSkinOffice2013DarkGray, dxSkinOffice2013LightGray, + dxSkinOffice2013White, dxSkinOffice2016Colorful, dxSkinOffice2016Dark, + dxSkinOffice2019Black, dxSkinOffice2019Colorful, dxSkinOffice2019DarkGray, + dxSkinOffice2019White, dxSkinPumpkin, dxSkinSeven, dxSkinSevenClassic, + dxSkinSharp, dxSkinSharpPlus, dxSkinSilver, dxSkinSpringtime, dxSkinStardust, + dxSkinSummer2008, dxSkinTheAsphaltWorld, dxSkinTheBezier, dxSkinValentine, + dxSkinVisualStudio2013Blue, dxSkinVisualStudio2013Dark, + dxSkinVisualStudio2013Light, dxSkinVS2010, dxSkinWhiteprint, dxSkinWXI, + dxSkinXmas2008Blue, dxScrollbarAnnotations, cxContainer, cxProgressBar, + BtnEdit; + +type + TfrmPlanScanInEdit3 = class(TfrmBaseList) + GPM_1: TcxGridPopupMenu; + CDS_1: TClientDataSet; + DS_1: TDataSource; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + Panel1: TPanel; + CDS_2: TClientDataSet; + DS_2: TDataSource; + GPM_2: TcxGridPopupMenu; + DS_3: TDataSource; + CDS_3: TClientDataSet; + GPM_3: TcxGridPopupMenu; + Panel2: TPanel; + cxGrid3: TcxGrid; + Tv3: TcxGridDBTableView; + cxGridDBColumn4: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + Panel3: TPanel; + ToolBar3: TToolBar; + ToolButton3: TToolButton; + btnGetOutNo: TToolButton; + ToolButton7: TToolButton; + ToolButton8: TToolButton; + edtScan: TEdit; + Label6: TLabel; + Label1: TLabel; + Label2: TLabel; + wlCompany: TBtnEditA; + Label5: TLabel; + InNo: TEdit; + Label4: TLabel; + CRTime: TDateTimePicker; + Label11: TLabel; + CRType: TComboBox; + carPlate: TBtnEditA; + Tv3Column1: TcxGridDBColumn; + Tqueren: TButton; + Label3: TLabel; + Driver: TBtnEditA; + Driverid: TEdit; + GroupBox1: TGroupBox; + cxGrid1: TcxGrid; + TV1: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridLevel2: TcxGridLevel; + Button1: TButton; + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormDestroy(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure btnGetOutNoClick(Sender: TObject); + procedure ToolButton7Click(Sender: TObject); + procedure ToolButton8Click(Sender: TObject); + procedure edtScanKeyPress(Sender: TObject; var Key: Char); + procedure wlCompanyBtnClick(Sender: TObject); + procedure carPlateBtnClick(Sender: TObject); + procedure TquerenClick(Sender: TObject); + procedure DriverBtnClick(Sender: TObject); + procedure Button1Click(Sender: TObject); + private + { Private declarations } + FScan, FSubIds, FZCID: string; + procedure PlayWav(MWav: string); + procedure InitKC(); + + procedure InitZCD(); + procedure InitStatus(ZCID: string); + procedure ScanKW(); + procedure ScanCIID(); + function SaveData(): Boolean; + public + + { Public declarations } + end; + +var + frmPlanScanInEdit3: TfrmPlanScanInEdit3; + +implementation + +uses + U_DataLink, U_RTFun, U_LabelPrint, U_ZDYHelp, U_MachineManageSel, U_UserSel; //U_TradeClothWaitStorage, U_PositionSel + +{$R *.dfm} + +procedure TfrmPlanScanInEdit3.PlayWav(MWav: string); +begin + if FileExists(PChar(ExtractFilePath(Application.ExeName) + 'wav\' + MWav + '.wav')) then + PlaySound(PChar(ExtractFilePath(Application.ExeName) + 'wav\' + MWav + '.wav'), 0, SND_ASYNC); +end; + +procedure TfrmPlanScanInEdit3.InitZCD(); +begin + +// if carPlate.Text = '' then +// exit; + + + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Trade_Market_CarTransport A WHERE STATUS=''0'' '); + + sql.Add('AND EXISTS (SELECT * FROM Trade_Market_CarTransportSUB B WHERE B.ZCID=A.ZCID) '); + + Open; + end; + SCreateCDS(ADOQueryTemp, CDS_1); + SInitCDSData(ADOQueryTemp, CDS_1); + +end; + +procedure TfrmPlanScanInEdit3.InitKC(); +begin + +// if carPlate.Text = '' then +// exit; + + + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Trade_Market_Main A '); + + sql.Add('where '); // ZCID =(select zcid from Trade_Market_Main b where + sql.add(' a.tmmid=' + QuotedStr(TRIm(FScan))); + + SQL.Add('AND HDtime IS NULL '); + sql.Add('and ISNULL(stATUS,''0'')=''9'''); + + Open; + end; + if ADOQueryTemp.IsEmpty then + begin + application.MessageBox('ѻص', 'ʾϢ', 0); + Exit; + end + else + begin + + if CDS_3.Locate('TMMID', ADOQueryTemp.FieldByName('TMMID').AsString, []) then + begin + Application.MessageBox('õбУظ', 'ʾϢ', 0); + Exit; // ֱ˳ִ Append + end; + with CDS_3 do + begin + Append; + FieldByName('TMMNo').VALUE := ADOQueryTemp.FieldByName('TMMNo').AsString; + FieldByName('TMMID').VALUE := ADOQueryTemp.FieldByName('TMMID').AsString; + FieldByName('CUSTNAME').VALUE := ADOQueryTemp.FieldByName('CUSTNAME').AsString; + POST; + end; +// +// SCreateCDS(ADOQueryTemp, CDS_3); +// SInitCDSData(ADOQueryTemp, CDS_3); +// Driver.Text := ADOQueryTemp.FieldByName('Driver').AsString; +// carPlate.Text := ADOQueryTemp.FieldByName('carPlate').AsString; + + end; + +end; + +procedure TfrmPlanScanInEdit3.ScanKW(); +var + MStkIds: string; +begin + try + with ADOQueryTemp do + begin + close; + SQL.Clear; + sql.Add('select * from Bs_Position where POSID =''' + trim(FScan) + ''' '); + open; + end; + + wlCompany.Text := ADOQueryTemp.FieldByName('posno').AsString; + + btnGetOutNo.Click; + except + + end; + +end; + +procedure TfrmPlanScanInEdit3.ScanCIID(); +var + MStkIds: string; +begin + try + if Trim(wlCompany.Text) = '' then + raise Exception.Create('λΪ!'); + if Trim(InNo.Text) = '' then + raise Exception.Create('ⵥŲΪ!'); + + MStkIds := FScan; + + try + ADOQueryCmd.Connection.BeginTrans; + + with ADOQueryCmd do + begin + Close; + Sql.Clear; + Sql.Add('exec P_Market_Position_In '); + Sql.Add('@StkIds=' + quotedstr(trim(MStkIds))); + Sql.Add(',@IOTime=' + Quotedstr(FormatDateTime('yyyy-MM-dd', CRTime.DateTime))); + Sql.Add(',@IOType=' + Quotedstr(crtype.Text)); + Sql.Add(',@IONO=' + Quotedstr(InNo.Text)); + Sql.Add(',@StkPosition=' + Quotedstr(wlCompany.Text)); + Sql.Add(',@FillId=' + Quotedstr(DCode)); + Sql.Add(',@Filler=' + Quotedstr(DName)); +// ShowMessage(sql.Text); + Open; + end; + if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then + begin + raise Exception.Create(pchar(trim(ADOQueryCmd.FieldByName('ShowMsg').AsString))); + end; + ADOQueryCmd.Connection.CommitTrans; + PlayWav('ȷ'); + except + ADOQueryCmd.Connection.RollbackTrans; + raise Exception.Create(PChar(Exception(ExceptObject).Message)); + end; + + except + application.MessageBox(PChar(Exception(ExceptObject).Message), 'ʾϢ', 0); +// PlayWav(''); + end; + +end; + +procedure TfrmPlanScanInEdit3.FormClose(Sender: TObject; var Action: TCloseAction); +begin + inherited; + Action := caFree; +end; + +procedure TfrmPlanScanInEdit3.FormDestroy(Sender: TObject); +begin + inherited; + frmPlanScanInEdit3 := nil; +end; + +procedure TfrmPlanScanInEdit3.FormShow(Sender: TObject); +begin + inherited; + ReadCxGrid(self.caption + 'Tv3', Tv3, 'Ʒֿ'); +// InitKC(); + CRTime.DateTime := SGetServerDate(ADOQueryTemp); + + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Trade_Market_Main A '); + + sql.Add('where 1<>1 '); + + Open; + end; + SCreateCDS(ADOQueryTemp, CDS_3); + SInitCDSData(ADOQueryTemp, CDS_3); + initzcd(); +end; + +procedure TfrmPlanScanInEdit3.edtScanKeyPress(Sender: TObject; var Key: Char); +var + maxno, SMFlag, KYCKFlag, FMainId, ff: string; + FFQty: Integer; +begin + // =13 ʱԶģⰴس + if Length(edtScan.Text) = 12 then + begin + Key := #13; // ǿưѵǰɻس + edtScan.SelectAll; // ѡѡȫ´θɨ + end; + + // ԭĻس߼ + if Key = #13 then + begin + if edtScan.Text = '' then + EXIT; + + FScan := Trim(edtScan.Text); + edtScan.Text := ''; + + InitKC(); + end; +end; + +procedure TfrmPlanScanInEdit3.ToolButton3Click(Sender: TObject); +begin + if Trim(InNo.Text) = '' then + Exit; + + try + frmLabelPrint := TfrmLabelPrint.Create(Application); + with frmLabelPrint do + begin + FLMType := 'TradeClothIn1'; + FFiltration1 := Trim(CDS_1.FieldByName('zcid').AsString); + if ShowModal = 1 then + begin + + end; + end; + finally + frmLabelPrint.Free; + end; + +end; + +procedure TfrmPlanScanInEdit3.wlCompanyBtnClick(Sender: TObject); +begin + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + MainType := 'Cust'; + flag := 'AREA'; + flagname := ''; + if ShowModal = 1 then + begin + wlCompany.text := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmPlanScanInEdit3.Button1Click(Sender: TObject); +begin + with CDS_3 do + begin + Delete; + end; + +end; + +procedure TfrmPlanScanInEdit3.carPlateBtnClick(Sender: TObject); +begin + inherited; + try + frmMachineManageSel := TfrmMachineManageSel.Create(Application); + with frmMachineManageSel do + begin + if ShowModal = 1 then + begin + carPlate.text := Trim(CDS_1.fieldbyname('VNO').AsString); + end; + end; + finally + frmMachineManageSel.Free; + end; +end; + +procedure TfrmPlanScanInEdit3.DriverBtnClick(Sender: TObject); +begin + + try + frmUserSel := TfrmUserSel.Create(Application); + with frmUserSel do + begin + Fdept := 'ͻ'; + if ShowModal = 1 then + begin + self.Driverid.Text := Trim(CDS_1.fieldbyname('EECode').AsString); + self.Driver.Text := Trim(CDS_1.fieldbyname('EEName').AsString); + end; + end; + finally + frmUserSel.Free; + end; +end; + +procedure TfrmPlanScanInEdit3.btnGetOutNoClick(Sender: TObject); +var + maxNo: string; +begin + if GetLSNo(ADOQueryCmd, maxNo, 'RK', 'Trade_Cloth_IO', 3, 1) = False then + begin + Application.MessageBox('ȡⵥʧ!', 'ʾ', 0); + Exit; + end; + InNo.Text := Trim(maxNo); + CRTime.DateTime := SGetServerDate(ADOQueryTemp); + InitKC(); +end; + +procedure TfrmPlanScanInEdit3.ToolButton7Click(Sender: TObject); +begin + tv3.Controller.EditingController.ShowEdit(); + Close; + +end; + +procedure TfrmPlanScanInEdit3.ToolButton8Click(Sender: TObject); +begin + WriteCxGrid(self.caption + 'Tv3', Tv3, 'Ʒֿ'); +end; + +procedure TfrmPlanScanInEdit3.TquerenClick(Sender: TObject); +begin +// if Driver.Text = '' then +// begin +// Application.MessageBox('˾Ϊ!', 'ʾ', 0); +// Exit; +// end; +// if carPlate.Text = '' then +// begin +// Application.MessageBox('Ϊ!', 'ʾ', 0); +// Exit; +// end; + if SaveData() then + begin + Application.MessageBox('ɹ!', 'ʾ', 0); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Trade_Market_Main A '); + + sql.Add('where 1<>1 '); + + Open; + end; + SCreateCDS(ADOQueryTemp, CDS_3); + SInitCDSData(ADOQueryTemp, CDS_3); + initzcd(); + + end; +end; +//procedure TfrmPlanScanInEdit.TquerenClick(Sender: TObject); + +function TfrmPlanScanInEdit3.SaveData(): Boolean; +var + MaxMid, MaxSid: string; +begin + try + ADOQueryCmd.Connection.BeginTrans; + + with CDS_3 do + begin + First; + while not Eof do + begin + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update Trade_Market_Main '); + SQL.Add('set status=''10'', hdtime=GETDATE()'); + + sql.Add('where TMMID=' + quotedstr(trim(CDS_3.fieldbyname('TMMID').AsString))); + + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); + sql.Add(' ' + quotedstr(trim(DName))); + sql.Add(',getdate() '); + sql.Add(',' + quotedstr(trim(self.Caption))); + sql.Add(',' + quotedstr(trim('ƻص'))); + sql.Add(',' + quotedstr(trim('ţ' + trim(CDS_3.FieldByName('ZCID').AsString)))); + sql.Add(',' + quotedstr(trim('ɹ'))); + sql.Add(')'); + execsql; + end; + Next; + end; + end; + + ADOQueryCmd.Connection.CommitTrans; + + Result := True; + except + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox(PChar(Exception(ExceptObject).Message), 'ʾϢ', 0); + Result := False; + end; +end; + +procedure TfrmPlanScanInEdit3.InitStatus(ZCID: string); +begin + + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update Trade_Market_Main SET status=''9'' '); + SQL.Add(',zctime=GETDATE()'); + SQL.Add(',Driver=' + QuotedStr(Driver.Text)); + SQL.Add(',carPlate= ' + QuotedStr(carPlate.Text)); + SQL.Add(',zcid= ' + QuotedStr(ZCID)); + sql.Add('where TMMId=' + quotedstr(trim(CDS_3.fieldbyname('TMMId').AsString))); + + sql.Add('insert into Finance_Need_Up(UType,UDataId,UOperation,UOperator,UModule,UDetails) '); + sql.Add('values(''óײ'' '); + sql.Add(',' + quotedstr(trim(CDS_3.fieldbyname('TMMId').AsString))); + sql.Add(','''' '); + sql.Add(',' + quotedstr(DName)); + sql.Add(',' + quotedstr(trim(self.Caption))); + sql.Add(',' + quotedstr(trim(CDS_3.fieldbyname('TMMId').AsString))); + sql.Add(') '); + + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); + sql.Add(' ' + quotedstr(trim(DName))); + sql.Add(',getdate() '); + sql.Add(',' + quotedstr(trim(self.Caption))); + sql.Add(',' + quotedstr(trim('ƻ'))); + sql.Add(',' + quotedstr(trim('ƻţ' + trim(CDS_3.FieldByName('TMMNO').AsString)))); + sql.Add(',' + quotedstr(trim('ɹ'))); + sql.Add(')'); + execsql; + end; + +end; + +end. + diff --git a/T02贸易汇总仓库/U_TradeClothTotalInInput.dfm b/T02贸易汇总仓库/U_TradeClothTotalInInput.dfm index 4e9153c..08597c9 100644 --- a/T02贸易汇总仓库/U_TradeClothTotalInInput.dfm +++ b/T02贸易汇总仓库/U_TradeClothTotalInInput.dfm @@ -21,6 +21,7 @@ inherited frmTradeClothTotalInInput: TfrmTradeClothTotalInInput Height = 518 Align = alClient TabOrder = 0 + ExplicitTop = 36 object Tv1: TcxGridDBTableView OnMouseDown = Tv1MouseDown Navigator.Buttons.CustomButtons = <> @@ -210,6 +211,7 @@ inherited frmTradeClothTotalInInput: TfrmTradeClothTotalInInput item FieldName = 'C_ColorNo' end> + Properties.ListOptions.ShowHeader = False Properties.ListSource = DS_YS Properties.OnEditValueChanged = Tv1Column6PropertiesEditValueChanged HeaderAlignmentHorz = taCenter @@ -278,12 +280,15 @@ inherited frmTradeClothTotalInInput: TfrmTradeClothTotalInInput Caption = #21333#20301 DataBinding.FieldName = 'QtyUnit' DataBinding.IsNullValueType = True - PropertiesClassName = 'TcxComboBoxProperties' - Properties.DropDownListStyle = lsEditFixedList - Properties.Items.Strings = ( - 'M' - 'Y' - 'Kg') + PropertiesClassName = 'TcxLookupComboBoxProperties' + Properties.KeyFieldNames = 'CICUnit' + Properties.ListColumns = < + item + FieldName = 'cicunit' + end> + Properties.ListOptions.ShowHeader = False + Properties.ListSource = DS_DW + Properties.OnEditValueChanged = v1QtyUnitPropertiesEditValueChanged HeaderAlignmentHorz = taCenter Width = 77 end @@ -512,10 +517,18 @@ inherited frmTradeClothTotalInInput: TfrmTradeClothTotalInInput Top = 0 AutoSize = True Caption = #26684#32654#20986#24211#25968#25454 - ImageIndex = 17 + ImageIndex = 22 Visible = False OnClick = GeMeiOutputSelClick end + object ToolButton4: TToolButton + Left = 648 + Top = 0 + AutoSize = True + Caption = #26684#32654#37197#36135#21333 + ImageIndex = 22 + OnClick = ToolButton4Click + end end inherited ADOQueryBaseCmd: TADOQuery Connection = DataLink_TradeTotalClothStk.ADOLink @@ -597,4 +610,16 @@ inherited frmTradeClothTotalInInput: TfrmTradeClothTotalInInput Left = 764 Top = 443 end + object ADO_DW: TADOQuery + Connection = DataLink_TradeTotalClothStk.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 862 + Top = 440 + end + object DS_DW: TDataSource + DataSet = ADO_DW + Left = 922 + Top = 442 + end end diff --git a/T02贸易汇总仓库/U_TradeClothTotalInInput.pas b/T02贸易汇总仓库/U_TradeClothTotalInInput.pas index 9297829..e701e0e 100644 --- a/T02贸易汇总仓库/U_TradeClothTotalInInput.pas +++ b/T02贸易汇总仓库/U_TradeClothTotalInInput.pas @@ -73,6 +73,9 @@ type DS_PM: TDataSource; ADO_YS: TADOQuery; DS_YS: TDataSource; + ADO_DW: TADOQuery; + DS_DW: TDataSource; + ToolButton4: TToolButton; procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure TBAddClick(Sender: TObject); procedure TBCloseClick(Sender: TObject); @@ -94,6 +97,8 @@ type procedure v1SPNamePropertiesEditValueChanged(Sender: TObject); procedure Tv1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); procedure Tv1Column6PropertiesEditValueChanged(Sender: TObject); + procedure v1QtyUnitPropertiesEditValueChanged(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); private { Private declarations } function SaveData(MSaveType: string): Boolean; @@ -111,7 +116,8 @@ implementation uses U_DataLink, U_RTFun, U_ZDYHelp, U_CompanySel, U_TradePlanSel, U_ClothInfoSel, - U_PurchaseContractSel, U_TradeSalesContractSel, U_GeMeiOutputSel; + U_PurchaseContractSel, U_TradeSalesContractSel, U_GeMeiOutputSel, + U_TradeMarketListSEL; {$R *.dfm} @@ -139,6 +145,17 @@ begin if CDS_Sub.Locate('Piece', null, []) = True then raise Exception.Create('ƥΪգ'); + if CDS_Sub.Locate('C_ColorNo', null, []) = True then + raise Exception.Create('ɫŲΪգ'); + + if CDS_Sub.Locate('C_ColorNo', '', []) = True then + raise Exception.Create('ɫŲΪգ'); + + if CDS_Sub.Locate('C_Color', null, []) = True then + raise Exception.Create('ɫΪգ'); + + if CDS_Sub.Locate('C_Color', '', []) = True then + raise Exception.Create('ɫΪգ'); if CDS_Sub.Locate('Qty', null, []) = True then raise Exception.Create('Ϊգ'); @@ -183,7 +200,7 @@ begin FieldByName('StkCoName').Value := 'ֿ'; FieldByName('FromCoNo').Value := 'G0001'; FieldByName('FromCoName').Value := 'ȾӦ'; - FieldByName('QtyUnit').Value := 'Kg'; +// FieldByName('QtyUnit').Value := 'Kg'; FieldByName('C_Degree').AsString := Trim(''); FieldByName('IOType').Value := 'ɹ'; Post; @@ -264,6 +281,10 @@ begin FieldByName('FromTPNID').Value := CDS_Sub.fieldbyname('FromTPNID').Value; + FieldByName('TMMID').Value := CDS_Sub.fieldbyname('TMMID').Value; + FieldByName('TMSID').Value := CDS_Sub.fieldbyname('TMSID').Value; +// FieldByName('TMMNO').Value := CDS_Sub.fieldbyname('TMMNO').Value; + FieldByName('STKName').Value := FSTKName; FieldByName('IOFlag').Value := ''; FieldByName('IOQtyFlag').Value := 1; @@ -385,6 +406,15 @@ begin Close; sql.Clear; sql.add(' SELECT distinct B.C_Color,B.C_ColorNo FROM BS_Cloth_Info_Sub B '); + // showmessage(sql.text); + Open; + end; + with ADO_DW do + begin + Close; + sql.Clear; + sql.add(' SELECT distinct CICUNIT FROM Bs_Cloth_Info_Coefficient B '); + // showmessage(sql.text); Open; end; @@ -556,6 +586,57 @@ begin end; end; +procedure TfrmTradeClothTotalInInput.ToolButton4Click(Sender: TObject); +begin + try + frmTradeMarketListSEL := TfrmTradeMarketListSEL.Create(Application); + with frmTradeMarketListSEL do + begin + + if ShowModal = 1 then + begin + with Self.CDS_Sub do + begin + Append; + + FieldByName('IOTime').Value := Trim(FormatDateTime('yyyy-MM-dd', Now)); + FieldByName('StkCoNo').Value := 'ֿ'; + FieldByName('StkCoName').Value := 'ֿ'; + FieldByName('FromCoNo').Value := 'G0001'; + FieldByName('FromCoName').Value := 'ȾӦ'; + FieldByName('C_Degree').AsString := Trim(''); + +// FBCIOID := frmGeMeiOutputSel.CDS_1.FieldByName('BCIOID').AsString; + FieldByName('BCIONO').AsString := frmTradeMarketListSEL.CDS_1.FieldByName('tmmno').AsString; +// FieldByName('FromCoName').AsString := frmGeMeiOutputSel.CDS_1.FieldByName('FromCoName').AsString; + FieldByName('C_Code').AsString := frmTradeMarketListSEL.CDS_1.FieldByName('C_Code').AsString; + FieldByName('C_Name').AsString := frmTradeMarketListSEL.CDS_1.FieldByName('C_Name').AsString; + + FieldByName('C_Spec').AsString := frmTradeMarketListSEL.CDS_1.FieldByName('C_Spec').AsString; + FieldByName('C_Width').AsString := frmTradeMarketListSEL.CDS_1.FieldByName('C_Width').AsString; + FieldByName('C_GramWeight').AsString := frmTradeMarketListSEL.CDS_1.FieldByName('C_GramWeight').AsString; +// FieldByName('FtyPCId').AsString := frmGeMeiOutputSel.CDS_1.FieldByName('FtyPCId').AsString; + FieldByName('Piece').AsString := '0'; + FieldByName('Qty').AsString := '0'; + FieldByName('QtyUnit').AsString := frmTradeMarketListSEL.CDS_1.FieldByName('OrderUnit').AsString; + + FieldByName('C_Color').AsString := frmTradeMarketListSEL.CDS_1.FieldByName('C_Color').AsString; + FieldByName('C_ColorNO').AsString := frmTradeMarketListSEL.CDS_1.FieldByName('C_ColorNO').AsString; + + FieldByName('tmmid').AsString := frmTradeMarketListSEL.CDS_1.FieldByName('tmmid').AsString; + FieldByName('tmsid').AsString := frmTradeMarketListSEL.CDS_1.FieldByName('tmsid').AsString; +// FieldByName('TMMNO').AsString := frmTradeMarketListSEL.CDS_1.FieldByName('TMMNO').AsString; + + Post; + + end; + end; + end; + finally + frmTradeMarketListSEL.Free; + end; +end; + procedure TfrmTradeClothTotalInInput.Tv1Column14PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin try @@ -852,6 +933,39 @@ begin end; end; +procedure TfrmTradeClothTotalInInput.v1QtyUnitPropertiesEditValueChanged(Sender: TObject); +var + mvalue, FFieldName: string; +begin +// if Trim(CDS_Sub.FieldByName('C_Name').AsString) = '' then +// begin +// Application.MessageBox('Ʒ!', 'ʾ', 0); +// //ModalResult:=1; +// with CDS_Sub do +// begin +// Edit; +// FieldByName('QtyUnit').AsString := ''; +// Post; +// end; +// Exit; +// end; +// +// FFieldName := Trim(Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName); +// mvalue := TcxTextEdit(Sender).EditingText; +// +// with CDS_Sub do +// begin +// Edit; +// FieldByName(FFieldName).Value := Trim(mvalue); +// Post; +// ADO_dw.Locate('CICUnit', mvalue, []); +// Edit; +// FieldByName('QtyUnit').Value := ADO_YS.FieldByName('CICUnit').Value; +//// FieldByName('C_Code').Value := ADO_pm.FieldByName('C_Code').Value; +// Post; +// end; +end; + procedure TfrmTradeClothTotalInInput.v1SPNamePropertiesEditValueChanged(Sender: TObject); var mvalue, FFieldName: string; @@ -879,6 +993,26 @@ begin SQL.ADD(' order by B.C_ColorNo'); Open; end; + with ADO_DW do + begin + Close; + sql.Clear; + sql.Add(' SELECT * FROM V_QTYUNIT A '); + sql.Add(' where A.C_Code= ' + QuotedStr(CDS_Sub.FieldByName('C_Code').AsString)); + + Open; + end; + if ADO_DW.RecordCount = 1 then + begin + with CDS_Sub do + begin + Edit; + FieldByName('qtyunit').Value := Trim(ADO_DW.FieldByName('CICUnit').Value); + Post; + + end; + end; + end; end. diff --git a/T02贸易汇总仓库/U_TradeClothTotalInList.dfm b/T02贸易汇总仓库/U_TradeClothTotalInList.dfm index 1b88908..b8a319d 100644 --- a/T02贸易汇总仓库/U_TradeClothTotalInList.dfm +++ b/T02贸易汇总仓库/U_TradeClothTotalInList.dfm @@ -138,7 +138,7 @@ inherited frmTradeClothTotalInList: TfrmTradeClothTotalInList Caption = #21697#21517 end object Label4: TLabel - Left = 636 + Left = 674 Top = 47 Width = 64 Height = 21 @@ -156,7 +156,7 @@ inherited frmTradeClothTotalInList: TfrmTradeClothTotalInList Top = 84 Width = 32 Height = 21 - Caption = #35268#26684 + Caption = #33394#21495 end object Label12: TLabel Left = 18 @@ -165,37 +165,30 @@ inherited frmTradeClothTotalInList: TfrmTradeClothTotalInList Height = 21 Caption = #20837#24211#31867#22411 end - object Label10: TLabel - Left = 445 - Top = 84 - Width = 32 - Height = 21 - Caption = #25209#21495 - end object Label6: TLabel - Left = 858 + Left = 896 Top = 47 Width = 64 Height = 21 Caption = #35745#21010#21333#21495 end object Label7: TLabel - Left = 446 + Left = 484 Top = 47 Width = 32 Height = 21 Caption = #32568#21495 end object Label9: TLabel - Left = 635 - Top = 84 + Left = 452 + Top = 82 Width = 64 Height = 21 Caption = #23384#25918#20179#20301 end object Label11: TLabel - Left = 857 - Top = 84 + Left = 674 + Top = 82 Width = 64 Height = 21 Caption = #20837#24211#26465#30721 @@ -211,7 +204,7 @@ inherited frmTradeClothTotalInList: TfrmTradeClothTotalInList end object FromCoName: TcxTextEdit Tag = 2 - Left = 704 + Left = 742 Top = 43 Properties.OnChange = BCIOIDPropertiesChange TabOrder = 1 @@ -227,7 +220,7 @@ inherited frmTradeClothTotalInList: TfrmTradeClothTotalInList OnKeyPress = BCIONoKeyPress Width = 150 end - object C_spec: TcxTextEdit + object C_ColorNo: TcxTextEdit Tag = 2 Left = 289 Top = 80 @@ -236,21 +229,12 @@ inherited frmTradeClothTotalInList: TfrmTradeClothTotalInList OnKeyPress = BCIONoKeyPress Width = 150 end - object BatchNo: TcxTextEdit - Tag = 2 - Left = 481 - Top = 80 - Properties.OnChange = BCIOIDPropertiesChange - TabOrder = 4 - OnKeyPress = BCIONoKeyPress - Width = 150 - end object FromOrdNo: TcxTextEdit Tag = 2 - Left = 926 + Left = 964 Top = 43 Properties.OnChange = BCIOIDPropertiesChange - TabOrder = 5 + TabOrder = 4 OnKeyPress = BCIONoKeyPress Width = 150 end @@ -263,7 +247,7 @@ inherited frmTradeClothTotalInList: TfrmTradeClothTotalInList Color = clWhite ParentBackground = False ParentColor = False - TabOrder = 6 + TabOrder = 5 ExplicitLeft = 2 ExplicitTop = 2 ExplicitWidth = 1230 @@ -294,33 +278,33 @@ inherited frmTradeClothTotalInList: TfrmTradeClothTotalInList Left = 86 Top = 80 Properties.OnChange = IOTypePropertiesChange - TabOrder = 7 + TabOrder = 6 Width = 149 end object FtyPCId: TcxTextEdit Tag = 2 - Left = 482 + Left = 520 Top = 43 Properties.OnChange = BCIOIDPropertiesChange - TabOrder = 8 + TabOrder = 7 OnKeyPress = BCIONoKeyPress Width = 150 end object StkCoName: TcxTextEdit Tag = 2 - Left = 703 - Top = 80 + Left = 520 + Top = 78 Properties.OnChange = BCIOIDPropertiesChange - TabOrder = 9 + TabOrder = 8 OnKeyPress = BCIONoKeyPress Width = 150 end object BCIOID: TcxTextEdit Tag = 2 - Left = 925 - Top = 80 + Left = 742 + Top = 78 Properties.OnChange = BCIOIDPropertiesChange - TabOrder = 10 + TabOrder = 9 OnKeyPress = BCIONoKeyPress Width = 150 end @@ -340,16 +324,16 @@ inherited frmTradeClothTotalInList: TfrmTradeClothTotalInList end object cxPageControl1: TcxPageControl [4] Left = 0 - Top = 190 + Top = 186 Width = 1234 - Height = 476 + Height = 480 Align = alClient TabOrder = 4 Properties.ActivePage = cxTabSheet1 Properties.CustomButtons.Buttons = <> Properties.Style = 5 OnChange = cxPageControl1Change - ClientRectBottom = 476 + ClientRectBottom = 480 ClientRectRight = 1234 ClientRectTop = 32 object cxTabSheet1: TcxTabSheet @@ -359,7 +343,7 @@ inherited frmTradeClothTotalInList: TfrmTradeClothTotalInList Left = 0 Top = 0 Width = 1234 - Height = 444 + Height = 448 Align = alClient PopupMenu = PopupMenu1 TabOrder = 0 @@ -507,14 +491,11 @@ inherited frmTradeClothTotalInList: TfrmTradeClothTotalInList object cxTabSheet2: TcxTabSheet Caption = #20135#21697#26126#32454 ImageIndex = 1 - ExplicitTop = 0 - ExplicitWidth = 0 - ExplicitHeight = 0 object cxGrid1: TcxGrid Left = 0 Top = 0 Width = 1234 - Height = 444 + Height = 448 Align = alClient PopupMenu = PopupMenu1 TabOrder = 0 @@ -1016,7 +997,7 @@ inherited frmTradeClothTotalInList: TfrmTradeClothTotalInList Left = 0 Top = 149 Width = 1234 - Height = 41 + Height = 37 Align = alTop AutoSize = True BevelInner = bvLowered @@ -1024,10 +1005,10 @@ inherited frmTradeClothTotalInList: TfrmTradeClothTotalInList TabOrder = 5 DesignSize = ( 1230 - 37) + 33) object Label31: TLabel Left = 14 - Top = 9 + Top = 7 Width = 96 Height = 21 Alignment = taCenter @@ -1038,7 +1019,7 @@ inherited frmTradeClothTotalInList: TfrmTradeClothTotalInList end object LBCPAP: TLabel Left = 478 - Top = 8 + Top = 7 Width = 100 Height = 20 Alignment = taCenter @@ -1046,27 +1027,24 @@ inherited frmTradeClothTotalInList: TfrmTradeClothTotalInList AutoSize = False Caption = #24403#21069#39029'/'#24635#39029#25968 Layout = tlCenter - ExplicitTop = 7 end object BTLP: TButton Left = 391 - Top = 6 + Top = 4 Width = 78 Height = 27 Anchors = [akLeft] Caption = #19978#19968#39029 TabOrder = 0 - ExplicitTop = 5 end object BTNP: TButton Left = 585 - Top = 5 + Top = 3 Width = 78 Height = 28 Anchors = [akLeft] Caption = #19979#19968#39029 TabOrder = 1 - ExplicitTop = 4 end object TCBNOR: TcxComboBox Tag = 2 @@ -1132,7 +1110,7 @@ inherited frmTradeClothTotalInList: TfrmTradeClothTotalInList end object PopupMenu1: TPopupMenu Left = 633 - Top = 385 + Top = 386 object N1: TMenuItem Caption = #20840#36873 OnClick = N1Click @@ -1141,6 +1119,10 @@ inherited frmTradeClothTotalInList: TfrmTradeClothTotalInList Caption = #20840#24323 OnClick = N2Click end + object N3: TMenuItem + Caption = #22797#21046 + OnClick = N3Click + end end object GPM_2: TcxGridPopupMenu Grid = cxGrid2 diff --git a/T02贸易汇总仓库/U_TradeClothTotalInList.pas b/T02贸易汇总仓库/U_TradeClothTotalInList.pas index 9866d69..41f9cb7 100644 --- a/T02贸易汇总仓库/U_TradeClothTotalInList.pas +++ b/T02贸易汇总仓库/U_TradeClothTotalInList.pas @@ -14,7 +14,7 @@ uses cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, dxDateRanges, dxBarBuiltInMenu, U_BaseList, dxScrollbarAnnotations, FrameDateSel, cxContainer, cxMaskEdit, cxProgressBar, dxSkinsCore, dxSkinsDefaultPainters, - System.Math; + System.Math, Vcl.Clipbrd; type TfrmTradeClothTotalInList = class(TfrmBaseList) @@ -44,9 +44,7 @@ type C_name: TcxTextEdit; FromCoName: TcxTextEdit; BCIONo: TcxTextEdit; - C_spec: TcxTextEdit; - Label10: TLabel; - BatchNo: TcxTextEdit; + C_ColorNo: TcxTextEdit; ToolButton1: TToolButton; ToolButton2: TToolButton; ToolButton3: TToolButton; @@ -137,6 +135,7 @@ type BTLP: TButton; BTNP: TButton; TCBNOR: TcxComboBox; + N3: TMenuItem; procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure FormCreate(Sender: TObject); procedure TBRafreshClick(Sender: TObject); @@ -168,6 +167,7 @@ type procedure btn1Click(Sender: TObject); procedure TV2DblClick(Sender: TObject); procedure cxPageControl1Change(Sender: TObject); + procedure N3Click(Sender: TObject); private CurrentPage, RecordsNumber: Integer; canshu1, FSTKName, canshu3, canshu4: string; @@ -320,6 +320,7 @@ begin SqlStr := SqlStr + ' where 1=1 ' + (WSql); SqlStr := SqlStr + ' and IOFlag='''' '; SqlStr := SqlStr + ' group by C_Code,C_Name,C_Color,C_ColorNo,C_Degree,C_Pattern,QtyUnit'; + InitCDSData(ADO_2, CDS_2, Tv2, SqlStr, SGetFilters(Panel1, 1, 2), 'C_Code'); end; @@ -513,6 +514,21 @@ begin SelOKNo(CDS_1, False); end; +procedure TfrmTradeClothTotalInList.N3Click(Sender: TObject); +begin + if cxPageControl1.ActivePageIndex = 0 then + begin + Clipboard.SetTextBuf(PChar(Trim(CDS_2.fieldbyname(TV2.Controller.FocusedColumn.DataBinding.FilterFieldName).AsString))); + + end + else + begin + Clipboard.SetTextBuf(PChar(Trim(CDS_1.fieldbyname(TV1.Controller.FocusedColumn.DataBinding.FilterFieldName).AsString))); + + end; + +end; + procedure TfrmTradeClothTotalInList.TBDelClick(Sender: TObject); var MBCIOID, MBCIONO: string; diff --git a/T02贸易汇总仓库/U_TradeClothTotalOutList.dfm b/T02贸易汇总仓库/U_TradeClothTotalOutList.dfm index 4a1f29c..85bee41 100644 --- a/T02贸易汇总仓库/U_TradeClothTotalOutList.dfm +++ b/T02贸易汇总仓库/U_TradeClothTotalOutList.dfm @@ -1186,7 +1186,7 @@ inherited frmTradeClothTotalOutList: TfrmTradeClothTotalOutList end object PopupMenu1: TPopupMenu Left = 687 - Top = 292 + Top = 293 object N1: TMenuItem Caption = #20840#36873 OnClick = N1Click diff --git a/T02贸易汇总仓库/U_TradeClothTotalStkList.dfm b/T02贸易汇总仓库/U_TradeClothTotalStkList.dfm index d5bed39..b1a52be 100644 --- a/T02贸易汇总仓库/U_TradeClothTotalStkList.dfm +++ b/T02贸易汇总仓库/U_TradeClothTotalStkList.dfm @@ -88,6 +88,7 @@ inherited frmTradeClothTotalStkList: TfrmTradeClothTotalStkList ParentBackground = False ParentColor = True TabOrder = 3 + ExplicitTop = 32 object Label3: TLabel Left = 28 Top = 18 @@ -123,6 +124,13 @@ inherited frmTradeClothTotalStkList: TfrmTradeClothTotalStkList Height = 21 Caption = #24211#20301 end + object Label5: TLabel + Left = 1017 + Top = 17 + Width = 32 + Height = 21 + Caption = #32568#21495 + end object C_name: TcxTextEdit Tag = 2 Left = 64 @@ -168,6 +176,15 @@ inherited frmTradeClothTotalStkList: TfrmTradeClothTotalStkList OnKeyPress = FromCoNameKeyPress Width = 150 end + object ftypcid: TcxTextEdit + Tag = 2 + Left = 1053 + Top = 13 + Properties.OnChange = FromCoNamePropertiesChange + TabOrder = 5 + OnKeyPress = FromCoNameKeyPress + Width = 150 + end end inherited cxProgressBar2: TcxProgressBar Left = 461 @@ -904,8 +921,8 @@ inherited frmTradeClothTotalStkList: TfrmTradeClothTotalStkList object GPM_1: TcxGridPopupMenu Grid = cxGrid1 PopupMenus = <> - Left = 770 - Top = 243 + Left = 771 + Top = 244 end object CDS_1: TClientDataSet Aggregates = <> @@ -915,7 +932,7 @@ inherited frmTradeClothTotalStkList: TfrmTradeClothTotalStkList end object PopupMenu1: TPopupMenu Left = 688 - Top = 305 + Top = 306 object N1: TMenuItem Caption = #20840#36873 OnClick = N1Click @@ -924,6 +941,10 @@ inherited frmTradeClothTotalStkList: TfrmTradeClothTotalStkList Caption = #20840#24323 OnClick = N2Click end + object N3: TMenuItem + Caption = #22797#21046 + OnClick = N3Click + end end object GPM_2: TcxGridPopupMenu Grid = cxGrid2 diff --git a/T02贸易汇总仓库/U_TradeClothTotalStkList.pas b/T02贸易汇总仓库/U_TradeClothTotalStkList.pas index 827d2fa..881eab8 100644 --- a/T02贸易汇总仓库/U_TradeClothTotalStkList.pas +++ b/T02贸易汇总仓库/U_TradeClothTotalStkList.pas @@ -14,7 +14,7 @@ uses cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, dxDateRanges, dxBarBuiltInMenu, U_BaseList, dxScrollbarAnnotations, cxContainer, cxProgressBar, cxButtons, cxMaskEdit, dxSkinsCore, dxSkinsDefaultPainters, - cxPC, System.Math; + cxPC, System.Math, Clipbrd; type TfrmTradeClothTotalStkList = class(TfrmBaseList) @@ -116,6 +116,9 @@ type BTLP: TButton; BTNP: TButton; TCBNOR: TcxComboBox; + N3: TMenuItem; + Label5: TLabel; + ftypcid: TcxTextEdit; procedure FormDestroy(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure TBRafreshClick(Sender: TObject); @@ -133,6 +136,7 @@ type procedure ToolButton3Click(Sender: TObject); procedure TV2DblClick(Sender: TObject); procedure cxPageControl1Change(Sender: TObject); + procedure N3Click(Sender: TObject); private CurrentPage, RecordsNumber: Integer; canshu1, FSTKName, canshu3, canshu4: string; @@ -164,9 +168,18 @@ end; procedure TfrmTradeClothTotalStkList.cxPageControl1Change(Sender: TObject); begin + if cxPageControl1.ActivePageIndex = 1 then + begin + ftypcid.tag := 2; + end + else + begin + ftypcid.tag := 0; + end; case cxPageControl1.ActivePageIndex of 1: begin + InitGrid1(); end; end; @@ -258,7 +271,7 @@ begin SqlStr := SqlStr + ' @pageIndex=' + inttostr(CurrentPage); SqlStr := SqlStr + ' ,@pageSize=' + inttostr(RecordsNumber); SqlStr := SqlStr + ' ,@criteria= ' + quotedstr(WSql); -// showmessage(SqlStr); + InitCDSData(ADO_1, CDS_1, Tv1, SqlStr, SGetFilters(Panel1, 1, 2), 'C_Code'); LBCPAP.Caption := inttostr(CurrentPage) + '/' + inttostr(ceil(CDS_1.FieldByName('TotalCount').AsInteger / RecordsNumber)); end; @@ -295,10 +308,14 @@ begin SqlStr := SqlStr + ' from BS_Cloth_IO A '; SqlStr := SqlStr + ' where A.IOFlag='''' and (isnull(StkQty,0)>0 or isnull(StkPiece,0)>0) '; SqlStr := SqlStr + ' and isnull(stkName,'''')=''' + Trim(FstkName) + ''''; - + if ftypcid.Text <> '' then + begin + SqlStr := SqlStr + ' and isnull(ftypcid,'''')=''' + Trim(ftypcid.Text) + ''''; + end; if Trim(canshu4) <> '' then SqlStr := SqlStr + ' and isnull(StkCoName,'''')=''' + Trim(canshu4) + ''''; WSqlStr := CommonFiltersByTv(Tv2, '{"RemovalNull":true,"Fields":"C_Code|C_Name|C_Color|C_ColorNo|C_Pattern|C_Degree|QtyUnit"}'); + if TRIM(WSqlStr) <> '' then SqlStr := SqlStr + ' and ' + WSqlStr; SqlStr := SqlStr + ' order by IOTime desc'; @@ -375,6 +392,12 @@ begin SelOKNo(CDS_1, False); end; +procedure TfrmTradeClothTotalStkList.N3Click(Sender: TObject); +begin + Clipboard.SetTextBuf(PChar(Trim(CDS_1.fieldbyname(TV1.Controller.FocusedColumn.DataBinding.FilterFieldName).AsString))); + +end; + procedure TfrmTradeClothTotalStkList.ToolButton2Click(Sender: TObject); begin WriteCxGrid(trim(Self.Caption) + 'Tv1', Tv1, 'ó׻ֿܲ'); diff --git a/T02贸易汇总仓库/U_TradeMarketListSEL.dfm b/T02贸易汇总仓库/U_TradeMarketListSEL.dfm new file mode 100644 index 0000000..f7e688c --- /dev/null +++ b/T02贸易汇总仓库/U_TradeMarketListSEL.dfm @@ -0,0 +1,10512 @@ +inherited frmTradeMarketListSEL: TfrmTradeMarketListSEL + Left = 372 + Top = 106 + Caption = #26684#32654#37197#36135#21333 + ClientHeight = 717 + ClientWidth = 1302 + Font.Charset = GB2312_CHARSET + Font.Height = -16 + Font.Name = #24494#36719#38597#40657 + Position = poScreenCenter + OnClose = FormClose + ExplicitWidth = 1318 + ExplicitHeight = 756 + PixelsPerInch = 96 + TextHeight = 21 + object ToolBar1: TToolBar [0] + Tag = 1 + Left = 0 + Top = 0 + Width = 1302 + Height = 30 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 99 + Caption = 'ToolBar1' + Images = cxImageList_bar + List = True + ShowCaptions = True + TabOrder = 0 + object ToolButton1: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #36873#25321 + ImageIndex = 12 + OnClick = ToolButton1Click + end + object ToolButton2: TToolButton + Left = 71 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 8 + OnClick = ToolButton2Click + end + object TBSave: TToolButton + Left = 142 + Top = 0 + AutoSize = True + Caption = #20445#23384#26684#24335 + ImageIndex = 16 + OnClick = TBSaveClick + end + object TBClose: TToolButton + Left = 245 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 7 + OnClick = TBCloseClick + end + end + object cxGrid1: TcxGrid [1] + Left = 0 + Top = 121 + Width = 1302 + Height = 596 + Align = alClient + TabOrder = 1 + ExplicitTop = 36 + ExplicitHeight = 687 + object Tv1: TcxGridDBTableView + OnDblClick = TV1DblClick + Navigator.Buttons.CustomButtons = <> + ScrollbarAnnotations.CustomAnnotations = <> + DataController.DataSource = DS_1 + DataController.Filter.AutoDataSetFilter = True + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.CellHints = True + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.IndicatorWidth = 30 + object v1Column16: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + HeaderAlignmentHorz = taCenter + Width = 77 + end + object Tv1Column7: TcxGridDBColumn + Caption = #21333#25454#32534#21495 + DataBinding.FieldName = 'TMMNo' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 77 + end + object v1OrdDate: TcxGridDBColumn + Caption = #21046#21333#26085#26399 + DataBinding.FieldName = 'TMMDate' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object Tv1Column4: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustName' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object Tv1Column8: TcxGridDBColumn + Caption = #19994#21153#21592 + DataBinding.FieldName = 'Saleser' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 70 + end + object Tv1Column9: TcxGridDBColumn + Caption = #33394#24067#21517#31216 + DataBinding.FieldName = 'C_Name' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object Tv1Column17: TcxGridDBColumn + Caption = #33394#21495 + DataBinding.FieldName = 'C_ColorNo' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 58 + end + object Tv1Column12: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'C_Color' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object Tv1Column11: TcxGridDBColumn + Caption = #25253#21333#25968#37327 + DataBinding.FieldName = 'OrderQty' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 104 + end + object Tv1Column13: TcxGridDBColumn + Caption = #25253#21333#21333#20301 + DataBinding.FieldName = 'OrderUnit' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 91 + end + object Tv1Column2: TcxGridDBColumn + Caption = #35745#20215#21333#20301 + DataBinding.FieldName = 'TMSUnit' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 70 + end + object Tv1Column23: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'Price' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 70 + end + object Tv1Column24: TcxGridDBColumn + Caption = #37329#39069 + DataBinding.FieldName = 'Amount' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 70 + end + object v1DeliveryDate: TcxGridDBColumn + Caption = #20132#36135#26085#26399 + DataBinding.FieldName = 'DlyDate' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object Tv1Column20: TcxGridDBColumn + Caption = #32039#24613#31243#24230 + DataBinding.FieldName = 'Urgent' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 88 + end + object Tv1Column6: TcxGridDBColumn + Caption = #21046#21333#20154 + DataBinding.FieldName = 'FILLER' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object Tv1Column1: TcxGridDBColumn + Caption = #35746#21333#22791#27880 + DataBinding.FieldName = 'OrdNote' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object Tv1Column16: TcxGridDBColumn + Caption = #26126#32454#22791#27880 + DataBinding.FieldName = 'OrdSNote' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object Tv1Column5: TcxGridDBColumn + Caption = #32852#31995#26041#24335 + DataBinding.FieldName = 'CONTACT' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object Tv1Column3: TcxGridDBColumn + Caption = #21457#36135#22320#22336 + DataBinding.FieldName = 'ShippingAddress' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 117 + end + object Tv1Column27: TcxGridDBColumn + Caption = #21306#22495#20195#21495 + DataBinding.FieldName = 'MXAREA' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 68 + end + object Tv1Column21: TcxGridDBColumn + Caption = #22791#36135#29366#24577 + DataBinding.FieldName = 'StkStatus' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 92 + end + object Tv1Column26: TcxGridDBColumn + Caption = #36710#21495 + DataBinding.FieldName = 'carPlate' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 77 + end + object Tv1Column25: TcxGridDBColumn + Caption = #35746#21333#31867#22411 + DataBinding.FieldName = 'OrdType' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 60 + end + object Tv1Column10: TcxGridDBColumn + Caption = #27004#23618 + DataBinding.FieldName = 'StkPosition' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 95 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object Panel1: TPanel [2] + Left = 0 + Top = 30 + Width = 1302 + Height = 91 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + ParentBackground = False + TabOrder = 2 + ExplicitLeft = -238 + ExplicitWidth = 1540 + object Label3: TLabel + Left = 24 + Top = 51 + Width = 64 + Height = 21 + Caption = #21333#25454#32534#21495 + end + object Label1: TLabel + Left = 408 + Top = 51 + Width = 32 + Height = 21 + Caption = #23458#25143 + end + object Label2: TLabel + Left = 216 + Top = 51 + Width = 64 + Height = 21 + Caption = #33394#24067#21517#31216 + end + object Label4: TLabel + Left = 568 + Top = 51 + Width = 48 + Height = 21 + Caption = #21512#21516#21495 + end + object TMMNo: TcxTextEdit + Tag = 2 + Left = 92 + Top = 47 + TabOrder = 0 + Width = 120 + end + object CustName: TcxTextEdit + Tag = 2 + Left = 444 + Top = 47 + TabOrder = 1 + Width = 120 + end + object C_Name: TcxTextEdit + Tag = 2 + Left = 284 + Top = 47 + TabOrder = 2 + Width = 120 + end + object ConNo: TcxTextEdit + Tag = 2 + Left = 620 + Top = 47 + TabOrder = 3 + Width = 120 + end + inline frmFrameDateSel1: TfrmFrameDateSel + Left = 2 + Top = 2 + Width = 1298 + Height = 37 + Align = alTop + Color = clWhite + ParentBackground = False + ParentColor = False + TabOrder = 4 + ExplicitLeft = 2 + ExplicitTop = 2 + ExplicitWidth = 1536 + ExplicitHeight = 37 + inherited lbl2: TLabel + Width = 16 + Height = 21 + ExplicitWidth = 16 + ExplicitHeight = 21 + end + end + end + inherited ADOQueryBaseCmd: TADOQuery + Connection = ADOConnection1 + Left = 359 + Top = 218 + end + inherited ADOQueryBaseTemp: TADOQuery + Connection = ADOConnection1 + Left = 188 + Top = 212 + end + inherited ImageList_new32: TImageList + Left = 344 + Top = 352 + Bitmap = { + 494C010100000C00040020002000FFFFFFFFFF00FFFFFFFFFFFFFFFF424D3600 + 0000000000003600000028000000800000002000000001002000000000000040 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000424D3E000000000000003E000000 + 2800000080000000200000000100010000000000000200000000000000000000 + 000000000000000000000000FFFFFF0000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000} + end + object ADOQueryMain: TADOQuery + Connection = ADOConnection1 + LockType = ltReadOnly + Parameters = <> + Left = 112 + Top = 352 + end + object ADOQueryTemp: TADOQuery + Connection = ADOConnection1 + LockType = ltReadOnly + Parameters = <> + Left = 112 + Top = 288 + end + object ADOQueryCmd: TADOQuery + Connection = ADOConnection1 + Parameters = <> + Left = 112 + Top = 416 + end + object DS_1: TDataSource + DataSet = CDS_1 + Left = 584 + Top = 272 + end + object CDS_1: TClientDataSet + Aggregates = <> + Params = <> + Left = 496 + Top = 271 + end + object ADOConnection1: TADOConnection + LoginPrompt = False + Left = 624 + Top = 168 + end + object GPM_1: TcxGridPopupMenu + PopupMenus = <> + Left = 416 + Top = 272 + end + object ImageList1: TImageList + DrawingStyle = dsTransparent + Height = 32 + Width = 32 + Left = 448 + Top = 352 + Bitmap = { + 494C010119002400040020002000FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600 + 000000000000360000002800000080000000E0000000010020000000000000C0 + 0100000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000EFE2C400EDD19300FAEFD9000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000F1D69B00EAA30000F0C76B00F6EEDC00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000EAB02D00E9A20000E7A30900EFC56800FAEF + D600000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000F6DCA200EBA30000E9A20000E9A20000E9A3 + 0500E5BC5F00F8ECD40000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000E3AA2900EAA30000E9A20000E9A2 + 0000EBA30000E8A20600EFC25A00F6EBD4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000DCC89F00EFA70000E9A20000E9A2 + 0000E9A20000E9A20000E9A20000E49F0300E9BD5800F9EBCF00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000E9AD2700E9A20000E9A2 + 0000E9A20000E9A20000E9A20000EAA20000EAA30000E7A10100EDBD4F00F3E6 + C800000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000F3D79A00E9A20000E9A2 + 0000E9A20000E9A20000E9A20000E9A20000E9A20000E9A20000E9A20000E8A0 + 0000EDBC4E00F7E7C30000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000ECAF2400E9A2 + 0000E9A20000E9A20000E9A20000E9A20000E9A20000E9A20000E9A20000E9A2 + 0000E9A20000E9A20000E7B44300F6E3B7000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000EDD6A000EAA3 + 0000E8A61100E8A61100E8A61100E8A61100E8A61100E8A61100E8A61100E8A6 + 1100E8A61100E8A61100E8A61100E8A50D00EAB33300F0DEB500000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000E6CC9400F5C6 + 5D00000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000F5DA9D00EAAF2900EFB53100EDDCB600000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000EAAF2900EBE5 + D700000000000000000000000000000000000000000000000000000000000000 + 0000F2DCAC00E8B54300E5B54500F5E0B3000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000F3D38D00E9BA57000000 + 0000000000000000000000000000000000000000000000000000F1DAA300EDB5 + 3600EDB84400F8E3B70000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000E9AF2A00F8EDD4000000 + 000000000000000000000000000000000000F5DBA100E7B13400E8B74500F0DF + BC00000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000E5CA9100F1C25A00000000000000 + 00000000000000000000E9CF9700E9B13000EABA4E00F8E7C300000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000E1AB2B00FAEDD200000000000000 + 0000F6D89400EBB02E00F1BE4E00F5E7C9000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000F9DA9600D4AF5D0000000000F3D38F00E7AE + 2D00E3B75100F6E8CA0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000EBB02B00E0B85E00E8B23600EEC15A00F9EB + CC00000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000F3D79B00E9A20000F2C66300F4EBD300000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000F3E4C500ECD19400F9EFD9000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000EEC9 + 7400EFC46200EFC56500EFC56500EFC56500EFC56500EFC56500EFC56500EFC4 + 6300F0C86F000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000E2B86700DFAB460000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000F6E8CC00F2CE8200EEBE5200ECB63A00ECB53900EDBD5100ECCA7F00F8E9 + C900000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000F2D69A00F9EDD40000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000F0D28A00ECBA + 4C00F5DA9F00F4D99A00F5DDA600F5DDA600F5DDA600F5DDA600F4D99B00F5DA + 9F00EEBF5400F0CD7E0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000E5B9 + 6300D9900000D8900000DCA33300000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000F6EBD200ECBB + 4C00EAA20000EAA30000E9A20000E9A20000E9A20000E9A20000EBA30000E9A2 + 0000EDBA4700F5E8CD0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000EED7A500E8A30600F3D89C00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000F0C97300F4D7 + 98000000000000000000F2CD7D00F2CE7F00F2CE7F00F2CD7B00000000000000 + 0000F5DDA600F1C7690000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000E5B86200D78F + 0000DDAD4F00DCAA4500D8900000DDA436000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000F8DEA200E8A50C00EBA3 + 0000E5A71900EDCA7A00F5E3BD00F9F0DC00F8EFDC00F7E5BF00F1CD7D00E8AA + 1C00EAA30000E6A30800F1D79C00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000E9AB1D00EAA30000EAB84B000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000EFC76C00F4D7 + 98000000000000000000F8EACB00F8EACC00F8EACC00F8EACB00000000000000 + 0000F5DDA600F0C4620000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000E4B86100D88F0000E3B6 + 5D000000000000000000E1AF4F00D78F0000DEA3330000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D6C6A400F2A90000EDA50000EEC7 + 71000000000000000000F3D89D00EFC46400EDC36400F4D89B00000000000000 + 0000EECB7900EDA50000ECA40000E7D39C000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000E7C27000EBA40000EAA30000E4A61400EED6A300000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000EAD1A700EBB22D00EBB63D00ECB74100E8A61000F5DB + A100000000000000000000000000000000000000000000000000000000000000 + 0000F6DFAD00E8A50E00ECB74100ECB63D00E7AF2D00F2D89D00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000E5B86200DB920000E5BA65000000 + 0000000000000000000000000000E0AC4700D78F0000DEA93F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000F8ECD600ECA80C00EFA70000DFC994000000 + 0000F3CB7100E9A30200E7A40C00E9B23400ECB43600E7A50E00E7A00000EDC5 + 6A0000000000E9D29D00E7A00000EBA40800F7E9CF0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000F6E8CA00EBA30000E9A20000EAA20000EBA40000EEBE53000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000F3D28E00EDB12A00F8EFDE000000000000000000F0C87100F4D7 + 9800000000000000000000000000000000000000000000000000000000000000 + 0000F5DDA500F0C66800000000000000000000000000E8AF2C00F1CE85000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000E6BB6300DC930000D9B46900E5DCCA00EAC7 + 8100000000000000000000000000E2B25500D88F0000E2B65E00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000EBB84C00EEA60000E1BB700000000000CEA6 + 4300ECA60700EED59D0000000000000000000000000000000000F4DBA300EBA6 + 0B00EAB33B0000000000E8CA7B00EDA50000EBB5420000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000E5AE3400EAA30000E9A20000E9A20000E9A20000E8A7 + 1200F4DBA2000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000EFC05800EDBB4A00000000000000000000000000F0C97300F4D6 + 97000000000000000000F0C76900F0C76B00F0C76B00F0C66700FAF1DE000000 + 0000F5DDA500F0C76900000000000000000000000000EEC15B00EFC35E000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000DAB26F00DE940000D8AA4A00E3DBCE00C2881600DB92 + 0000E8C37C0000000000E5B96600D78F0000E3B45B0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000F5E9D200E7A20100E9A9190000000000E6C77500ECA4 + 0400F4E8D000000000000000000000000000000000000000000000000000F6EC + D700E29F0800ECC6690000000000E2A61F00EAA30000F3E5CA00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000F1D18F00EAA30000E9A20000E9A20000E9A20000E9A2 + 0000E9A20000EDBE520000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000EFC05700EEBC4C00000000000000000000000000F0C97300F4D6 + 9700000000000000000000000000000000000000000000000000000000000000 + 0000F5DDA500F0C76900000000000000000000000000EFC25D00EFC25D000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000E2B35900D9950D00D1B88600C78E1F00DF940000D894 + 1200F4E4C700E6BD6E00D78F0000E2B459000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000F0CC8100EAA30000EFC9740000000000EDA40000F4D5 + 9500000000000000000000000000000000000000000000000000000000000000 + 0000E9D5A000F0A6000000000000E6C77F00EDA40000F1CA7700000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000F3D28700EBB02C00ECB53800ECB53800ECB53800ECB5 + 3800ECB53800EDB73A00EBB22E00E9A20000E9A20000E9A20000E9A20000E9A2 + 0000E9A20000E9A20000E9A81600F2D7A0000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000EFC05700EEBC4C00000000000000000000000000F0CA7400F4D7 + 9800000000000000000000000000000000000000000000000000000000000000 + 0000F5DDA600F0C76A00000000000000000000000000EFC25D00EFC35E000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000E5BC6D00DFAE4F00F5EAD600D5BD8F00CC911E00DD930000DA9A1C00F5E6 + CA00E6BE7200D78F0000E3B45A00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000EEBD4F00E9A30000F5E2B900EFD69F00E5A209000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000E8A50E00F0D59400F6E7C300EBA30000E6B44400000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000F0C56400E9A20000E9A20000E9A20000E9A20000E9A2 + 0000E9A20000E9A20000E9A20000E9A20000E9A20000E9A20000E9A20000E9A2 + 0000E9A20000E9A20000E9A20000EBA30000E3B44400F2EBDB00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000EFC05700EEBC4C00000000000000000000000000EBB13100EBB1 + 2E00EEBF5500EEBD5100EEBD5100EEBD5100EEBD5100EEBD5100EEBD5100EEBE + 5400EBB33200EBB02B00FAF0DA000000000000000000EFC25D00EFC35E000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000E5B8 + 6200DA910000D9920600D3BB8B00C7912400DD930000D8981A00E9C78500E2B2 + 5500D78F0000E3B55B0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000EBAF2800E9A20000F9EED600F2CB7300E5AE29000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000E7B03200EFC56800F9F1DE00E9A20000E7AD2400000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000F0C56400E9A20000E9A20000E9A20000E9A20000E9A2 + 0000E9A20000E9A20000E9A20000E9A20000E9A20000E9A20000E9A20000E9A2 + 0000E9A20000E9A20000E9A20000E9A20000EDBA4700F9EFDB00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000EFC05700EEBC4C00000000000000000000000000F9EBCC00F9EB + CA00F8E8C500F8E9C600F8E9C600F8E9C600F8E9C600F8E9C600F8E9C600F8E8 + C500F9EACA00F9EAC800000000000000000000000000EFC25D00EFC35E000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000E5B86200DC92 + 0000DEAE5100D3B98700CC911E00DD930000D99B1F00EBCA8E00D6920A00D890 + 0000E3B45A000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000EAB02A00E9A20000F9EDD500F2CB7500E5AC27000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000E8B03000EEC56A00F9F1DE00E9A20000E8AD2500000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000F3D28800EBB12E00ECB63A00ECB63A00ECB63A00ECB6 + 3A00ECB63A00EDB73C00EAB22F00E9A20000E9A20000E9A20000E9A20000E9A2 + 0000E9A20000ECA40000E9A91700F5DBA2000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000EFC05700EEBC4C0000000000EFD39600EEC36200000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EFC25D00EFC35E000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000E5B86200DB920000DAB4 + 6900E3DDCE00C8902100DD930000D9991B00E9C98800F7EBD700DFB15600E2B8 + 6700000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000EEBD5100E9A20000F6E1B600F5DCA400E4A106000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000E8A30B00EDD39800F6E4C000EBA40000E7B54600000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000EACE8E00EBA30000E9A20000E9A20000E9A20000E9A2 + 0000EAA30000E2B6540000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000EFC05700EEBD4E0000000000EEBE5300EECC8100EACF93000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EFC25D00F0C35D000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000E4B86100D8900000E5BA6600E5DD + CC00C2881600DE940000D8981A00E8C88700D6951000E0AC4C00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000EFCE8600EBA40000EAC36E0000000000F1A70200EFD1 + 8B00000000000000000000000000000000000000000000000000000000000000 + 0000EED29600F0A7000000000000EAC77900ECA40000EECB7B00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000E9B13300E9A20000E9A20000E9A20000E9A30000E8A7 + 1400ECD8A4000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000EFC35E00EBB7440000000000F5DDA800EEC97300000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000E5B85300EFC361000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000E5B96300D7900000E5B85D0000000000E7C8 + 8C00DD930000D7951100F4E6CB00E1B25400D8900000E4B46500000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000F9EED700EBA40100DEA0140000000000D8BF8000EFA5 + 0000F6E7C800000000000000000000000000000000000000000000000000F7EA + CF00E8A20200DFBD740000000000E9AA1A00EBA30000F7EBCF00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000F1E5C900EAA30000E9A20000E9A20000E9A20000EEBE56000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000F6E5BE00EBB33600F0CD8400F8E9C700F7E7C400F6E6C200F9E9 + C600F8E8C500F8E8C500F8E8C500F8E8C500F8E8C500F8E8C500F8E8C500F8E8 + C500F8E9C600F7E6BF00F7E3B700F7E5BC00EFD08D00E1AE3100ECDDB3000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000E5BA6800D8900000DEAB4C0000000000000000000000 + 0000E9C98700F4E4C600E6BF7100D78F0000E3B55B0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000E4B75500F0A60000E9C2650000000000CBA6 + 5200F0A70200EDCE8B0000000000000000000000000000000000F3D59100EAA3 + 0600EABB4A0000000000E4C16F00EEA50000EBBA4B0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000EDC76F00EAA20000E9A20000E8A81500F5DBA500000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000EBC56D00EFC05600F0C35E00ECB12D00E9A2 + 0000E9A20000E9A20000E9A20000E9A20000E9A20000E9A20000E9A20000E9A2 + 0000E9A20000EAAF2900EFC35E00EFC05700F2C7690000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000E1AD4D00D8900000DDA63C0000000000000000000000 + 000000000000E5BD6E00D78F0000E3B45A000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000F4EDDD00E3A61000EFA50000EACA88000000 + 0000F2CE8100E9A30500E6A20400E9AC2100EBAD2200E7A30500E7A00300F0CB + 7A0000000000EED49100E9A30000EFAA0B00F6EAD60000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000E5A81C00EAA30000EDBC4D000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000F0CB7700F2CC + 7900FAF0DA00F9ECD000F9ECD000F9ECD000F9ECD000F9ECD000F9ECD000FAF0 + D900F3D18500F0C86C0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000DFA93E00D88F0000DDAB4300000000000000 + 0000E4B86500D7900000E2B35900000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000EEDAAF00EBA30200ECA40000F1C4 + 61000000000000000000F5E0B200F1CC7D00EDCB7C00F3DEB000000000000000 + 0000EFC56700EBA30000EFA40000D7CBA7000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000F2D9A400EAA50800F4DA9F00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000F2CB7300F4D7 + 9800000000000000000000000000000000000000000000000000000000000000 + 0000F5DDA600F1C7690000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000DFAA4100D78F0000DEA83C00E1B1 + 5200D78F0000E3B45A0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000F3DEB000E7A61100EAA3 + 0000E8A50D00EBC26700F5E0B100F8EFDA00F8EFDA00F4E0B300ECC46B00E8A5 + 1000EAA30000E9A60E00F5DDA800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000E9D09A00F4EBD60000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000E6CA8B00EFBC + 4A00F4D99C00F3D69400F3D69400F3D69400F3D69400F3D69400F3D69400F4D9 + 9B00EEBE5100F0CC7F0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000DFA93E00D78F0000D78F + 0000E3B45B000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000F9F0DC00EBBE + 5C00E8A30400EBA30000EAA20000E9A20000E9A20000EAA30000EAA30000E7A1 + 0200EBBD5600F7EDD80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000F3C9 + 6B00EEBF5500EFC05800EFC05800EFC05800EFC05800EFC05800EFC05800EEBF + 5500F0C666000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000DFAC4900E3B5 + 5E00000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000F9EFDB00F0D39300EEC15C00ECB53C00ECB63B00EEC15B00F4D59000F7ED + D800000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FFE8C37900E5BA6600E5BA6600E5BA6600E5BA + 6600E5BA6600E5BA6600E5BA6600E5BA6600E5BA6600E5BA6600E5BA6600E5BA + 6600E5BA6600E5BA6600E5BA6600E5BA6600E8C37900000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000F8EDDB0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000F3D48F00F0C76C00F2C86C00F0D18A00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FFD8961400D78F0000D78F0000D78F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000D8961400000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D3B04F00EFB8430000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000F8EFDA00E8CE + 9500000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000EBB13100E9A20000EAA30000E8AC2800000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FFDA9B1E00D78F0000D78F0000D78F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000DA9B1E00000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000EED6AC00EEA40000EAA30000F2D8A000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000F5DCA400E9A60A00ECD1 + 9800000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000ECB63D00E9A20000EAA30000E9B13400000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FFDA9B1E00D78F0000D78F0000D78F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000DA9B1E00000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000E8AC1D00EAA20000E9A20000E8A81600000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000EDBE5300E9A20000E8A814000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000ECB63D00E9A20000EAA30000E9B13400000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FFDA9B1E00D78F0000D78F0000D78F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000DA9B1E00000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000EEC15F00E9A30000E9A20000E9A20000E9A20000EDBD52000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000F5DDAB00E9A91900E9A20000EBA40000E9BE63000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000ECB63D00E9A20000EAA30000E9B13400000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FFDA9B1E00D78F0000D78F0000D78F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000DA9B1E00000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000F3DCAB00EAA20000E9A20000E9A20000E9A20000E9A20000EDA50000EAD3 + 9F00000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000EEC05B00E9A20000E9A20000E9A20000E9A20000F3E2BE000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000ECB63D00E9A20000EAA30000E9B13400000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FFDA9B1E00D78F0000D78F0000D78F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000DA9B1E00000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000E9A91700E9A20000E9A20000E9A20000E9A20000E9A20000EDA50000D89A + 1100000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000E9D6 + AA00E8A91700EAA30000E9A20000E9A20000EAA30000E8AD2900000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000F1D39A00F2D69A0000000000000000000000 + 00000000000000000000ECB63D00E9A20000EAA30000E9B13400000000000000 + 0000000000000000000000000000F0D8A000F1D4950000000000000000000000 + 000000000000000000000000000000000000000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FFDA9B1E00D78F0000D78F0000D78F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000DA9B1E00000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF0000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000EEC1 + 5D00E9A20000E9A20000E9A20000E9A20000E9A20000E9A20000E9A20000EFA6 + 0000E2B850000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000EEC15A00EAA3 + 0000EAA30000E9A20000E9A20000E9A20000E9A20000EFCC8100000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000F0EBDD00E2A40C00EBA91500EAC16500F6E5 + C0000000000000000000EDB84000E9A20000EAA30000E9B23600000000000000 + 0000F6E7C500ECC46A00E9A91800E8A20600F9ECD40000000000000000000000 + 000000000000000000000000000000000000000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FFDA9B1E00D78F0000D78F0000D78F0000D78F + 0000D78F0000D78F0000D6961500ECCE9300EDD09800D6981B00D78F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000DA9B1E00000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000DECFAD00F2A8 + 0000E9A20000E9A20000E9A20000E9A20000E9A20000E9A20000E9A20000E9A2 + 0000EDA30000F0D7A00000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000F5DDA800E9AA1A00E9A20000E9A2 + 0000E9A20000E9A20000E9A20000E9A20000E9A20000E7AD2A00ECB73B00ECB5 + 3800ECB53800ECB53800ECB53800ECB53800EBB02C00F3D28900000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000CCC2A800F2A80000EBA30000E9A2 + 0000E8AE2B00F2D08500EBB22F00E9A20000E9A20000E9AE2900EFCF8700E7B0 + 2F00EAA30000EAA20000EBA50000F1D69C000000000000000000000000000000 + 000000000000000000000000000000000000000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FFDA9B1E00D78F0000D78F0000D78F0000D78F + 0000D78F0000D9900000E6D4A500000000FF000000FFEEDCB400D88F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000DA9B1E00000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000D39A1A00EEA5 + 0000E9A20000E9A20000E9A20000E9A20000E9A20000E9A20000E9A20000E9A2 + 0000E9A20000E8A6130000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000EEBC4C00E9A20000E9A20000E9A20000E9A2 + 0000E9A20000E9A20000E9A20000E9A20000E9A20000EAA20000E9A20000E9A2 + 0000E9A20000E9A20000E9A20000E9A20000E9A20000F0C66700000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDBF5700E9A20000E9A2 + 0000EAA20000E9A20000E9A20000E9A20000E9A20000E9A20000EAA30000EAA2 + 0000E9A20000EDA60000E8B34B00000000000000000000000000000000000000 + 000000000000000000000000000000000000000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FFDA9B1E00D78F0000D78F0000D78F0000D78F + 0000D78F0000D8900000EDDBB600000000FF000000FFF3E3C400D78F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000DA9B1E00000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF0000000000000000000000000000 + 00000000000000000000000000000000000000000000E7BA5700EEA60000E8A2 + 0000E9A20000EAA30000E9A20000E9A20000E9A20000E9A20000EAA30000E9A2 + 0000E9A20000E9A30000EDB94B00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000DFB44F00ECA40000E9A20000E9A20000E9A2 + 0000E9A20000E9A20000E9A20000E9A20000E9A20000E9A20000E9A20000E9A2 + 0000E9A20000E9A20000E9A20000E9A20000E9A20000F0C66700000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000E9AA1B00E9A2 + 0000E9A20000E9A20000E9A20000E9A20000E9A20000E9A20000E9A20000E9A2 + 0000ECA40000D99E140000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FFDA9B1E00D78F0000D78F0000D78F0000D78F + 0000D78F0000D78F0000D79E2800F3E2C200F4E5C800D7A23200D88F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000DA9B1E00000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF0000000000000000000000000000 + 000000000000000000000000000000000000F2DBA800ECA40000EAA20000EAA3 + 0000E8AE2C00F1D08800EBB23000E9A20000E9A20000EAAE2900EED08A00EBB1 + 3100E9A20000E9A20000EAA30000F1D79B000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000F2DCAA00EAAB1C00E9A20000E9A2 + 0000E9A20000E9A20000E9A20000E9A20000E9A20000EBB02C00EEB73D00ECB6 + 3A00ECB63A00ECB63A00ECB63A00ECB63A00EBB12E00F3D38A00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000F3DFAF00E9A2 + 0000E9A20000E9A20000E9A20000E9A20000E9A20000E9A20000E9A20000E9A2 + 0000F2A80000DBCAA30000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FFDA9B1E00D78F0000D78F0000D78F0000D691 + 0700D7940E00D6900600D7910900D6910700D6910800D7910800D7940E00D894 + 0F00D6910700D78F0000D78F0000D78F0000DA9B1E00000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF0000000000000000000000000000 + 0000000000000000000000000000F9EFDC00E8A50C00E9A81600ECC26500F6E5 + C0000000000000000000EDB84000E9A20000E9A20000E9B23600000000000000 + 0000F5E6C500EFC66A00E6A81A00E8A30600F9EDD40000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000EEC25D00E9A2 + 0000E9A20000E9A20000E9A20000E9A20000EAA30000ECCC8100000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000EEC1 + 6000E9A30000E9A20000E9A20000E9A20000E9A20000E9A20000E9A20000E9A2 + 0000EEBD53000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FFD99A1D00D78F0000D78F0000D78F0000E7C2 + 7800000000FFE7C07300000000FF000000FF000000FF000000FF000000FF0000 + 00FFE9C68300D78F0000D78F0000D78F0000DA9B1E00000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF0000000000000000000000000000 + 0000000000000000000000000000F2D59A00F1D79B0000000000000000000000 + 00000000000000000000ECB73D00E9A20000E9A20000EAB23400000000000000 + 0000000000000000000000000000F4DAA000F1D4940000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000F5DF + AD00E9A91900E9A20000E9A20000E9A20000EAA30000E4AB2900000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000E9A91A00E9A30000E9A20000E9A20000E9A20000E9A20000E9A20000E8A7 + 1200000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FFDB991900D78F0000D78F0000D78F0000E8C5 + 7F00000000FFE8C37A00000000FF000000FF000000FF000000FF000000FF0000 + 00FFEACA8A00D78F0000D78F0000D78F0000DA9B1E00000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000ECB73D00E9A20000E9A20000EAB23400000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000EFC25E00EAA20000EBA30000E9A20000ECA40000F2E2BD000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000F0DAAE00ECA30000E9A20000E9A20000E9A20000E9A20000EAA20000F2DA + A200000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FFEBD6B100D5900900D78F0000D78F0000E8C6 + 8000000000FFE8C37B00000000FF000000FF000000FF000000FF000000FF0000 + 00FFEBCA8B00D78F0000D78F0000D78F0000DA9B1E00000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000ECB73D00E9A20000E9A20000EAB23400000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000F4DFAE00E3A51A00EBA30000EAA30000EAC062000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000E2BB5E00F0A70000E9A20000E9A20000E9A30000EDBC52000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FFF1E1C200D6941000D8900000E7BF + 7400000000FFE7BD6F00000000FF000000FF000000FF000000FF000000FF0000 + 00FFE8C37E00D7900000D78F0000D78F0000DA9B1E00000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000ECB73D00E9A20000E9A20000EAB23400000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000E9BC5500EBA30000E7A713000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000D0981D00EFA60000E9A20000E9A91600000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF000000FFF4E7CD00D7971900D78F + 0000D58E0400D58D0100D68F0500D6900500D6900500D6900500D6900500D68F + 0500D58D0200D78F0000D78F0000D78F0000DA9B1E00000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000ECB73D00E9A20000E9A20000EAB23400000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000F3DBA700E9A40B00EFD4 + 9700000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000EAD6AC00EEA60000EDA40000EDD1A000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FFF3E9D900DD9E + 2400D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000D9981700000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000ECB33200EAA30000EAA30000E9AE2800000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000FAF0DC00EFD3 + 9500000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000F0BE5100D8B0440000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FFF1DB + B100E7BE6F00E7BE6F00E7BE6F00E7BE6F00E7BE6F00E7BE6F00E7BE6F00E7BE + 6F00E7BE6F00E7BE6F00E7BE6F00E7BE6F00E9C68100000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000ECD19500EDC77400ECC77400F0D19000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000E4E1DB0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000 + 00FF000000FF000000FF000000FF000000FF0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000F2DDB500EFD9AE00EFD9AF00EFD9AF00EFD9 + AF00EFD9AF00EFD9AF00EFD9AF00EFD9AF00EFD9AF00EFD7AA00F4E5C9000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000F1CE8200EFC1 + 5800EFC25B00EFC25B00EFC25B00EFC25B00EFC25B00EFC25B00EFC25B00EFC2 + 5B00EFC05800F3CF7D0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000DDA22F00D8951100D8951100D8951100D895 + 1100D8951100D8951100D8951100D8940C00D9950C00D8951100D8951100D895 + 1100D8951100D8951100D8951100D8951100DA9D230000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000E5C38000F3E0BC0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000EDD19D00ECD4AA000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000E7CB94000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000E9B64800E8A71000EEBB + 4B00EFBB4900EFBB4900EDBA4900EDBA4900EEBB4A00EEBC4D00EEBB4900EDBB + 4900EDBB4C00E6A71500E8B23F00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D79D2A00D8900000D78F0000D78F0000D78F + 0000D78F0000D78F0000D9910000DEAE5500D9B26600D9910000D78F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000DA9B1D0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000E2BD + 7500D8900000D7920B00F4E3C400000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000EACC9800EBD7C1000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000EED5A6000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000F8F0DE00EAA20000F8EBCE000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000F5ECDA00E9A20000F9EDD1000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000DCB16300DA910000D78F0000D78F0000D78F + 0000D78F0000D8900000D5951A000000000000000000DA9D2600D78F0000D78F + 0000D78F0000D78F0000D78F0000D8900000DDAF550000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000E1BB6F00D890 + 0000D78F0000D78F0000D7930C00F4E3C3000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000EACC9800EBD7C1000000000000000000000000000000 + 000000000000F5E9D300EFD5A400F0D8A900F0D8A900F1DAAF00E7BE6F00EED4 + A100F0D8AA00F0D7A900F0D7A900EFD6A700F0DBB40000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000FAEDD200E7A10300000000000000 + 000000000000E8CE8D00EFBC4A00F4D38C00F3E0B800E7AC2500EDC56B000000 + 00000000000000000000E7A20400F8E9C6000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000EBD7B300D9910000D78F0000D78F0000D78F + 0000D78F0000D78F0000DCA338000000000000000000E1AE4E00D78F0000D78F + 0000D78F0000D78F0000D78F0000D9900000E6D1A80000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000E2BC7200D9900000D78F + 0000D78F0000D78F0000D78F0000D7930D00F4E3C30000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000EACC9800EBD7C1000000000000000000000000000000 + 000000000000ECCF960000000000000000000000000000000000EFD4A2000000 + 000000000000000000000000000000000000EFDBB500EDD29F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000F9EDD300E7A10200000000000000 + 0000F5EBD400ECA81000ECA40000E8B84F00EDC57300ECA40000EFA60000DDC5 + 8A000000000000000000E7A20400F8E9C6000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D69D3000D9900000D78F0000D78F + 0000D78F0000D78F0000D58F0300F7ECD80000000000D7920B00D78F0000D78F + 0000D78F0000D78F0000D88F0000D89D25000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000E2BC7200D8900000D78F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000D7930C00F4E3C300000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000EACC9800EBD7C1000000000000000000000000000000 + 000000000000EFD5A30000000000000000000000000000000000EFD6A6000000 + 000000000000000000000000000000000000F5E7CD00F0D7A800000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000F9EDD300E7A10200000000000000 + 0000DFAA3800EAC56F00F1D8A100EBDEB800EEE7D300F0CB7900EED39400ECB0 + 29000000000000000000E7A20400F8E9C6000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000EBDDBC00D68E0100D78F0000D78F + 0000D78F0000D78F0000D7900000EBCE9700EFD8AD00D78F0000D78F0000D78F + 0000D78F0000D78F0000D88F0000E6D9B1000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000E1BC7100D8900000D78F0000D78F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000D78F0000D7930D00F4E4C7000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000EACC9800EBD7C1000000000000000000000000000000 + 000000000000EFD5A30000000000000000000000000000000000EFD6A6000000 + 000000000000000000000000000000000000F5E7CD00EFD7A800000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000F9EDD300E8A1020000000000F3E3 + C400F0A70000DAA83A00F1EADA00000000000000000000000000E9C16100EBA3 + 0000F1D38B0000000000E7A20400F8E9C6000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EBCB9500D7910000D78F + 0000D78F0000D78F0000D78F0000DCA03000E0A73C00D78F0000D78F0000D78F + 0000D78F0000DA900000E4C88A00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000E4BE7300D8900000D78F0000D78F0000D78F0000D78F + 0000DCA33000D8951200D78F0000D78F0000D78F0000D78F0000D7930C00F4E2 + C200000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000EACC9800EBD7C1000000000000000000000000000000 + 000000000000EFD5A30000000000000000000000000000000000EFD6A6000000 + 000000000000000000000000000000000000F5E7CD00EFD7A800000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000F9EDD300E7A10200000000000000 + 0000E6A40D00F1A70000EFE0C500000000000000000000000000E7AB2100E9A2 + 0000F9EDD60000000000E7A20400F8E9C6000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000EDD6A700D997 + 1800D88F0000D78F0000D9900000D3992500C3912E00DB920000D78F0000D88F + 0000D8961300EAD19E0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000DEC89700DC910000D78F0000D78F0000D78F0000D78F0000DDA5 + 370000000000F2DFB900D6900600D78F0000D78F0000D78F0000D78F0000D793 + 0C00F4E4C5000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000EACC9800EBD7C1000000000000000000000000000000 + 000000000000EFD5A30000000000000000000000000000000000EFD6A6000000 + 000000000000000000000000000000000000F5E7CD00EFD7A800000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000F9EDD300E7A10200000000000000 + 0000F7E5BD00F3D69400E4B64D00F2E8D500F8EBCF00ECB63800EEC77100F6E4 + BD000000000000000000E7A20400F8E9C6000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000E6C37D00DB9E2700DB9E2400F4E7CD00EBE4D800C8942E00DC9D2300E6C1 + 7800F6EEDD000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000D3C07B00DC900000D78F0000D78F0000DDA639000000 + 00000000000000000000F1DCB300D6900500D78F0000D78F0000D78F0000D78F + 0000D8940F00F4E4C50000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000E9CB9800EBD7C1000000000000000000000000000000 + 000000000000EFD5A30000000000000000000000000000000000EFD6A6000000 + 000000000000000000000000000000000000F5E7CD00EFD7A800000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000F9EDD300E7A10200000000000000 + 000000000000EFC26400EEA50000EABD5400EED7A100ECA40000E8A819000000 + 00000000000000000000E7A20400F8E9C6000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000F8EFDE0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D4C07B00DC900000DDA63900000000000000 + 0000000000000000000000000000F1DCB300D6900500D78F0000D78F0000D78F + 0000D78F0000D7920B00F4E3C400000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000EBCC9400E9CA9400F4E4C600F2E1C200F1E1C200F0DF + BB0000000000EFD6A50000000000000000000000000000000000EFD6A6000000 + 000000000000000000000000000000000000F5E7CD00EFD7A800000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000F9EDD300E7A10200000000000000 + 00000000000000000000E4A91C00E6AB2700E4A82100E6A40D00F1DCAA000000 + 00000000000000000000E7A20400F8E9C6000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000F3E5CB00E3B86300DCA22E00DCA12D00E1B55E00F3E3C6000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000E1CE9E0000000000000000000000 + 000000000000000000000000000000000000F2DEB700D6900600D78F0000D78F + 0000D78F0000D78F0000D7940E00F4E4C5000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000F7EDDB00E9C68300E3B96800E6BE7000E7BD6C00ECD4 + A800EDD4A500F0D9AB0000000000000000000000000000000000EFD6A6000000 + 000000000000000000000000000000000000F5E7CD00EFD7A800000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000F9EDD300E7A10300000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000E7A20400F8E9C7000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000ECD09C00D5900500D88F0000D78F0000D78F0000D8900000D5900200EAC9 + 9200000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000F1DDB500D58F0400D78F + 0000D78F0000D78F0000D78F0000D7920B00F4E2C20000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000F1DEBD00D7910600D78F0000D78F0000DFA9 + 4600EFD8AC00EFD7A70000000000000000000000000000000000EFD6A6000000 + 000000000000000000000000000000000000F5E7CD00EFD7A800000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000F8EACB00E7A10100F9ECD0000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000FAF0DC00E7A10200F7E6BE000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000EEE4 + D100D6900300D7900000D78F0000D78F0000D78F0000D78F0000D78F0000D78F + 0000F3E4C7000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000F1DCB300D691 + 0700D78F0000D78F0000D78F0000D78F0000D7930D00F3E3C400000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000F6E5C300E1990900D88F0000DEA6 + 3900F0DAAE00EDCE9200F4E3C400F3E2C100F3E2C100F4E3C300EBC886000000 + 000000000000000000000000000000000000F5E7CD00EFD7A800000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000F5E2B700E8A91900E9A20000E7A40900E8A4 + 0A00E8A40A00E8A40A00E8A40A00E8A40A00E8A40A00E8A40A00E8A40A00E8A4 + 0A00E8A40A00E7A40900E9A20000E9A71300DECBA10000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000E0B8 + 6900D8900000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F + 0000E3B45B000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000F1DD + B600D6900500D78F0000D78F0000D78F0000D78F0000D8961500E8C585000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000DFD4BF00D28D0000DFA6 + 3700F1DEB800EAD7B600E4B35900E6B96900E4B76400E8CB9500E4C486000000 + 000000000000000000000000000000000000F5E7CD00EFD7A800000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000F0C56600E8A81400F9EED500F9ECD000F9EC + CF00F9ECCF00F9ECCF00F9ECCF00F9ECCF00F9ECCF00F9ECCF00F9ECCF00F9EC + CF00F9ECCF00F9ECCF00FAF0DB00EAAB1C00F4C2520000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCA4 + 3300D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F + 0000DB9F29000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000F1DBB100D6900500D78F0000D78F0000D78F0000E5BE6F00F5E9D2000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000EAD7B300E1AB + 3F00F0D9AC0000000000DDA33500D78F0000D78F0000D5920E00DFB461000000 + 000000000000000000000000000000000000F5E7CD00EFD7A800000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000F0C97000E8A50E0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000E7A61700EBBE5A0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D69F + 3500D8900000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D990 + 0000D69C2B000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000F2DEB800D6900500D78F0000E6BF700000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000F8EF + DE00F0DBB000F2DAAC00F0D9AB00DDA63600D8900000D58F0400E4BF75000000 + 000000000000000000000000000000000000F5E7CD00EFD7A800000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000F9EED800E9B03000E7A10200E9A50A00E9A6 + 0C00E9A60C00E8A40A00E8A40A00E8A40A00E8A40A00E8A40A00E8A40A00E8A5 + 0C00E9A50C00E9A50A00E8A10200E8AD2800F0E2C30000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000E2BD + 7100DA910000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D991 + 0000E2B663000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000F0DAAF00E8C47E000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000DFA83B00D68F0200EDD29B000000 + 000000000000000000000000000000000000F5E7CD00F0D7A800000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000F8EACC00F7ECD200E7AA + 2200EBC46D0000000000FAEFD800FAEFD800FAEFD800FAEFD80000000000F1CC + 7700E3A51B00F7EBD100F9EBCB00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000EFE7 + DA00D18E0B00D9910000D78F0000D78F0000D78F0000D78F0000D8900000D28D + 0600EFE5D2000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000DCA74100ECCE9200F7ED + DA0000000000000000000000000000000000F0DAB100EDD2A000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000EBC2 + 6800E3A31100EEC05600EEBE5200EEBE5200EEBE5200EEBE5200EFC05600EAA9 + 1600E9BB5D000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000E0D3AE00DC951000D88F0000D78F0000D78F0000D78F0000DC970C00E3CE + A500000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000F3E0BC00ECCF + 9600EED4A100EED4A000EED4A000EED39E00EFD8AC00F7EDDC00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000F2D18500EEC15A00EFC25E00EFC25E00EFC25E00EFC25E00EFC15A00EECD + 8000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000F5EBD900E4BD7100DDA22E00DB9F2B00E5BC6C00F7EBD4000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000E6BF7300F6EAD2000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000F7ECD900E4BE7300000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000EFD59D00F0CA7600F4E9D900000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000F1DDB800EED39E00EFD5 + A200EFD5A200EFD5A200EFD5A200EFD5A200EFD5A200EFD5A200EFD5A200EFD5 + A200EFD5A200EED39F00EED9B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000EAD09C00D6910800E5BC6B000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000E7BF7300D9910700D4C590000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000F1E2C300ECBB4E00E9A20000EEC66E00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000EBCB9100E9C58600000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000E4C89000E8CC95000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000EBCE9C00D88F0000D78F0000D78F0000E4BC + 6900000000000000000000000000000000000000000000000000000000000000 + 0000E7C07400D78F0000D78F0000E0940000B9AB900000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000F0DFBE00F1CD7B00EAAF2900E7A20500F2D69700000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000EBC88600F0D7A800000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000F1DDB800ECCF95000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000EACE9C00D8900000D78F0000D78F0000D78F0000D78F + 0000E4BB6800000000000000000000000000000000000000000000000000E7C0 + 7400D78F0000D78F0000D78F0000D88F0000E4970000BAAD9100000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000EFDEBB00F1CD7C00EAAE2500E7A10100F7E3B70000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000EAC88600F0D8A900000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000F2DFB800EDCF95000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000E1C07F00D58E0000D78F0000D78F0000D78F0000D78F0000D78F + 0000D78F0000E4BB680000000000000000000000000000000000E7C07400D78F + 0000D78F0000D78F0000D78F0000D78F0000D88F0000DD930000E4BA66000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000EFDE + BA00F1CD7B00EAAE2600E7A00000F7E3B7000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000EAC88600F0D8A900000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000F2DEB800EDCF95000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000E6C07500D78F0000D78F0000D78F0000D78F0000D78F + 0000D78F0000D78F0000E5BB68000000000000000000E7C07400D78F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000D78F0000E5BB6A00F5E8D0000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000F0DEBB00EDD6AC00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000F0DFBD00F1CD + 7B00EAAE2500E9A20000F6E2B300000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000EAC88600F0D8A900000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000F2DEB800EDCF95000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000E7C17600D78F0000D78F0000D78F0000D78F + 0000D78F0000D78F0000D78F0000E6C07200E9C47C00D78F0000D78F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000E5BB6B0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000EAC78800DAA23400EAD09D000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000F5EBD9000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000F0E0BF00F1CD7B00EAAE + 2600E9A20000F6E0B00000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000EAC88600F0D8A900000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000F2DEB800EDCF95000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000E7C17700D78F0000D78F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F + 0000D78F0000D78F0000D78F0000E5BB6B000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000EDD29E00D78F0000D8900000D6900600E1B05200F1DDB9000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000E2C89600DB920000DDA63C00ECD7AC00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000F1CE8000EAAF + 2900E8A51000EAA81400EBB74500F6E2B700F1E0BE00F0CA7500EAAE2500E7A0 + 0000F6E2B5000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000EAC88600F0D8A900000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000F2DEB800EDCF95000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000E7C17700D78F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F + 0000D78F0000D78F0000E5BB6B00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000F2DEBA00D6920A00D78F0000D78F0000D78F0000D78F0000D792 + 0B00DFB15600EFDDB90000000000000000000000000000000000000000000000 + 00000000000000000000DC9C1F00D78F0000D78F0000D78F0000E8CD95000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000E8DCC400F1AB1200E9AA1500EDCA + 7B00F1D59600ECD09000EEBC4B00EAA20000EAA20000E8A50D00E7A10100F6E3 + B700000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000EAC88600F0D8A900000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000F2DEB800EDCF95000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000E7C07500D78F + 0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F + 0000D78F0000E5BB6B0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000F1E7D300D4961900D78F0000D78F0000D78F0000D78F0000D78F + 0000D9920600E8D3AB0000000000000000000000000000000000000000000000 + 000000000000DCBE8700D9900000D78F0000D8900000E0B55E00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000F3EADB00E5A10400EAC25E0000000000ECC8 + 7400EDCA7B000000000000000000F7E8C600DFA21700EBA40000F6E3B9000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000EAC88600F0D8A900000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000F2DEB800EDCF95000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000E9C4 + 7E00D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F + 0000E7BF73000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000DBA02C00D78F0000D78F0000D78F0000D78F0000DBA1 + 3200000000000000000000000000000000000000000000000000000000000000 + 0000ECDCB700D88F0000D78F0000D88F0000D28E080000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000E0AF4300EAB1330000000000E2B64F00F6E2 + B90000000000000000000000000000000000EBE1CC00E59F0000F6E3BA000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000EAC88600F0D8A900000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000F2DEB800EDCF95000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000E9C3 + 7C00D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F + 0000E6C072000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000DEA73D00D78F0000D78F0000D78F0000D78F0000D490 + 0900E2BA6A00000000000000000000000000000000000000000000000000EDD7 + A900D78F0400D78F0000D78F0000DB910000EAC88A0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000F4E1B900ECA40000F7E8C900EAC37200F6E5C3000000 + 00000000000000000000000000000000000000000000E7B84D00EDB73E000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000EAC88600F0D8A900000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000F2DEB800EDCF95000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000E7C07200D78F + 0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F + 0000D78F0000E4BB680000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000E1B15300D78F0000D78F0000D78F0000D78F0000D78F + 0000D88F0000D78F0000DEA63700E5C17B00EBCF9600E8C37B00DCA02B00D78F + 0000D78F0000D78F0000DB910000CCA34C000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000E9C57400E5A20500F8EBD100EAC16100000000000000 + 00000000000000000000000000000000000000000000EDD39900E9A60E000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000EBC98800E8C37B00F2DDB500F0DA + AF00F0DAB000F0DBB000EFD6A700000000000000000000000000000000000000 + 00000000000000000000F2DEB800EDCF95000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000E7C07400D78F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F + 0000D78F0000D78F0000E4BB6800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000E5BB6400D8981A00F2E0BE00E5BB6B00D78F0000D78F + 0000D78F0000D78F0000D78F0000D88F0000D78F0000D78F0000D78F0000D78F + 0000D78F0000D88F0000E2A63700000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000EFC66800E7A40900F9EFD800EBDAB700000000000000 + 00000000000000000000000000000000000000000000F5DCA500E8A40A000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000F1D6A100EBC88500EBCB + 8C00EBCA8B00E9CA8C00F3E3C400E9C889000000000000000000000000000000 + 00000000000000000000F2DEB800EDCF95000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000E7C07400D78F0000D78F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F + 0000D78F0000D78F0000D78F0000E4BB68000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000EDE5D60000000000000000000000000000000000E4B9 + 6400D58F0400D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F + 0000D9900000E0B8690000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000F3D69500E9A200000000000000000000000000000000 + 00000000000000000000000000000000000000000000EFCB7800E5A91F000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000E2D7C000CC8B0800D890 + 0000D78F0000D7900000E2B66200EED3A1000000000000000000000000000000 + 00000000000000000000F2DEB800EDCF95000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000E8C17500D78F0000D78F0000D78F0000D78F + 0000D78F0000D78F0000D78F0000E7BF7300E8C37D00D78F0000D78F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000E6BC690000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000EBCF9600DFAA4200D8961400D58E0200D58F0300D9981B00E3B6 + 5F00F3E7D1000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000E5A41000E8C5770000000000000000000000 + 00000000000000000000000000000000000000000000E7A71500E9C676000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000ECE0CB00DC96 + 0E00D78F0000D78F0000E1AE4900EED4A0000000000000000000000000000000 + 00000000000000000000F2DEB800EDCF95000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000F8EEDE00E7C07500D78F0000D78F0000D78F0000D78F0000D78F + 0000D78F0000D78F0000E5BA69000000000000000000E7C07500D78F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000D9900000DDB76A00EAE0CF000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000F2DFBD00E9C78400E5B96400E5BA6600E9CB8F00F6EA + D500000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000EFD59A00EAA20000F1E0BC00000000000000 + 000000000000000000000000000000000000EEC36100E8A40A00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000F5E5 + C700D8930A00D8900000E1AD4900EED4A1000000000000000000000000000000 + 00000000000000000000F2DEB800EDCF95000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000E3C18000D68F0000D88F0000D78F0000D78F0000D78F0000D78F + 0000D78F0000E5BB6B0000000000000000000000000000000000E7C17700D78F + 0000D78F0000D78F0000D78F0000D78F0000D78F0000D68E0000E2B867000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000E8C26700EDA40000EECA7C00F7EF + DD000000000000000000F7E5C000EAB53B00E8A20100F6E4BD00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000F2E1C100D38C0000E0AD4700EFD5A2000000000000000000000000000000 + 00000000000000000000F2DEB800EDCF95000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000DBC29F00DD940000D78F0000D78F0000D78F0000D78F + 0000E5BB6B00000000000000000000000000000000000000000000000000E7C1 + 7700D78F0000D78F0000D78F0000D78F0000D78F0000ECCD9300000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000F2D69600E8A71300E9A2 + 0000E7A40900E7A20400EAA20000EAB53F00F9EDD20000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D6CBB500E8B44F00ECD09D000000000000000000000000000000 + 00000000000000000000E9CB8F00E9CD95000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000E6C79F00D9910000D78F0000D78F0000E6BC + 6C00000000000000000000000000000000000000000000000000000000000000 + 0000E8C17600D78F0000D78F0000D78F0000ECCE930000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000F9F1DE00F3D5 + 9200F0C46300EFC86F00F6E1B100000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000EED9B000EBCE9300EDD09800EDD09800EDD0 + 9800EDD09800EBCE9500EFDCBA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000E4C69F00D6910500E6BC6C000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000E8C07600D58F0500ECCE93000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000E6C37E00F8EEDD000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000E5C27D00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000F2E5CC00EBCC8F00E6BF7200E6BF7100E6C88D00F3E4C8000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000F1DDB800EED39E00EFD5 + A200EFD5A200EFD5A200EFD5A200EFD5A200EFD5A200EFD5A200EFD5A200EFD5 + A200EFD5A200EED39F00EED9B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000F2E8D800EFC15700ECB5 + 3900ECB63C00ECB63C00ECB63C00ECB63C00ECB63C00ECB63C00ECB63C00ECB6 + 3C00ECB53900F1C15300F3E8D100000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000E8CE9D00DAA63E00D7930D00D78F0000D78F0000D5920C00DFA73A00E4CA + 9700000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000EBCB9100E9C58600000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000E4C89000E8CC95000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000E6A71D00EDB43300F2CC + 7900F1CC7A00F3CB7300F3CA6E00F1CC7800F2CC7900F1C96F00F1CA7200F2CC + 7A00F1CC7A00ECB63900E0A31500000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000F7EBD600D8A0 + 3300D9910000D8900000D78F0000D78F0000D78F0000D78F0000D88F0000D890 + 0000DCA02C00F5E8CF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000EBC88600F0D7A800000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000F1DDB800ECCF95000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000F6E3B900EAA50700000000000000 + 0000FAE5B9000000000000000000F8E9C700F8E8C5000000000000000000F8E4 + BA00FAF0DB0000000000E5A30E00F4DFAD000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000E2DCD000E19B1000D890 + 0000D88F0000D89D2800E8C58000EFD8AA00EFD8AB00E9C68300D9A02D00D890 + 0000D88F0000DC960A00DFD6C600000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000EAC88600F0D8A90000000000EFD5 + A400D8951100DA9A1C00DA9A1C00DA9A1C00DA9A1C00DA9A1C00DA9A1C00D895 + 1100E8C98C0000000000F2DFB800EDCF95000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000F6E1B200E9A6100000000000ECC0 + 5B00F0D18A00EDCA7C00F6ECD700EDC36300EDC46700F8EACD00EFCF8500F0D0 + 8900EEC05A0000000000E8A91900F6DDA5000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000DD9D2000D78F0000D990 + 0000EAC88800000000000000000000000000000000000000000000000000E5CA + 9200D48D0100D78F0000E29D1800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000EAC88600F0D8A90000000000F3E2 + C300E1AF5000E3B45700E3B45700E3B45700E3B45700E3B45700E3B45700E3B2 + 4F00EBD4B20000000000F3DFB800EDCF95000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000F6E1B200E8A6100000000000F1C9 + 700000000000F2CF7E00F9ECCF00F4D99A00F5DBA200F8E8C400F3D185000000 + 0000F1CA730000000000E9A91900F5DDA6000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000E8C37C00D88F0000DB930000D9C2 + 9400000000000000000000000000000000000000000000000000000000000000 + 0000E8CFA100D8900000D9910000D9B46D000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000EAC88600F0D8A900000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000F2DFB800EDCF95000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000F6E1B200E8A6100000000000F1C9 + 700000000000F2CE7E00F9ECCF00F4D99A00F5DBA200F8E7C400F3D085000000 + 0000F1CA730000000000E9A91900F5DDA6000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D8961500D8900000DDA844000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000DFB05000D88F0000D9950E00F7EDDB0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000EAC88600F0D8A90000000000EDDB + B300D8A13300D8A43C00D8A43C00D8A43C00D8A43C00D8A43C00D8A43C00D8A1 + 3300EBD29F0000000000F2DFB800EDCF95000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000F6E1B200E8A6100000000000F1C9 + 700000000000F2CE7E00F9ECCF00F4D99A00F5DBA200F8E7C400F3D085000000 + 0000F1CA730000000000E9A91900F5DDA6000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000ECD3A000D78F0000D78F0000EFD9B1000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000EEDDBF00D9900000D78F0000ECCE950000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000EAC88600F0D8A90000000000EFD8 + B200DEA12B00DEA53500DEA53500DEA53500DEA53500DEA53500DEA53500DCA0 + 2C00E9D09D0000000000F2DEB800EDCF95000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000F6E1B200E8A6100000000000F1C9 + 700000000000F2CE7E00F9ECCF00F4D99A00F5DBA200F8E7C400F3D085000000 + 0000F1CA730000000000E9A91900F5DDA6000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000EDE5CA00E5C17700E6BB6800E6BC6900E6BC6900E6BC6900E6BC + 6900E6BC6900E6BC6900E6BC6900E6BC6900E6BC6900E6BC6900E6BC6900E6BC + 6900E6BC6900E6BC6900E6BC6900E6BC6900E5BB6800E7C07400F4E4C5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000E6BE6F00D78F0000D58F0400000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000D6910B00D78F0000E5BD6E0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000EAC88600F0D8A900000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000F2DEB800EDCF95000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000F6E1B200E8A6100000000000F1C9 + 700000000000F2CE7E00F9ECCF00F4D99A00F5DBA200F8E7C400F3D085000000 + 0000F1CA730000000000E9A91900F5DDA6000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000E7BB6A00D78F0000D78F0000D78F0000D78F0000D78F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000D78F0000D78E0000E2B769000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000E5BA6400D78F0000D6920B00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000D8961300D78F0000E5BA660000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000EAC88600F2D9A90000000000DAD5 + CA00E9BB6000E5BA6600E5BA6600E5BA6600E5BA6600E5BA6600E5BA6600E5B8 + 5F00EEDDBB0000000000F3DFB800EDCF95000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000F6E1B200E8A6100000000000F1C9 + 700000000000F2CE7E00F9ECCF00F4D99A00F5DBA200F8E7C400F3D085000000 + 0000F1CA730000000000E9A91900F5DDA6000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000E7BE6F00D78F0000D78F0000D78F0000D78F0000D78F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000D78F0000D78E0000E2B96E000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000E4C27E00D88F0000D58E0100F5EBD8000000 + 000000000000000000000000000000000000F5EAD30000000000000000000000 + 00000000000000000000D58F0400D78F0000E7C2790000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000EAC88600F0D8A90000000000F1D5 + A200D5910B00D8971700D8971700D8971700D8971700D8971700D8971700D794 + 0C00E4C48A0000000000F3DFB800EDCF95000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000F6E1B200E8A6100000000000F1C8 + 6F0000000000F2CE7E00F9ECCF00F4D89900F5DBA200F8E8C400F3D184000000 + 0000F1C9720000000000E9A91900F5DDA6000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000E7BE6F00D78F0000D78F0000D78F0000D78F0000D78F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000D78F0000D78E0000E2B96E000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000EDDBBB00D78E0000D9910000E4C78E000000 + 00000000000000000000F2E4D000D6941000D8910000E4BF8100000000000000 + 000000000000ECCF9C00D78F0000D78F0000EFD8AD0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000EAC88600F0D8A900000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000F2DFB800EDCF95000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000F6E1B200E8A60F0000000000F1CE + 7E00EFC46300F4DBA30000000000EEC26400EEC3620000000000F2DCAB00EFC4 + 6300F0CB780000000000E9A91800F5DDA6000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000E6BB6B00D78F0000D78F0000D78F0000D78F0000D78F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000D78F0000D78E0000E0B669000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D69F3200D9900000D3961B000000 + 00000000000000000000EAC78300D78F0000D78F0000DC9E2300000000000000 + 000000000000DC9E2300D78F0000DC9F27000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000EBC98800E8C37B00F2DDB500F0DA + AF00F1DBB200F1DCB200EFD6A800000000000000000000000000000000000000 + 00000000000000000000F2DEB800EDCF95000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000F8E1AD00E8A50D00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000E9A81500F5DAA1000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000F5E9D300E8C58200E6BE6F00E6BF7000E6BF7000E6BF7000E6BF + 7000E6BF7000E6BF7000E6BF7000E6BF7000E6BF7000E6BF7000E6BF7000E6BF + 7000E6BF7000E6BF7000E6BF7000E6BF7000E6BE6F00E8C47E00F5E7CE000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000E3D2B000DC930000D98F0000D8AD + 4A000000000000000000EAC68200D78F0000D78F0000DA9F2800000000000000 + 0000C59E5500DA910000DC920000EED2A2000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000F1D6A100EBC88500EBCB + 8C00EBCA8B00E9CA8C00F3E3C400E9C889000000000000000000000000000000 + 00000000000000000000F2DEB800EDCF95000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D9D0BC00F3AE1400E9A20000E8A50C00E8A5 + 0E00E8A50E00E8A50D00E9A70D00E8A50E00E8A50E00E8A50D00E8A50D00E8A5 + 0E00E8A50E00E8A50D00E9A20000E8A61000F4E1B50000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000D1A75C00DB920000D98F + 0000EAC9880000000000EAC68300D78F0000D78F0000DA9F280000000000F7EC + D700DC920000DD930000C19B4F00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000E2D7C000CC8B0800D890 + 0000D78F0000D7900000E2B66200EED3A1000000000000000000000000000000 + 00000000000000000000F2DEB800EDCF95000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000F2C56200E9AF2700F8EAC900F7E5BC00F7E5 + BC00F7E5BC00F7E5BC00F7E5BC00F7E5BC00F7E5BC00F7E5BC00F7E5BC00F7E5 + BC00F7E5BC00F7E5BC00F9EACB00EBB23000F0C5620000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000E0B04E00D88F + 0000E8C47C0000000000EAC68300D78F0000D78F0000DA9F280000000000F7EB + D500D7900000E7AF430000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000ECE0CB00DC96 + 0E00D78F0000D78F0000E1AE4900EED4A0000000000000000000000000000000 + 00000000000000000000F2DEB800EDCF95000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000F6CA6600E8B02E0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000E9B23800EDC4640000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000E7C2 + 7F00EBCC8E0000000000EAC68300D78F0000D78F0000DA9F280000000000F7ED + DA00E9C683000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000F5E5 + C700D8930A00D8900000E1AD4900EED4A1000000000000000000000000000000 + 00000000000000000000F2DEB800EDCF95000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000E7DCC500E6A30C00E8A60F00E9A81500E9AC + 2000E8AA1A00E8A81400E8A81500E8A81500E8A81500E8A81500E8A81400E8AA + 1A00E9AC2000E9A81500E6A61100E8A40800F2E1BC0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000EAC68300D78F0000D78F0000DA9F2800000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000F2E1C100D38C0000E0AD4700EFD5A2000000000000000000000000000000 + 00000000000000000000F2DEB800EDCF95000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000F8EFDC00F6DDA600F5DDA700E8A6 + 1100EFC56700F7E6C000F7E3B600F7E3B600F7E3B600F7E3B600F7E6BF00F0CA + 7200E9A60D00F6DDA400F5DDA500F9EED8000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000EAC68200D78F0000D78F0000DB9F2700000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D6CBB500E8B44F00ECD09D000000000000000000000000000000 + 00000000000000000000E9CB8F00E9CD95000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000ECB8 + 4300EAB23300F3D59100F3D38A00F3D38A00F3D38A00F3D38A00F3D59100EAB5 + 3B00EAB238000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000EBC88400D78F0000D78F0000DB9D2400000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000EED9B000EBCE9300EDD09800EDD09800EDD0 + 9800EDD09800EBCE9500EFDCBA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000EBBB5000EBB12C00EBB23000EBB23000EBB23000EBB23000EBB02C00F5C1 + 4B00E9E3DA000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000F3E7D400D7961600D8900000E7C78800000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000EBCE9400E7BF700000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000EFE9D400E5BA6600E5B96300E5B96300E5BA6500F5E7CD000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000F5EAD40000000000000000000000 + 000000000000F7EDDB00EED3A100E8C27900E5B96300E5BA6600E9C78400F2E3 + C500000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000EBD19B00D78F0000D78F0000D78F0000D78F0000EBCC8F000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000E7BE7000ECD19A00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000F5E8CF00DEA53500E2C284000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000E1B05200EACC930000000000F3E3 + C800E4BD6F00DB9F2700D58D0000D78F0000D78F0000D78F0000D78F0000D897 + 1600E3BD74000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000EBCB8D00D78F0000D78F0000D78F0000D78F0000E9C681000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000DEA84200D9A13100E1B86800E4BB + 6C00EED8AC000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000F4E5C800D78F0000D8900000DA9D2300F1E0BE00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D8981A00D78F0000DBA02C00D88F + 0000D78F0000D78F0000D78F0000D78F0000D78F0000D8900000D78F0000D78F + 0000D8900000D99C2600F6ECDB00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000EBCC8F00D78F0000D78F0000D78F0000D78F0000EAC783000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000E4B96700F4E4C60000000000F0E4 + CA00E6C27D00E3B55C00E8C47E00F4E7CD000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000F4E6C900D78F0000D78F0000D78F0000D7920B00F7EBD5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000F0E5D100D58D0000D78F0000D78F0000D78F + 0000D8900000D78F0000D7961600DEAB4400E2B35800DBA84400D7930D00D78F + 0000D78F0000D8900000D89A2300000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000EBCC8F00D78F0000D78F0000D78F0000D78F0000EAC783000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000E7BF7300ECD6AB00000000000000 + 00000000000000000000E5BD7000D7940E00F5EBD80000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000F4E6C900D78F0000D78F0000D78F0000D78F0000F2DFB9000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000EED19C00D78F0000D78F0000D78F0000D88F + 0000D89C2900F1DFBE000000000000000000000000000000000000000000E2B7 + 6200D7900000D78F0000DA910000D9AF56000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000EBCC8F00D78F0000D78F0000D78F0000D78F0000EAC783000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000EAC68400E6CB9300000000000000 + 000000000000E2C27F00D6941000D88F0000DFA9430000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000F4E6CA00D78F0000D78F0000D78F0000D78F0000F3E1BE000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000E1B35B00D7900000D78F0000D78F0000D78F + 0000D5920F00F0DCB60000000000000000000000000000000000000000000000 + 0000E1B76400D7900000D78F0000D68E0000F0E1C30000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000EBCC8F00D78F0000D78F0000D78F0000D78F0000EAC783000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000ECCF9700E7C7810000000000F2E4 + CA00DFA63700D8900000D78F0000D78F0000D78F0000EBCC9100000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000F4E7CC00D78F0000D78F0000D78F0000D78F0000F3E1C0000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D79C2700D8900000D88F0000D8900000D890 + 0000D78F0000D9991B00F5E9D300000000000000000000000000000000000000 + 000000000000DC9B2000D78F0000D8900000DEAD4C0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000ECD09700D78F0000D78F0000D78F0000D78F0000EBCA8B000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000EAD5AD00E4B76100EACA8D00D490 + 0700D88F0000D78F0000D78F0000D78F0000D78F0000D7940E00F7ECD9000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000E3BA6A00D8900000D78F0000D78F0000DA920000D6AC5E000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000F1E3CC00D78F0000D8951100DDA73B00E3BB6E00ECD3 + A300F5EAD4000000000000000000000000000000000000000000000000000000 + 000000000000E0C59500D9910000D78F0000D48E0400F3E9D500000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000F1ECDB00EACF9700EAC88600EAC88600EAC88600EAC88600EAC8 + 8600EAC88700E1AE4B00D78F0000D78F0000D78F0000D78F0000E0AC4500EAC8 + 8700EAC88600EAC88600EAC88600EAC88600EAC88600ECCE9300F7EBD7000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000F6EAD500D9910500D88F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000D78F0000DA910000D5A443000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000EED8AD00D8900000D78F0000D78F0000D78F0000D78F0000DA910000E5D1 + A100000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000F3E5CC000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000D7920800D78F0000D78F0000EBC98800000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000E7BD6D00D78F0000D78F0000D78F0000D78F0000D78F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000D78F0000D78E0000E2B86A000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000D8BB7900D9900000D78F + 0000D78F0000D78F0000D78F0000D78F0000D78F0000D88F0000DE930000BAAC + 8F00000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D7971700D8900000D78F0000D78F0000D78F0000D78F0000D88F0000D694 + 1000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000E1B76400E5BB6A00EFD7A80000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000E6BE6E00D78F0000D78F0000D78F0000D78F0000D78F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000D78F0000D78E0000E2B96E000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000D5A13C00DB92 + 0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D88F0000D896 + 0B00EEE9D8000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D2A4 + 5200DB920000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D990 + 0000DEA847000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000EFD8A900E6BB6A00D9AE5B00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000E6BE6E00D78F0000D78F0000D78F0000D78F0000D78F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000D78F0000D78E0000E2B96E000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000F5ECDA00DB97 + 0F00D88F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000DA91 + 0000DBA343000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000DBC39800DE94 + 0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F + 0000D9910000E6C68C0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000E8CB9100D88F0000D78F0000D8900100000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000F3E5CA0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000E6BC6D00D78F0000D78F0000D78F0000D78F0000D78F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000D78F0000D78E0000E1B76B000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D7C5 + A200D8900000D88F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F + 0000D9920000EAC7900000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000E9E2D500D6920C00D990 + 0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F + 0000D78F0000D6900800F2E3CB00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5910A00D88F0000DA910000DBBF87000000 + 000000000000000000000000000000000000000000000000000000000000F4E9 + D500ECD3A200E3BC7000DCA53900D8961300D78F0000F2E0C000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000F6EDDD00ECD09C00EBCB8C00EACB8D00EACB8D00EACB8D00EACB + 8D00EBCC8E00E1B04F00D78F0000D78F0000D78F0000D78F0000E0AD4800EBCC + 8E00EACB8D00EACB8D00EACB8D00EACB8D00EACB8C00ECD09900F7ECD8000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000DFB15D00DA910000D78F0000D78F0000D78F0000D78F0000D78F0000D78F + 0000D78F0000D68F0600F3E6CE00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000D39E3A00DB920000D78F + 0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F + 0000D78F0000D88F0000DDA32F00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000E3B45A00D78F0000D8900000D49517000000 + 00000000000000000000000000000000000000000000F7EDDA00D99B2000D78F + 0000D8900000D8900000D78F0000D78F0000DA9B1E0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000ECD09700D78F0000D78F0000D78F0000D78F0000EBCA8A000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D39B2500D8900000D78F0000D78F0000D78F0000D78F0000D78F + 0000D78F0000DF9E1E0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D8B97F00DD930000D78F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F + 0000D78F0000D78F0000DC930000CFAE72000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000EBE2D000D78F0000D78F0000DC920000D1A8 + 5500000000000000000000000000000000000000000000000000F3E2C300D694 + 1400D78F0000D78F0000D78F0000D8900000DAAA4F0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000EBCC8F00D78F0000D78F0000D78F0000D78F0000EAC783000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000EADCC400DB910600D78F0000D78F0000D78F0000D78F0000D88F + 0000DBA2310000000000E6CEA100E5C68D000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000EBDDC200D68F0400D88F0000D58E0100D58F + 0300D58F0300D58F0300D58F0300D58F0300D58F0300D58F0300D58F0300D58F + 0300D58F0300D58E0100D78F0000D98F0000E1D1B70000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000E3B76500D8900000D78F0000DB91 + 0000E1B257000000000000000000000000000000000000000000F0E0C000D89F + 3000D78F0000D78F0000D78F0000D88F0000E8CB8F0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000EBCC8F00D78F0000D78F0000D78F0000D78F0000EAC783000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000E4C58100DA920000D78F0000D8900000D9900000E2B7 + 5F0000000000EBD09E00D9900000D79719000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000DBA02900D8900000D78F0000DFA83D00E5B9 + 6300E5B86200E5B86200E5B86200E5B86200E5B86200E5B86200E5B86200E5B8 + 6200E5B96300E0AA4200D78F0000D9900000D69B260000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000D79C2D00D9900000D78F + 0000D8900000D5900900DAA53C00E3B35600DFA94100D7951600D8900000D88F + 0000D78F0000D78F0000D78F0000D88F0000F4E5C70000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000EBCC8F00D78F0000D78F0000D78F0000D78F0000EAC783000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000CA9B3E00DD930000D99F2E00EDDAB6000000 + 0000E3BB6C00D8900000D8900000E2B153000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D7930D00D78F0000D78F0000D78F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F0000D78F + 0000D78F0000D78F0000D78F0000D78F0000D996110000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000DCA23000D88F + 0000D88F0000D78F0000D8900000D78F0000D78F0000D78F0000D78F0000D88F + 0000D8900000DBA02C00D58E0000D59310000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000EBCC8F00D78F0000D78F0000D78F0000D78F0000EAC783000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000F5EBDB00EFD4A00000000000EED8AF00DCA0 + 2A00D78F0000D8900000D9981900F5EBD8000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000DB9E2600D8951100D8951100D8951100D895 + 1100D8951100D8951100D8951100D8951100D8951100D8951100D8951100D895 + 1100D8951100D8951100D8951100D8951100DB9F290000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000E7C4 + 7E00D6971B00D88F0000D78F0000D78F0000D78F0000D58E0100DA9E2500E4BC + 6E00F0E2C60000000000E9D1A100DDAC4A000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000EBCB8D00D78F0000D78F0000D78F0000D78F0000EAC681000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000DCA43800D9900000D88F + 0000D8900000D9A13400F5E8D200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000F3ECDA00EDCF9600E6BD6D00E5BB6700E9C68300F1DBB300000000000000 + 0000000000000000000000000000F6EEDE000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000EDD29C00D78F0000D78F0000D78F0000D78F0000EACC8F000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000E1BF7F00DD9F2700DEAA + 4300EDD09A000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000F7EDDB00E6BC6C00E5BB6800E5BB6800E6BC6B00F5EBD5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000424D3E000000000000003E000000 + 2800000080000000E00000000100010000000000000E00000000000000000000 + 000000000000000000000000FFFFFF00FFFFFFFF000000000000000000000000 + FFFFFFFF000000000000000000000000FFFFFFFF000000000000000000000000 + FFFFFFFF000000000000000000000000FFFFFFFF000000000000000000000000 + FFFFFFFF000000000000000000000000F8FFFFFF000000000000000000000000 + FC3FFFFF000000000000000000000000FE0FFFFF000000000000000000000000 + FE03FFFF000000000000000000000000FF00FFFF000000000000000000000000 + FF003FFF000000000000000000000000FF800FFF000000000000000000000000 + FF8003FF000000000000000000000000FFC000FF000000000000000000000000 + FFC0003F000000000000000000000000FFCFFC3F000000000000000000000000 + FFCFF0FF000000000000000000000000FF9FC3FF000000000000000000000000 + FF9F0FFF000000000000000000000000FF3C3FFF000000000000000000000000 + FF30FFFF000000000000000000000000FE43FFFF000000000000000000000000 + FE0FFFFF000000000000000000000000FC3FFFFF000000000000000000000000 + F8FFFFFF000000000000000000000000FFFFFFFF000000000000000000000000 + FFFFFFFF000000000000000000000000FFFFFFFF000000000000000000000000 + FFFFFFFF000000000000000000000000FFFFFFFF000000000000000000000000 + FFFFFFFF000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE007FFFFFFF3FFFFF00FFF + FFF3FFFFFFC003FFFFFFE1FFFFC003FFFFF1FFFFFFCC33FFFFFFC0FFFF8001FF + FFF8FFFFFFCC33FFFFFF8C7FFF0C30FFFFF83FFFFC0FF03FFFFF1E3FFE10087F + FFF81FFFF8CFF39FFFFE0E3FFE23C47FFFFC07FFF9CC139FFFFC047FFC47E23F + FFFC03FFF9CFF39FFFFC00FFFC4FF23FFC0000FFF9CFF39FFFF001FFFC1FF83F + FC00003FF9C0019FFFE003FFFC1FF83FFC00003FF9C0039FFFC007FFFC1FF83F + FC0000FFF93FFF9FFF800FFFFC1FF83FFFFC03FFF91FFF9FFF003FFFFC4FF23F + FFFC07FFF93FFF9FFE203FFFFC47E23FFFF81FFFF800001FFC707FFFFE23C47F + FFF83FFFFE00007FFC78FFFFFE10087FFFF8FFFFFFC003FFFE31FFFFFF0C30FF + FFF1FFFFFFCFF3FFFF03FFFFFF8001FFFFF3FFFFFFC003FFFF87FFFFFFC003FF + FFFFFFFFFFE007FFFFCFFFFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE00007FFFFF7FFFFFFFFFFFFFFC3FFF + FE00007FFFFE7FFFFFFFCFFFFFFC3FFFFE00007FFFFC3FFFFFFF8FFFFFFC3FFF + FE00007FFFFC3FFFFFFF1FFFFFFC3FFFFE00007FFFF81FFFFFFC1FFFFFFC3FFF + FE00007FFFF00FFFFFF81FFFFFFC3FFFFE00007FFFF00FFFFFE03FFFFE7C3E7F + FE00007FFFE007FFFFC03FFFFE0C307FFE00007FFFC003FFFF00003FFF0000FF + FE01807FFFC003FFFE00003FFF8001FFFE01807FFF8001FFFE00003FFFC003FF + FE00007FFF0000FFFF00003FFFC003FFFE00007FFE0C307FFFC03FFFFFE007FF + FE0BF07FFE7C3E7FFFE03FFFFFF00FFFFE0BF07FFFFC3FFFFFF81FFFFFF00FFF + FE0BF07FFFFC3FFFFFFC1FFFFFF81FFFFF0BF07FFFFC3FFFFFFF1FFFFFFC3FFF + FF80007FFFFC3FFFFFFF8FFFFFFC3FFFFFC0007FFFFC3FFFFFFFCFFFFFFE7FFF + FFE0007FFFFC3FFFFFFFFFFFFFFF7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE001FFFFFC003FFFE00007F + FFF3FFFFFCFFDFFFFF8001FFFE00007FFFE1FFFFFCFFDFFFFF1FF8FFFE01807F + FFC0FFFFFCF8007FFF381CFFFE01807FFF807FFFFCFBDF3FFF300CFFFF0080FF + FF003FFFFCFBDF3FFF300CFFFF0000FFFE001FFFFCFBDF3FFF21C4FFFF8001FF + FC000FFFFCFBDF3FFF31C4FFFFC003FFF80807FFFCFBDF3FFF300CFFFFF007FF + FC1C03FFFCFBDF3FFF381CFFFFFF7FFFFE3E01FFFC0BDF3FFF3C1CFFFFF81FFF + FF7F00FFFC03DF3FFF3FFCFFFFF00FFFFFFF807FFE03DF3FFF1FF8FFFFE007FF + FFFFC03FFF001F3FFE00007FFFE007FFFFFFE01FFF801F3FFE00007FFFE007FF + FFFFF01FFFC41F3FFE7FFE7FFFE007FFFFFFF87FFFE01F3FFE00007FFFE007FF + FFFFFCFFFFFF1F3FFF8421FFFFE007FFFFFFFFFFFFFF8F3FFFE007FFFFF00FFF + FFFFFFFFFFFFC03FFFF00FFFFFF81FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFF9FF9FFFFFFFFFFFFFFFE3FFF8001FFFF1FF8FFFFFFFFFF + FFFFFC3FFF3FFCFFFE0FF07FFFFFFFFFFFFFF83FFF3FFCFFFC07E03FFFFFFFFF + FFFFF07FFF3FFCFFF803C01FFFFFFFFFFFFFE0FFFF3FFCFFFC01801FF9FFFFFF + FFFFC1FFFF3FFCFFFE00007FF8FFFEFFFFFF83FFFF3FFCFFFF0000FFF81FFC3F + FFC007FFFF3FFCFFFF8001FFF803FC1FFF000FFFFF3FFCFFFFC003FFF803F83F + FE261FFFFF3FFCFFFFE007FFFC0FF07FFE4F1FFFFF3FFCFFFFE007FFFC07E07F + FC1F9FFFFF3FFCFFFFC003FFFC0000FFFC3F9FFFFF01FCFFFF8001FFFC0001FF + FC3F9FFFFF80FCFFFF0000FFFDE003FFFCFF9FFFFF80FCFFFE00007FFFF807FF + FE7F9FFFFFC0FCFFF801801FFFFC0FFFFE3F3FFFFFE0FCFFF803C01FFFFFFFFF + FF0C3FFFFFF0FCFFFC07E03FFFFFFFFFFF807FFFFFF8FCFFFE0FF07FFFFFFFFF + FFC1FFFFFFFE01FFFF1FF8FFFFFFFFFFFFFFFFFFFFFFFFFFFF9FFDFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFF81FFFFF8001FFFF8001FFFFFFFFFFFFF00FFF + FF3FFCFFFF8001FFFFFFFFFFFFC003FFFF3FFCFFFF3664FFFFFFFFFFFF8001FF + FF2004FFFF2004FFFFFFFFFFFF87E1FFFF2004FFFF2814FFFFFFFFFFFF0FF0FF + FF3FFCFFFF2814FFFFFFFFFFFF1FF87FFF2004FFFF2814FFFFFFFFFFFE1FF87F + FF2004FFFF2814FFF800001FFE3FFC7FFF3FFCFFFF2814FFF800001FFE3FFC7F + FF2004FFFF2814FFF800001FFE1F7C7FFF2004FFFF2814FFF800001FFE1C387F + FF3FFCFFFF2244FFF800001FFF1C38FFFF01FCFFFF3FFCFFF800001FFF0C30FF + FF80FCFFFE00007FFFFFFFFFFF8421FFFF80FCFFFE00007FFFFFFFFFFFC423FF + FFC0FCFFFE7FFE7FFFFFFFFFFFE427FFFFE0FCFFFE00007FFFFFFFFFFFFC3FFF + FFF0FCFFFF0000FFFFFFFFFFFFFC3FFFFFF8FCFFFFE007FFFFFFFFFFFFFC3FFF + FFFE01FFFFF007FFFFFFFFFFFFFC3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE7FFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFF81FFFFFFFFFFFFFFFFFFFFF780FFFFFF81FFFFF3FFFFF + FFF8FFFFFF2007FFFFF81FFFFF07FFFFFFF83FFFFF0001FFFFF81FFFFF20FFFF + FFF81FFFFE0001FFFFF81FFFFF3C7FFFFFF81FFFFE03E0FFFFF81FFFFF387FFF + FFF81FFFFE03F07FFFF81FFFFF203FFFFFF81FFFFE01F87FFFF81FFFFF001FFF + FFF81FFFFC07F83FF800001FFF001FFFFFF00FFFFEFFFC3FF800001FFF800FFF + FFF00FFFFFFFFC7FF800001FFFC007FFFFE007FFFE3FFFFFF800001FFFC007FF + FFC003FFFC3FFF7FF800001FFFE003FFFF8001FFFE1FE03FF800001FFFF001FF + FF8001FFFE1F807FFFF81FFFFFF803FFFF0000FFFE0FC07FFFF81FFFFFF804FF + FE00007FFF07C07FFFF81FFFFFFC08FFFE00007FFF80007FFFF81FFFFFFE10FF + FE00007FFFC000FFFFF81FFFFFFE40FFFE00007FFFE004FFFFF81FFFFFFF81FF + FFFFFFFFFFF03EFFFFF81FFFFFFF87FFFFFFFFFFFFFFFFFFFFF81FFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00000000000000000000000000000000 + 000000000000} + end + object ThreeColorBase: TcxStyleRepository + Left = 479 + Top = 251 + PixelsPerInch = 96 + object SHuangSe: TcxStyle + AssignedValues = [svColor, svFont, svTextColor] + Color = 4707838 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + TextColor = clBtnText + end + object SkyBlue: TcxStyle + AssignedValues = [svColor, svFont, svTextColor] + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + TextColor = clBlack + end + object Default: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object QHuangSe: TcxStyle + AssignedValues = [svColor, svFont] + Color = 8454143 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object Red: TcxStyle + AssignedValues = [svColor, svFont] + Color = clRed + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object FontBlue: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clBlue + end + object TextSHuangSe: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clOlive + end + object FonePurple: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindow + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clPurple + end + object FoneClMaroon: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clMaroon + end + object FoneRed: TcxStyle + AssignedValues = [svFont, svTextColor] + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clRed + end + object RowColor: TcxStyle + AssignedValues = [svColor] + Color = 16311512 + end + object handBlack: TcxStyle + AssignedValues = [svFont] + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + object cxBlue: TcxStyle + AssignedValues = [svColor, svFont] + Color = 16711731 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + end + object SHuangSeCu: TcxStyle + AssignedValues = [svColor, svFont, svTextColor] + Color = 4707838 + Font.Charset = GB2312_CHARSET + Font.Color = clBlack + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + TextColor = clRed + end + end + object cxImageList_bar: TcxImageList + SourceDPI = 96 + Height = 24 + Width = 24 + FormatVersion = 1 + Left = 272 + Top = 186 + Bitmap = { + 494C010134003800040018001800FFFFFFFF2110FFFFFFFFFFFFFFFF424D3600 + 00000000000036000000280000006000000050010000010020000000000000F8 + 0100000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000401090E3C03202E6D0530 + 46860531478703223170010B1041000000070000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000301060036051900680826 + 007F09270180061A006A01070039000000040000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000111053147871194D6EA14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF14B1FFFF129BE0EF0637508F00010218000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000D0825007D1C7F02E6229C02FF229C02FF229C + 02FF229C02FF229C02FF229C02FF1D8302E90928018300000010000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000030525108B + C8E2108FCDE50004072B00000000000000000000000000000000000000000000 + 000000000000000000000000000000000000545454DC717171FF717171FF7171 + 71FF717171FF717171FF717171FF717171FF717171FF717171FF717171FF7171 + 71FF717171FF717171FF717171FF717171FF1111116300000000229C02FF229C + 02FF229C02FF0000000000000000000000000000000000000000000000000000 + 000000000000010E154A1193D4E914B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF129DE1F002151E590000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000020A00421B7D02E4229C02FF229C02FF229C02FF229C02FF229C + 02FF229C02FF229C02FF229C02FF229C02FF229C02FF1D8202E9020C00490000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000001090D3A052C + 4080052C4080010A0F3E00000000000000000000000000000000000000000000 + 000000000000000000000000000000000000717171FF404040C01C1C1C801C1C + 1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C + 1C801C1C1C801C1C1C801C1C1C801C1C1C800707074000000000229C02FF229C + 02FF229C02FF0000000000000000000000000000000000000000000000000000 + 0000031A256214ADF9FC14B1FFFF14B1FFFF14B1FFFF14B1FFFF0C6490C00424 + 3474042434740A567DB314B1FFFF14B1FFFF14B1FFFF14B1FFFF14B0FDFE0426 + 3878000000000000000000000000000000000000000000000000000000000000 + 000004130059219602FB229C02FF229C02FF229C02FF229C02FF229C02FF229C + 02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229802FC0517 + 0063000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000717171FF1C1C1C80000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000229C02FF229C + 02FF229C02FF000000000000000000000000000000000000000000000000010D + 134614ADF9FC14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF05344C8B0000 + 0000000000000424347414B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B0 + FDFE02151F5A0000000000000000000000000000000000000000000000000209 + 0040219602FA229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C + 02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF2298 + 02FC020D004A0000000000000000000000000000000000000000000000000000 + 0000052C408014B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF052C + 408000000000000000000000000000000000717171FF1C1C1C8000000000D776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FF361E048000000000229C02FF229C02FF229C02FF229C02FF229C + 02FF229C02FF229C02FF229C02FF229C02FF00000000000000000000000D108D + CBE414B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF05344C8B0000 + 0000000000000424347414B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1 + FFFF129DE1F000010218000000000000000000000000000000000000000B1B7A + 02E2229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C + 02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C + 02FF1D8202E90000001000000000000000000000000000000000000000000000 + 00000217225E14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF0217 + 225E00000000000000000000000000000000717171FF1C1C1C8000000000D776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FF361E048000000000229C02FF229C02FF229C02FF229C02FF229C + 02FF229C02FF229C02FF229C02FF229C02FF000000000000000004283A7A14B1 + FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF0C70A0CA0534 + 4C8B05344C8B0C6490C014B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF0637508F0000000000000000000000000000000007210077229C + 02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C + 02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C + 02FF229C02FF0928018300000000000000000000000000000000000000000000 + 00000000000004293C7C14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF04293C7C0000 + 000000000000000000000000000000000000717171FF1C1C1C8000000000D776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FF361E048000000000229C02FF229C02FF229C02FF229C02FF229C + 02FF229C02FF229C02FF229C02FF229C02FF00000000000000011088C4E014B1 + FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF129BE0EF000000070000000000000000000000011B7802E0229C + 02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C + 02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C + 02FF229C02FF1D8302E900000004000000000000000000000000000000000000 + 0000000000000000000004293C7C14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF04293C7C000000000000 + 000000000000000000000000000000000000717171FF1C1C1C8000000000D776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FF361E048000000000000000000000000000000000229C02FF229C + 02FF229C02FF000000000000000000000000000000000005072B14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF010B104100000000000000000104002D229C02FF229C + 02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C + 02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C + 02FF229C02FF229C02FF01070039000000000000000000000000000000000000 + 00000000000000000000000000000843629E14B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF0843629E00000000000000000000 + 000000000000000000000000000000000000717171FF1C1C1C8000000000361E + 0480361E0480361E0480361E0480361E0480361E0480361E0480361E0480361E + 0480361E04800D070140000000001C1C1C800707074000000000229C02FF229C + 02FF229C02FF0000000000000000000000000000000002151F5A14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF0C6490C00424 + 3474042434740A567DB314B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF0422317000000000000000000414005E229C02FF229C + 02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C + 02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C + 02FF229C02FF229C02FF061A006A000000000000000000000000000000000000 + 0000000000000000000000000000052C408014B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF052C408000000000000000000000 + 000000000000000000000000000000000000717171FF1C1C1C80000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000717171FF1C1C1C8000000000229C02FF229C + 02FF229C02FF000000000000000000000000000000000422317114B1FFFF14B1 + FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF05344C8B0000 + 0000000000000424347414B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF05314787000000000000000007200075229C02FF229C + 02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C + 02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C + 02FF229C02FF229C02FF09270180000000000000000000000000000000000000 + 0000000000000000000000000000052C408014B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF052C408000000000000000000000 + 000000000000000000000000000000000000717171FF1C1C1C80000000003F3F + 3FBF3F3F3FBF3F3F3FBF3F3F3FBF3F3F3FBF3F3F3FBF3F3F3FBF3F3F3FBF3F3F + 3FBF3F3F3FBF1010106000000000717171FF1C1C1C8000000000000000000000 + 000000000000000000000000000000000000000000000422317014B1FFFF14B1 + FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF05344C8B0000 + 0000000000000424347414B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF053046860000000000000000071F0073229C02FF229C + 02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C + 02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C + 02FF229C02FF229C02FF09270180000000000000000000000000000000000000 + 0000000000000000000000000000052C408014B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF052C408000000000000000000000 + 000000000000000000000000000000000000717171FF1C1C1C80000000001010 + 1060101010601010106010101060101010601010106010101060101010601010 + 1060101010600404043000000000717171FF1C1C1C8000000000000000000000 + 0000000000000000000000000000000000000000000002141D5714B1FFFF14B1 + FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF05344C8B0000 + 0000000000000424347414B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF03202E6D00000000000000000414005C229C02FF229C + 02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C + 02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C + 02FF229C02FF229C02FF05190068000000000000000000000000000000000000 + 0000000000000000000000000000052C408014B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF052C408000000000000000000000 + 000000000000000000000000000000000000717171FF1C1C1C80000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000717171FF1C1C1C8000000000000000000000 + 000000000000000000000000000000000000000000000003052614B1FFFF14B1 + FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF05344C8B0000 + 0000000000000424347414B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF01090E3C00000000000000000004002A229C02FF229C + 02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C + 02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C + 02FF229C02FF229C02FF01060036000000000000000000000000000000000000 + 00000000000000000000000000000322317114B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF0427397900000000000000000000 + 000000000000000000000000000000000000717171FF1C1C1C80000000003F3F + 3FBF3F3F3FBF3F3F3FBF3F3F3FBF3F3F3FBF3F3F3FBF3F3F3FBF3F3F3FBF3F3F + 3FBF3F3F3FBF1010106000000000717171FF1C1C1C8000000000000000000000 + 00000000000000000000000000000000000000000000000000000F7FB8D914B1 + FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF05344C8B0000 + 0000000000000424347414B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF1194D6EA00000004000000000000000000000001197402DC229C + 02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C + 02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C + 02FF229C02FF1C7F02E600000003000000000000000000000000000000000000 + 000000000000000000000000000001080C3814B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF01090E3C00000000000000000000 + 000000000000000000000000000000000000717171FF1C1C1C80000000001010 + 1060101010601010106010101060101010601010106010101060101010601010 + 1060101010600404043000000000717171FF1C1C1C8000000000000000000000 + 00000000000000000000000000000000000000000000000000000322317014B1 + FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF05344C8B0000 + 0000000000000424347414B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF0531478700000000000000000000000000000000061E0071229C + 02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C + 02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C + 02FF229C02FF0825007D00000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000A5A83B714B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF14B1FFFF0A5982B60000000000000000000000000000 + 000000000000000000000000000000000000717171FF1C1C1C80000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000717171FF1C1C1C8000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000080F84 + BDDC14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF05344C8B0000 + 0000000000000424347414B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1 + FFFF1192D3E80000011100000000000000000000000000000000000000091975 + 02DD229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C + 02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C + 02FF1B7D02E40000000D00000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000001110A5E87BA14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF0A5A83B70000000F0000000000000000000000000000 + 000000000000000000000000000000000000717171FF1C1C1C80000000003F3F + 3FBF3F3F3FBF3F3F3FBF3F3F3FBF3F3F3FBF3F3F3FBF3F3F3FBF3F3F3FBF3F3F + 3FBF3F3F3FBF1010106000000000717171FF1C1C1C8000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000008 + 0C3813A7F1F814B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF05344C8B0000 + 0000000000000424347414B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14AD + F9FC010E154A0000000000000000000000000000000000000000000000000107 + 0038209402F8229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C + 02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF2196 + 02FB020A00420000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000006354D8C14B1 + FFFF14B1FFFF0638529100000000000000000000000000000000000000000000 + 000000000000000000000000000000000000717171FF1C1C1C80000000001010 + 1060101010601010106010101060101010601010106010101060101010601010 + 1060101010600404043000000000717171FF1C1C1C8000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000210184F13A7F1F814B1FFFF14B1FFFF14B1FFFF14B1FFFF0C70A0CA0534 + 4C8B05344C8B0C6490C014B1FFFF14B1FFFF14B1FFFF14B1FFFF14ACF7FB031A + 2663000000000000000000000000000000000000000000000000000000000000 + 0000030F004F209402F8229C02FF229C02FF229C02FF229C02FF229C02FF229C + 02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF219602FA0413 + 0059000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000304220F81 + BADA0F84BFDD0004052700000000000000000000000000000000000000000000 + 000000000000000000000000000000000000717171FF1C1C1C80000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000717171FF1C1C1C8000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000001080C380F83BDDC14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF108DCBE4010C12450000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000001070039197502DD229C02FF229C02FF229C02FF229C02FF229C + 02FF229C02FF229C02FF229C02FF229C02FF229C02FF1B7A02E2020900400000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000006F6F6FFC717171FF717171FF7171 + 71FF717171FF717171FF717171FF717171FF717171FF717171FF717171FF7171 + 71FF717171FF717171FF717171FF717171FF1C1C1C7F00000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000080321306F0F7FB7D814B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF14B1FFFF1089C4E004283A7A0000000D000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000009071E0071197402DC229C02FF229C02FF229C + 02FF229C02FF229C02FF229C02FF1B7802E0072100770000000B000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000D0D0D591C1C1C801C1C1C801C1C + 1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C + 1C801C1C1C801C1C1C801C1C1C801B1B1B7D0101012000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000003052502141D570321 + 306F0322317102151F5A0005072B000000010000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000010004002A0414005C071F + 0073071F00730414005D0104002D000000010000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000020804003322130266341D + 037E341D037E2313026709050036000000030000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000001E10 + 0260170C01540000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000C311B037BAB5D0DE3D77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFAD5F0DE5341D037E0000000E000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000391F0484D776 + 10FFC66D0FF50000000000000000000000000000000000000000000000000000 + 00000000000000000000D77610FFD77610FFD77610FFD77610FF361E04800000 + 000000000000361E0480D77610FFD77610FFD77610FFD77610FF000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000C07003EA85C0DE2D77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFAD5F0DE50E0801430000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000319246114B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF031C + 2866000000000000000000000000000000000000000000000000000000000000 + 000011111164717171FF717171FF717171FF717171FF717171FF717171FF7171 + 71FF717171FF717171FF707070FE1111116500000000391F0484D77610FFD776 + 10FF311B037A0000000000000000000000000000000000000000000000000000 + 00000000000000000000D77610FFD77610FFD77610FFD77610FF361E04800000 + 000000000000361E0480D77610FFD77610FFD77610FFD77610FF000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000180D0257CF7210FAD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD07210FB1C0F + 025D000000000000000000000000000000000000000000000000000000000000 + 0000052C408014B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF052C + 4080000000000000000000000000000000000000000000000000000000000000 + 00001C1C1C80717171FF1C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C + 1C801C1C1C801C1C1C800B0B0B5200000000391F0484D77610FFD77610FF321C + 037C000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000D77610FFD77610FFD77610FFD77610FF361E04800000 + 000000000000361E0480D77610FFD77610FFD77610FFD77610FF000000000000 + 0000000000000000000000000000000000000000000000000000000000000C06 + 003DCE7110FAD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD072 + 10FB0E0801430000000000000000000000000000000000000000000000000000 + 0000052C408014B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF052C + 4080000000000000000000000000000000000000000000000000000000000000 + 00001C1C1C80717171FF00000000000000000000000000000000000000000000 + 0000000000000000000000000000391F0484D77610FFD77610FF321C037C0000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000D77610FFD77610FFD77610FFD77610FF361E04800000 + 000000000000361E0480D77610FFD77610FFD77610FFD77610FF000000000000 + 00000000000000000000000000000000000000000000000000000000000BA65B + 0DE0D77610FFD77610FFD77610FFD77610FFD77610FF00000000000000000000 + 0000000000000000000000000000D77610FFD77610FFD77610FFD77610FFD776 + 10FFAD5F0DE50000000E00000000000000000000000000000000000000000000 + 0000052C408014B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF095479B00000 + 000000000000094C6EA814B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF052C + 4080000000000000000000000000000000000000000000000000000000000000 + 00001C1C1C80717171FF000000000000000000000000000000000E0801438448 + 0AC8D27410FCBD680EEF774209BED77610FFD77610FF321C037C000000000000 + 0014000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000D77610FFD77610FFD77610FFD77610FF361E04800000 + 000000000000361E0480D77610FFD77610FFD77610FFD77610FF000000000000 + 00000000000000000000000000000000000000000000000000002E190376D776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FF361E04800D0701400000 + 0000000000000D070140361E0480D77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FF341D037E00000000000000000000000000000000000000000000 + 0000052C408014B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF13A7F1F80000 + 01100000000B13A2E9F414B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF052C + 4080000000000000000000000000000000000000000000000000000000000000 + 00001C1C1C80717171FF0000000000000000000000000D070141D07210FBD776 + 10FFD77610FFD77610FFD77610FFD77610FF331C037D00000000111111651B1B + 1B7F000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000D77610FFD77610FFD77610FFD77610FF361E04800000 + 000000000000361E0480D77610FFD77610FFD77610FFD77610FF000000000000 + 0000000000000000000000000000000000000000000000000001A45A0DDFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FF361E04800000 + 000000000000361E0480D77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFAD5F0DE500000003000000000000000000000000000000000000 + 0000052C408014B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF0319 + 246002141E5814B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF052C + 4080000000000000000000000000000000000000000000000000000000000000 + 00001C1C1C80717171FF0000000000000000000000007D4509C3D77610FFD776 + 10FFC36B0FF3D77610FFD77610FFD77610FF140A014E00000000707070FE1C1C + 1C80000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000D77610FFD77610FFD77610FFD77610FF361E04800000 + 000000000000361E0480D77610FFD77610FFD77610FFD77610FF000000000000 + 000000000000000000000000000000000000000000000703002ED77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FF361E04800000 + 000000000000361E0480D77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FF09050036000000000000000000000000000000000000 + 0000052C408014B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF0F82BCDB0002 + 031E0002021B0F7DB5D714B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF052C + 4080000000000000000000000000000000000000000000000000000000000000 + 00001C1C1C80717171FF000000000000000000000000C66D0FF5C56C0FF40F08 + 014500000002643708AED77610FFD77610FF341D047E00000000717171FF1C1C + 1C8000000000000000000000000000000000000000000201001E361E0480361E + 0480361E0480361E0480D77610FFD77610FFD77610FFD77610FF7A4309C0361E + 0480361E04807A4309C0D77610FFD77610FFD77610FFD77610FF361E0480361E + 0480361E0480361E04800201001E00000000000000001E100260D77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FF361E04800000 + 000000000000361E0480D77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FF23130268000000000000000000000000000000000000 + 0000052C408014B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF05344C8B0000 + 000000000000052F448414B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF052C + 4080000000000000000000000000000000000000000000000000000000000000 + 00001C1C1C80717171FF00000000000000000000000098530BD60D07003F0000 + 000000000000391F0484D77610FFD77610FF2615026D00000000717171FF1C1C + 1C80000000000000000000000000000000000000000000000000321C037CD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FF321C037C0000000000000000000000002E190377D77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FF361E04800000 + 000000000000361E0480D77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FF341D047E000000000000000000000000000000000000 + 0000052C408014B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF0F85BFDD0003 + 0525000304220F7FB7D814B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF052C + 4080000000000000000000000000000000000000000000000000000000000000 + 00001C1C1C80717171FF00000000000000000000000001000012000000000000 + 00000D07003FC56C0FF4D77610FFC76E0FF50201001B00000000717171FF1C1C + 1C8000000000000000000000000000000000000000000000000000000000321C + 037CD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FF321C037C000000000000000000000000000000002D190376D77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FF361E04800000 + 000000000000361E0480D77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FF341D047E000000000000000000000000000000000000 + 0000052C408014B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF052C + 4080000000000000000000000000000000000000000000000000000000000000 + 00001C1C1C80717171FF00000000000000000000000000000000000000000D07 + 003FC56C0FF4D77610FFC56C0FF4160C01520000000000000000717171FF1C1C + 1C80000000000000000000000000000000000000000000000000000000000000 + 0000321C037CD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FF321C + 037C00000000000000000000000000000000000000001D10025FD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FF361E04800D0701400000 + 000000000000361E0480D77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FF22130267000000000000000000000000000000000000 + 0000052C408014B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF052C + 4080000000000000000000000000000000000000000000000000000000000000 + 00001C1C1C80717171FF00000000000000000000000000000000000000000905 + 00362C1803742213026601010018000000000000000000000000717171FF1C1C + 1C80000000000000000000000000000000000000000000000000000000000000 + 000000000000321C037CD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FF321C037C0000 + 000000000000000000000000000000000000000000000603002CD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FF00000000000000000000 + 000000000000361E0480D77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FF08040034000000000000000000000000000000000000 + 00000217215D14ADFBFD14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14ADFBFD031A + 2562000000000000000000000000000000000000000000000000000000000000 + 00001C1C1C80717171FF00000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000717171FF1C1C + 1C80000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000321C037CD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FF321C037C000000000000 + 0000000000000000000000000000000000000000000000000001A1580CDDD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFAA5D0DE300000002000000000000000000000000000000000000 + 0000000000000000000000000000052C408014B1FFFF00000000000000000000 + 000000000000000000000000000014B1FFFF052C408000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00001C1C1C80717171FF00000000000000000000000000000000000000000000 + 00000000000011111164717171FF717171FF717171FF717171FF717171FF1818 + 1877000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000321C037CD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FF321C037C00000000000000000000 + 00000000000000000000000000000000000000000000000000002B170373D776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD57510FE512C + 069D4D2B0599D37410FDD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FF311B037B00000000000000000000000000000000000000000000 + 000000000000000000000000000005293C7C14B1FFFF00000005000000000000 + 000000000000000000000000000114B1FFFF052C408000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00001C1C1C80717171FF00000000000000000000000000000000000000000000 + 0000000000001C1C1C80717171FF717171FF717171FF717171FF383838B40000 + 0007000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000321C037CD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FF321C037C0000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000009A058 + 0CDCD77610FFD77610FFD77610FFD77610FFD77610FFD77610FF562F06A10000 + 0000000000004E2B0599D77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFA85C0DE20000000C00000000000000000000000000000000000000000000 + 00000000000000000000000000000216205B14B1FFFF00070B36000000000000 + 000000000000000000000005082E14B1FFFF031A266300000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00001C1C1C80717171FF00000000000000000000000000000000000000000000 + 0000000000001C1C1C80717171FF717171FF717171FF383838B4000000070000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000321C037CD77610FFD776 + 10FFD77610FFD77610FF321C037C000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000A05 + 0038CB700FF8D77610FFD77610FFD77610FFD77610FFD77610FF593107A40000 + 000000000000512C069DD77610FFD77610FFD77610FFD77610FFD77610FFCF72 + 10FA0C07003E0000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000F1299DCED0C6C9BC70000000E0000 + 0000000000000000000C0C6592C1129EE3F10000011300000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00001C1C1C80717171FF00000000000000000000000000000000000000000000 + 0000000000001C1C1C80717171FF717171FF383838B400000007000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000321C037CD776 + 10FFD77610FF321C037C00000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000150B0150CB7010F8D77610FFD77610FFD77610FFD77610FFD57610FE5A31 + 07A5562F06A2D57510FED77610FFD77610FFD77610FFD77610FFCE7110FA180D + 0257000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000210184F14A9F5FA108FCDE5063A + 549306395392108BC8E214ABF7FB02141C560000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00001C1C1C80717171FF1C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C + 1C801C1C1C80404040C0717171FF383838B40000000700000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000321C + 037C321C037C0000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000A050038A0580CDCD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFA65B0DE00C06003D0000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000070B360A577FB4129C + E1F0129EE3F10A5A83B701090D3A000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000F0F0F606F6F6FFD717171FF717171FF717171FF717171FF717171FF7171 + 71FF717171FF717171FF383838B4000000070000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000092B180373A1580CDDD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFA45A0DDF2E1903760000000B000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000010603002B1D10025E2D19 + 03762D1903761D10025F0603002D000000010000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000361E + 0480361E0480361E0480361E0480361E0480361E0480361E0480361E0480361E + 0480361E0480361E0480361E0480361E0480361E0480361E0480361E0480361E + 0480361E04800000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FF0000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FF0000000000000000000000000000000000000000000000002514 + 026B0000000D0000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000001D10025E361E + 04801F1102620000000000000000000000000000000000000000000000000000 + 000003020023351D037F361E0480361E0480361E0480361E0480361E0480361E + 0480361E0480361E0480361E0480361E0480361E0480361E0480351D037F0402 + 0023000000000000000000000000000000000000000000000000000000000000 + 000003020023351D037F361E0480361E0480361E0480351D037F040200260000 + 00000000000003010020351D037F361E0480361E0480361E0480351D037F0402 + 002300000000000000000000000000000000000000000000000000000000C96E + 0FF7D77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD57510FE000000000000000000000000000000000000000000000000D776 + 10FFAB5D0DE3160C015300000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000D37410FDD776 + 10FFD77610FF0000000000000000000000000000000000000000000000000000 + 0000341D047ED77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FF361E + 0480000000000000000000000000000000000000000000000000000000000000 + 0000341D047ED77610FFD77610FFD77610FFD77610FFD77610FF361E04800000 + 000000000000341D047ED77610FFD77610FFD77610FFD77610FFD77610FF361E + 048000000000000000000000000000000000000000000000000000000000A35A + 0DDED77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFAC5F0DE4000000000000000000000000000000000000000000000000D776 + 10FFD77610FFD77610FF6C3B08B5030200210000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000D77610FFD776 + 10FFD77610FF0000000000000000000000000000000000000000000000000000 + 0000361E0480D77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FF361E + 0480000000000000000000000000000000000000000000000000000000000000 + 0000361E0480D77610FFD77610FFD77610FFD77610FFD77610FF361E04800000 + 000000000000361E0480D77610FFD77610FFD77610FFD77610FFD77610FF361E + 0480000000000000000000000000000000000000000000000000000000004929 + 0596D77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FF4F2C069B000000000000000000000000000000000000000000000000D776 + 10FFD77610FFD77610FFD77610FFC76E0FF5301B037A00000006000000000000 + 0000000000000000000000000000000000000000000000000000D77610FFD776 + 10FFD77610FF0000000000000000000000000000000000000000000000000000 + 0000361E0480D77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FF361E + 0480000000000000000000000000000000000000000000000000000000000000 + 0000361E0480D77610FFD77610FFD77610FFD77610FFD77610FF361E04800000 + 000000000000361E0480D77610FFD77610FFD77610FFD77610FFD77610FF361E + 0480000000000000000000000000000000000000000000000000000000000101 + 00189F570CDBD77610FFD77610FFD77610FFD77610FFD77610FFCD7010F94D2A + 05994A290596CB7010F8D77610FFD77610FFD77610FFD77610FFD77610FFA359 + 0DDE02010019000000000000000000000000000000000000000000000000D776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FF96530BD50D07003F0000 + 0000000000000000000000000000000000000000000000000000D77610FFD776 + 10FFD77610FF0000000000000000000000000000000000000000000000000000 + 0000361E0480D77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FF361E + 0480000000000000000000000000000000000000000000000000000000000000 + 0000361E0480D77610FFD77610FFD77610FFD77610FFD77610FF361E04800000 + 000000000000361E0480D77610FFD77610FFD77610FFD77610FFD77610FF361E + 0480000000000000000000000000000000000000000000000000000000000000 + 00000000000D2F1A03789A550BD8D77610FFD77610FFD37410FD1109014A0000 + 0000000000000E080143D07210FBD77610FFD77610FFA3590DDE311B037B0000 + 000E00000000000000000000000000000000000000000000000000000000D776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD57610FE532D + 069F010000150000000000000000000000000000000000000000D77610FFD776 + 10FFD77610FF0000000000000000000000000000000000000000000000000000 + 0000361E0480D77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FF361E + 0480000000000000000000000000000000000000000000000000000000000000 + 0000361E0480D77610FFD77610FFD77610FFD77610FFD77610FF361E04800000 + 000000000000361E0480D77610FFD77610FFD77610FFD77610FFD77610FF361E + 0480000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000D07014097530BD645260591000000000000 + 000000000000000000003E2204899F580CDC1109014A00000001000000000000 + 000000000000000000000000000000000000000000000000000000000000D776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFB9650EED2012026400000002000000000000000000000000D77610FFD776 + 10FFD77610FF0000000000000000000000000000000000000000000000000000 + 0000361E0480D77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FF361E + 0480000000000000000000000000000000000000000000000000000000000000 + 0000361E0480D77610FFD77610FFD77610FFD77610FFD77610FF361E04800000 + 000000000000361E0480D77610FFD77610FFD77610FFD77610FFD77610FF361E + 0480000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000001000015010000120201001D2B18 + 03732C180374030100200000000E0201001A0000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FF7F4609C40603002D0000000000000000D77610FFD776 + 10FFD77610FF0000000000000000000000000000000000000000000000000000 + 0000361E0480D77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FF361E + 0480000000000000000000000000000000000000000000000000000000000000 + 0000361E0480D77610FFD77610FFD77610FFD77610FFD77610FF361E04800000 + 000000000000361E0480D77610FFD77610FFD77610FFD77610FFD77610FF361E + 0480000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000009050036BF690FF0D776 + 10FFD77610FFC56C0FF40D070140000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFCF7210FB160C015200000000D77610FFD776 + 10FFD77610FF0000000000000000000000000000000000000000000000000000 + 0000361E0480D77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FF361E + 0480000000000000000000000000000000000000000000000000000000000000 + 0000361E0480D77610FFD77610FFD77610FFD77610FFD77610FF361E04800000 + 000000000000361E0480D77610FFD77610FFD77610FFD77610FFD77610FF361E + 0480000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000049B550BD9D77610FFD776 + 10FFD77610FFD77610FFAB5E0DE4000000090000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD17310FC4124048D0000000C00000000D77610FFD776 + 10FFD77610FF0000000000000000000000000000000000000000000000000000 + 0000361E0480D77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FF361E + 0480000000000000000000000000000000000000000000000000000000000000 + 0000361E0480D77610FFD77610FFD77610FFD77610FFD77610FF361E04800000 + 000000000000361E0480D77610FFD77610FFD77610FFD77610FFD77610FF361E + 0480000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000130A014DD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FF1B0E025B0000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FF864A0ACA07040031000000000000000000000000D77610FFD776 + 10FFD77610FF0000000000000000000000000000000000000000000000000000 + 0000361E0480D77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FF361E + 0480000000000000000000000000000000000000000000000000000000000000 + 0000361E0480D77610FFD77610FFD77610FFD77610FFD77610FF361E04800000 + 000000000000361E0480D77610FFD77610FFD77610FFD77610FFD77610FF361E + 0480000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000890500BD1D77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFA35A0DDE0000000B00000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFC069 + 0FF12615026C0000000300000000000000000000000000000000D77610FFD776 + 10FFD77610FF0000000000000000000000000000000000000000000000000000 + 0000361E0480D77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FF361E + 0480000000000000000000000000000000000000000000000000000000000000 + 0000361E0480D77610FFD77610FFD77610FFD77610FFD77610FF361E04800000 + 000000000000361E0480D77610FFD77610FFD77610FFD77610FFD77610FF361E + 0480000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000009050037D77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FF0D07014000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FF603507AA0201 + 001A000000000000000000000000000000000000000000000000D77610FFD776 + 10FFD77610FF0000000000000000000000000000000000000000000000000000 + 0000361E0480D77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FF361E + 0480000000000000000000000000000000000000000000000000000000000000 + 0000361E0480D77610FFD77610FFD77610FFD77610FFD77610FF361E04800000 + 000000000000361E0480D77610FFD77610FFD77610FFD77610FFD77610FF361E + 0480000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000001E110261D77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FF1A0E025900000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D776 + 10FFD77610FFD77610FFD77610FFD77610FFA45A0DDF120A014A000000000000 + 0000000000000000000000000000000000000000000000000000D77610FFD776 + 10FFD77610FF0000000000000000000000000000000000000000000000000000 + 0000361E0480D77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FF361E + 0480000000000000000000000000000000000000000000000000000000000000 + 0000361E0480D77610FFD77610FFD77610FFD77610FFD77610FF361E04800000 + 000000000000361E0480D77610FFD77610FFD77610FFD77610FFD77610FF361E + 0480000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000001109014AD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FF150B015100000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D776 + 10FFD77610FFD77610FFCF7210FA3D2204890000000B00000000000000000000 + 0000000000000000000000000000000000000000000000000000D77610FFD776 + 10FFD77610FF0000000000000000000000000000000000000000000000000000 + 0000341D047ED77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FF361E + 0480000000000000000000000000000000000000000000000000000000000000 + 0000341D047ED77610FFD77610FFD77610FFD77610FFD77610FF361E04800000 + 000000000000341D047ED77610FFD77610FFD77610FFD77610FFD77610FF361E + 0480000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000029160370D77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FF321C047C00000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D776 + 10FFD77610FF81460AC50603002E000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000D77610FFD776 + 10FFD77610FF0000000000000000000000000000000000000000000000000000 + 000003020022331C037D361E0480361E0480361E0480361E0480361E0480361E + 0480361E0480361E0480361E0480361E0480361E0480361E0480331C037D0302 + 0023000000000000000000000000000000000000000000000000000000000000 + 000003020022331C037D361E0480361E0480361E0480341D037E040200250000 + 0000000000000301001F331C037D361E0480361E0480361E0480331C037D0302 + 0023000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000002615026DD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FF180D025600000000000000000000 + 000000000000000000000000000000000000000000000000000000000000AB5E + 0DE4231302670000000200000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000009B550BD9D776 + 10FFA45A0DDF0000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000008040033D77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD57610FE100801460000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000044250590D77610FFD77610FFD776 + 10FFD77610FFCF7210FA2C190375000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000009050035291603702E19 + 03771C0F025D0201001A00000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000020202251C1C1C7F1C1C + 1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C + 1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C800202 + 0229000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000001B1B1B7E717171FF7171 + 71FF717171FF717171FF717171FF717171FF717171FF717171FF717171FF7171 + 71FF717171FF717171FF717171FF717171FF717171FF717171FF717171FF1C1C + 1C80000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000001C1C1C80717171FF7171 + 71FF717171FF717171FF717171FF717171FF717171FF717171FF717171FF7171 + 71FF717171FF717171FF717171FF717171FF717171FF717171FF717171FF1C1C + 1C80000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000051B0F025C000000000000 + 000000000000000000000000000000000000000000001C1C1C80717171FF7171 + 71FF404040C01C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C + 1C801C1C1C801C1C1C801C1C1C801C1C1C80404040C0717171FF717171FF1C1C + 1C80000000001C1C1C800202022900000000000000000000000000000000031E + 2C6B052C4080052C4080052C4080052C4080052C4080052C4080052C4080052C + 4080052C4080052C4080052C4080052C4080052C4080052C4080021119510000 + 0000000000000000000000000000000000000000000000000000000000001F11 + 0262361E04802212026600000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00072615026C0000000700000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000B06003C93510BD3D77610FF000000000000 + 000000000000000000000000000000000000000000001C1C1C80717171FF7171 + 71FF1C1C1C800000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000001C1C1C80717171FF717171FF1C1C + 1C8000000000717171FF1C1C1C8000000000000000000005082F00000003031E + 2B6A14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14ADF9FC0004 + 072B00000000000000000000000000000000000000000000000000000000D374 + 10FDD77610FFD77610FF00000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000000F0801449B55 + 0BD9D77610FF0101001800000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000001000013512C069DD57510FED77610FFD77610FF000000000000 + 000000000000000000000000000000000000000000001C1C1C80717171FF7171 + 71FF1C1C1C800000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000001C1C1C80717171FF717171FF1C1C + 1C8000000000717171FF1C1C1C800000000000000000010B104001080C390000 + 00040F7CB3D614B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF0A57 + 7DB300000000000000000000000000000000000000000000000000000000D776 + 10FFD77610FFD77610FF00000000000000000000000000000000000000000000 + 000000000000000000000000000000000000020100195B3207A7D77610FFD776 + 10FFD77610FF0101001800000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00011F110261B6640EEBD77610FFD77610FFD77610FFD77610FF000000000000 + 000000000000000000000000000000000000000000001C1C1C80717171FF7171 + 71FF1C1C1C800000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000001C1C1C80717171FF717171FF1C1C + 1C8000000000717171FF1C1C1C800000000000000000010B1040042536760000 + 0009010F154B14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1 + FFFF010B1041000000000000000000000000000000000000000000000000D776 + 10FFD77610FFD77610FF00000000000000000000000000000000000000000000 + 00000000000000000000000000032715026DBF690FF0D77610FFD77610FFD776 + 10FFD77610FF0101001800000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000000603002B7C44 + 09C2D77610FFD77610FFD77610FFD77610FFD77610FFD77610FF000000000000 + 000000000000000000000000000000000000000000001C1C1C80717171FF7171 + 71FF1C1C1C800000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000001C1C1C80717171FF717171FF1C1C + 1C8000000000717171FF1C1C1C800000000000000000010B1040042B3F7F010C + 1245000000000A5F89BB14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1 + FFFF0D71A3CC000000020000000000000000000000000000000000000000D776 + 10FFD77610FFD77610FF00000000000000000000000000000000000000000000 + 000000000000090500368B4C0BCDD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FF0101001800000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000A3C210487CE7110FAD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FF000000000000 + 000000000000000000000000000000000000000000001C1C1C80717171FF7171 + 71FF717171FF717171FF717171FF717171FF717171FF717171FF717171FF7171 + 71FF717171FF717171FF717171FF717171FF717171FF717171FF717171FF1C1C + 1C8000000000717171FF1C1C1C800000000000000000010B1040042B3F7F0428 + 3B7B000001100006082F14ADFBFD14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF0216205B0000000000000000000000000000000000000000D776 + 10FFD77610FFD77610FF00000000000000000000000000000000000000000000 + 001149290596D37410FDD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FF0101001800000000000000000000000000000000000000000000 + 0000000000000000000000000000120A014BA45A0DDFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FF000000000000 + 000000000000000000000000000000000000000000001C1C1C80717171FF7171 + 71FF717171FF717171FF717171FF717171FF717171FF717171FF717171FF7171 + 71FF717171FF717171FF717171FF717171FF717171FF717171FF717171FF1C1C + 1C8000000000717171FF1C1C1C800000000000000000010B1040042B3F7F042B + 3F7F02121A52000000000742609D14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF0F87C3DF0000000800000000000000000000000000000000D776 + 10FFD77610FFD77610FF000000000000000000000000000000011C0F025CB261 + 0EE8D77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FF0101001800000000000000000000000000000000000000000000 + 0000000000000201001C633608ADD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FF000000000000 + 000000000000000000000000000000000000000000001C1C1C80717171FF7171 + 71FF717171FF717171FF717171FF717171FF717171FF717171FF717171FF7171 + 71FF717171FF717171FF717171FF717171FF717171FF717171FF717171FF1C1C + 1C8000000000717171FF1C1C1C800000000000000000010B1040042B3F7F042B + 3F7F042B3E7E0001021A0001021A13A2E9F414B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF0319246100000000000000000000000000000000D776 + 10FFD77610FFD77610FF000000000000000005030029784209BFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FF0101001800000000000000000000000000000000000000000000 + 00000F080145C36B0FF3D77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FF000000000000 + 000000000000000000000000000000000000000000001C1C1C80717171FF7171 + 71FF1C1C1C800000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000001C1C1C80717171FF717171FF1C1C + 1C8000000000717171FF1C1C1C800000000000000000010B1040042B3F7F042B + 3F7F042B3F7F0218225E00000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D776 + 10FFD77610FFD77610FF00000000120A014BCD7010F9D77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FF0101001800000000000000000000000000000000000000000000 + 0000000000114E2B069AD57510FED77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FF000000000000 + 000000000000000000000000000000000000000000001C1C1C80717171FF7171 + 71FF1C1C1C80000000001C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C + 1C80000000000000000000000000000000001C1C1C80717171FF717171FF1C1C + 1C8000000000717171FF1C1C1C800000000000000000010B1040042B3F7F042B + 3F7F042B3F7F042B3F7F02151F5A010B1040010B1040010B1040010B1040010B + 1040010B1040010B1040010B1040000000000209004009270180092701800209 + 004000000000000000000000000000000000000000000000000000000000D776 + 10FFD77610FFD77610FF000000000000000A3C210488CF7210FAD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FF0101001800000000000000000000000000000000000000000000 + 000000000000000000000B06003A91500BD1D77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FF000000000000 + 000000000000000000000000000000000000000000001C1C1C80717171FF7171 + 71FF1C1C1C8000000000717171FF717171FF717171FF717171FF717171FF7171 + 71FF000000000000000000000000000000001C1C1C80717171FF717171FF1C1C + 1C8000000000717171FF1C1C1C800000000000000000010B1040042B3F7F042B + 3F7F042B3F7F042B3F7F042B3F7F042B3F7F042B3F7F042B3F7F042B3F7F042B + 3F7F042B3F7F042B3F7F042B3F7F0000000009270180229C02FF229C02FF0927 + 018000000000000000000000000000000000000000000000000000000000D776 + 10FFD77610FFD77610FF0000000000000000000000000603002C7E4509C3D776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FF0101001800000000000000000000000000000000000000000000 + 0000000000000000000000000000000000052C180374C46C0FF4D77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FF000000000000 + 000000000000000000000000000000000000000000001C1C1C80717171FF7171 + 71FF1C1C1C8000000000717171FF1C1C1C8000000000717171FF717171FF7171 + 71FF000000000000000000000000000000001C1C1C80717171FF717171FF1C1C + 1C8000000000717171FF1C1C1C800000000000000000010B1040042B3F7F042B + 3F7F042B3F7F042B3F7F042B3F7F042B3F7F042B3F7F042B3F7F042B3F7F042B + 3F7F042B3F7F042B3F7F042B3F7F0000000009270180229C02FF229C02FF0927 + 018000000000000000000000000000000000000000000000000000000000D776 + 10FFD77610FFD77610FF00000000000000000000000000000000000000012011 + 0263B8650EECD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FF0101001800000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000201001E663808B0D776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FF000000000000 + 000000000000000000000000000000000000000000001C1C1C80717171FF7171 + 71FF1C1C1C8000000000717171FF1C1C1C8000000000717171FF717171FF7171 + 71FF000000000000000000000000000000001C1C1C80717171FF717171FF1C1C + 1C8000000000717171FF1C1C1C800000000000000000010B1040042B3F7F042B + 3F7F042B3F7F042B3F7F042B3F7F042B3F7F042B3F7F010B1040010B1040010B + 1040010B1040010B1040010B10400000000009270180229C02FF229C02FF0927 + 018000000000000000000000000000000000000000000000000000000000D776 + 10FFD77610FFD77610FF00000000000000000000000000000000000000000000 + 000001000015552E06A0D57610FED77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FF0101001800000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000140A + 014EA65B0DE0D77610FFD77610FFD77610FFD77610FFD77610FF000000000000 + 000000000000000000000000000000000000000000001C1C1C80717171FF7171 + 71FF1C1C1C8000000000717171FF1C1C1C8000000000717171FF717171FF7171 + 71FF000000000000000000000000000000001C1C1C80717171FF717171FF1C1C + 1C8000000000717171FF1C1C1C800000000000000000010B1040042B3F7F042B + 3F7F042B3F7F042B3F7F042B3F7F042B3F7F042B3F7F00000000000000000000 + 00000000000000000000000000000000000009270180229C02FF229C02FF0927 + 018000000000000000000000000000000000000000000000000000000000D776 + 10FFD77610FFD77610FF00000000000000000000000000000000000000000000 + 000000000000000000000D07014098530BD6D77610FFD77610FFD77610FFD776 + 10FFD77610FF0101001800000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000B3E220489CF7210FAD77610FFD77610FFD77610FF000000000000 + 000000000000000000000000000000000000000000001B1B1B7E717171FF7171 + 71FF1C1C1C8000000000717171FF717171FF717171FF717171FF717171FF7171 + 71FF000000000000000000000000000000001C1C1C80717171FF717171FF1C1C + 1C8000000000717171FF1C1C1C800000000000000000010A0F3F042B3F7F042B + 3F7F042B3F7F042B3F7F042B3F7F042B3F7F042B3F7F00000000000000000000 + 0000000000000002001E197502DD229C02FF229C02FF229C02FF229C02FF229C + 02FF229C02FF197502DD0002001E00000000000000000000000000000000D776 + 10FFD77610FFD77610FF00000000000000000000000000000000000000000000 + 000000000000000000000000000000000006321C037CC86E0FF6D77610FFD776 + 10FFD77610FF0101001800000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000603002D7F4509C4D77610FFD77610FF000000000000 + 00000000000000000000000000000000000000000000010101221B1B1B7D1C1C + 1C8007070740000000001C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C + 1C8000000000000000000000000000000000070707401C1C1C801B1B1B7E0202 + 022500000000717171FF1C1C1C80000000000000000000000110010A0F3E010B + 1040010B1040010B1040010B1040010B10400006093100000000000000000000 + 000000000000000000000002001E197502DD229C02FF229C02FF229C02FF229C + 02FF197502DD0002001E0000000000000000000000000000000000000000D776 + 10FFD77610FFD77610FF00000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000004020023703D08B8D776 + 10FFD77610FF0101001800000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000120110263AB5D0DE3000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000717171FF1C1C1C80000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000002001E197502DD229C02FF229C02FF1975 + 02DD0002001E000000000000000000000000000000000000000000000000A058 + 0CDCD77610FFA95D0DE200000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000190D + 0257AB5D0DE30100001300000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00001B1B1B7E717171FF717171FF717171FF717171FF717171FF717171FF7171 + 71FF717171FF717171FF717171FF717171FF717171FF717171FF717171FF7171 + 71FF717171FF717171FF1C1C1C80000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000002001E197502DD197502DD0002 + 001E000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000010101221B1B1B7D1C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C + 1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C + 1C801C1C1C801B1B1B7E02020225000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000002001E0002001E0000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000717171FF717171FF5E5E5EE80000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000201010833040421660606 + 327E0606327E0404226701010936000000030000000000000000000000000000 + 000000000000000000000000000000000000717171FF717171FF717171FF0000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000C0606307B1616A5E31B1BD1FF1B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF1B1BD1FF1616A9E50606327E0000000E000000000000 + 000000000000000000000000000000000000717171FF717171FF717171FF0000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000001010C3E1616A4E21B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1616A8E501010E430000 + 000000000000000000000000000000000000717171FF717171FF717171FF0000 + 0000031B28660005072B00000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000000603002D0000 + 0006000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000030318571A1AC9FA1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BCAFB0303 + 1B5D00000000000000000000000000000000717171FF717171FF717171FF0000 + 0000052C4080129BE0EF010F154B000000000000000000000000000000000000 + 0000000304220218235F042A3D7D042A3E7E031C296701080C38000000050000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000001B0E025B000000070000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000361E04808F4E + 0BD00603002D0000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000101 + 0B3D1A1AC8FA1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1B + CAFB01010E43000000000000000000000000717171FF717171FF717171FF0000 + 0000052C408014B1FFFF14AFFDFE073F5C990002042100010115031924610C6C + 9BC714B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF129BE0EF0741 + 5E9B000609300000000000000000000000000000000000000000000000000000 + 00000000000000000000D77610FF9A550BD80E07014200000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000361E0480D776 + 10FFCB7010F82E19037600000003000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000000000000B1515 + A1E01B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF141499DA0000 + 021D0000021A131391D51B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1B + D1FF1616A8E50000000E0000000000000000717171FF717171FF717171FF0000 + 0000052C408014B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF0A567CB20004062A000000000000000000000000000000000000 + 00000000000000000000D77610FFD77610FFD77610FF593107A4010100180000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000361E0480D776 + 10FFD77610FFD77610FF7E4509C3030200220000000000000000000000000000 + 000000000000000000000000000000000000000000000000000005052C761B1B + D1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF08083E8B0000 + 000000000000070738841B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1B + D1FF1B1BD1FF0606337E0000000000000000717171FF717171FF717171FF0000 + 0000052C408014B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF0F87C3DF0844639F052F4484052C4080053248880C67 + 95C314AEFBFD14B1FFFF14ABF7FB053248880000000000000000000000000000 + 00000000000000000000D77610FFD77610FFD77610FFD77610FFBD680EEF2514 + 026B000000030000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000361E0480D776 + 10FFD77610FFD77610FFD77610FFC36B0FF32213026600000001000000000000 + 00000000000000000000000000000000000000000000000000011515A0DF1B1B + D1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF14149DDD0000 + 042500000322141496D81B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1B + D1FF1B1BD1FF1616A9E50000000300000000717171FF717171FF717171FF0000 + 0000052C408014B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF0A567DB300000003000000000000000000000000000000000000 + 00000002031D052D41811089C6E10F89C6E10000000000000000000000000000 + 00000000000000000000D77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FF884B0BCB0804003400000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000361E0480D776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FF6C3C08B5020100190000 + 000000000000000000000000000000000000000000000000062E1B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF0101093600000000717171FF717171FF717171FF0000 + 000000000001000609300A557BB114B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF0F87C3DF000000000F08 + 01450E0801430000000200000000000000000000000000000000000000000000 + 00000000000000000000D77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD27410FC482705940000000F0000000000000000000000000000 + 000000000000000000000000000000000000000000000D070140361E0480361E + 0480361E0480361E0480361E0480361E0480361E0480361E04807A4309C0D776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFB8650EEC180D + 0256000000000000000000000000000000000000000004041D601B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF0F0F76C00707 + 3480070734800F0F76C01B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF04042268000000001C1C1C801C1C1C80111111630000 + 00000000000000000000000000000427387814AFFDFE14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF14B1FFFF14AFFDFE0E7AB0D4052D4282000000004C29 + 0597D77610FFA85C0DE2140B014F000000000000000000000000000000000000 + 00000000000000000000D77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFB0610DE71A0E025A00000001000000000000 + 00000000000000000000000000000000000000000000361E0480D77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FF5B3107A60100001200000000000000000000000006062D771B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF070734800000 + 000000000000070734801B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF0606327E000000000000000000000000000000000000 + 000000000000000000000000000000000000010B11420C6896C413A4EDF61089 + C6E10A5980B5052D4282010F154A0000011200000000000000000C07003EC76D + 0FF5D77610FFD77610FF361E0480000000000000000000000000000000000000 + 00000000000000000000D77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FF744009BC050200270000 + 00000000000000000000000000000000000000000000361E0480D77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFAB5E0DE40603002D000000000000000005052C761B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF070734800000 + 000000000000070734801B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF0606327E000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000001040200261D10025E4A29059690500BD1D57610FED776 + 10FFD77610FFD77610FF361E0480000000000000000000000000000000000000 + 00000000000000000000D77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFCB7010F81A0E + 02590000000000000000000000000000000000000000361E0480D77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFC76E0FF62715036E00000001000000000000000003031C5F1B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF070734800000 + 000000000000070734801B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF04042167000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000633608AD3D2204884D2A + 05997B4309C1BE690FF0D77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FF361E0480000000000000000000000000000000000000 + 00000000000000000000D77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FF603507AB0201 + 001A0000000000000000000000000000000000000000361E0480D77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FF864A + 0ACA05020028000000000000000000000000000000000000062C1B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF070734800000 + 000000000000070734801B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF01010834000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000D77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FF361E0480000000000000000000000000000000000000 + 00000000000000000000D77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FF9F580CDC11090148000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000361E0480D776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFCF7210FA341D037E0000 + 000400000000000000000000000000000000000000000000000114149DDD1B1B + D1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF070734800000 + 000000000000070734801B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1B + D1FF1B1BD1FF1616A5E300000002000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000D77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FF361E0480000000000000000000000000000000000000 + 00000000000000000000D77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFCB7010F8371E04820000000900000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000361E0480D776 + 10FFD77610FFD77610FFD77610FFD77610FF96530BD508040033000000000000 + 000000000000000000000000000000000000000000000000000005052A731B1B + D1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF070734800000 + 000000000000070734801B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1B + D1FF1B1BD1FF0606307B00000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000D77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FF361E0480000000000000000000000000000000000000 + 00000000000000000000D77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FF743F08BB04020026000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000361E0480D776 + 10FFD77610FFD77610FFD47410FD4224048E0000000800000000000000000000 + 0000000000000000000000000000000000000000000000000000000000091414 + 9CDC1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF070734800000 + 000000000000070734801B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1B + D1FF1616A4E20000000C00000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000D77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FF361E0480000000000000000000000000000000000000 + 00000000000000000000D77610FFD77610FFD77610FFD77610FFD77610FFAF60 + 0DE61A0E02590000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000361E0480D776 + 10FFD77610FFA65B0DE00D070140000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000101 + 0A381A1AC5F81B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1A1A + C9FA01010C3E0000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000D77610FFD77610FFD77610FFD17410FC462605920000 + 000F000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000361E0480D776 + 10FF522D069E0000000E00000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000020214501A1AC5F81B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1A1AC8FA0303 + 1857000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000361E0480361E0480361E + 0480361E0480361E0480361E0480361E0480361E0480361E0480361E0480361E + 0480361E0480361E04800D070140000000000000000000000000000000000000 + 00000000000000000000D77610FFD77610FF86490AC908040032000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000024140269140B + 014E000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000001010A3814149CDC1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1515A1E001010B3D0000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000D77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FF361E0480000000000000000000000000000000000000 + 00000000000000000000A85C0DE2241402690000000200000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000905052A7314149DDD1B1BD1FF1B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF1B1BD1FF1414A0DF05052C760000000B000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000D27410FCD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FF351D047F000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000010000062B03031C5E0505 + 2C7605052C7603031C5F0000062D000000010000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000001A0E0259361E0480361E + 0480361E0480361E0480361E0480361E0480361E0480361E0480361E0480361E + 0480361E0480331C037D03010020000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000020110264D77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FF24140269000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000010101201C1C1C7F1C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C + 1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C + 1C80101010620000000000000000000000000000000000000000000000000000 + 0000361E0480D77610FF361E0480361E0480361E0480361E0480361E0480361E + 0480361E0480361E0480361E0480361E0480361E0480361E0480361E0480361E + 0480361E0480D77610FF361E0480000000000000000000000000000000000F0F + 0F5E1C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C + 1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C + 1C801C1C1C801C1C1C801C1C1C80101010620000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00001B1B1B7E717171FF717171FF717171FF717171FF717171FF717171FF7171 + 71FF717171FF717171FF717171FF717171FF717171FF717171FF717171FF7171 + 71FF717171FF0000000000000000000000000000000000000000000000000000 + 0000361E0480D77610FF00000000000000000000000000000000000000000000 + 0000000000000000000000000000010000140000000B00000000000000000000 + 000000000000D77610FF361E0480000000000000000000000000000000006F6F + 6FFD717171FF717171FF717171FF717171FF717171FF717171FF717171FF7171 + 71FF717171FF717171FF717171FF717171FF717171FF717171FF717171FF7171 + 71FF717171FF717171FF717171FF717171FF0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00001C1C1C80717171FF00000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000001C1C + 1C80717171FF0000000000000000000000000000000000000000000000000000 + 0000361E0480D77610FF000000000B06003CCF7210FB160C0154CB700FF82011 + 0263653808AF623508AC4A29059798530BD729160370C96E0FF7D77610FF361E + 048000000000D77610FF361E0480000000000000000000000000000000007171 + 71FF1C1C1C800000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000001C1C1C80717171FF0000000000000000000000000000 + 000000000000000000000000032210107AC30000032200000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00001C1C1C80717171FF00000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000001C1C + 1C80717171FF0000000000000000000000000518006509270180092701800000 + 0000361E0480D77610FF0000000000000000743F09BBC56C0FF4472705931009 + 0148653808AFAB5D0DE36B3B08B498530BD729160370C96E0FF70704002F0000 + 000400000000D77610FF361E048000000000111111651C1C1C801C1C1C807171 + 71FF1C1C1C800000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000001C1C1C80717171FF0000000000000000000000000000 + 000000000000000003221515A3E11B1BD1FF1515A3E100000322000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00001C1C1C80717171FF00000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000001C1C + 1C80717171FF000000000000000000000000229A02FD229C02FF229C02FF0000 + 0000361E0480D77610FF0000000000000000371E0482D77610FF1C0F025D1009 + 01488B4C0BCD9F580CDC5F3407AA9F580CDC29160370C96E0FF7050200280000 + 000000000000D77610FF361E0480000000006F6F6FFD717171FF717171FF7171 + 71FF1C1C1C800000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000001C1C1C80717171FF0000000000000000000000000000 + 0000000003221515A3E11B1BD1FF1B1BD1FF1B1BD1FF1515A3E1000003220000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00001C1C1C80717171FF00000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000001C1C + 1C80717171FF000000000000000000000000229C02FF09270180000000000000 + 0000361E0480D77610FF0000000000000009B4630DE9663808B08B4C0BCD1109 + 0149CF7210FA5B3107A6311B037BD17310FC29160370C96E0FF7050200280000 + 000000000000D77610FF361E048000000000717171FF1C1C1C80000000007171 + 71FF1C1C1C800000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000001C1C1C80717171FF0000000000000000000000000000 + 03221515A3E11B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1515A3E10000 + 0322000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00001C1C1C80717171FF00000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000001C1C + 1C80717171FF000000000000000000000000229C02FF09270180000000000000 + 0000361E0480D77610FF0000000004020026361E048001010018361E04800A05 + 0038361E04800D07003F03020022231302680603002E321C037C010000140000 + 000000000000D77610FF361E048000000000717171FF1C1C1C80000000007171 + 71FF1C1C1C800000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000070707400707074007070740070707400707 + 074007070740000000001C1C1C80717171FF0000000000000000000003221515 + A3E11B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1515 + A3E1000003220000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00001C1C1C80717171FF00000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000001C1C + 1C80717171FF000000000000000000000000229C02FF09270180000000000000 + 0000361E0480D77610FF00000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D77610FF361E048000000000717171FF1C1C1C80000000007171 + 71FF1C1C1C800000000000000000000000000000000000000000000000000000 + 00000000000000000000000000001C1C1C7F1C1C1C7F1C1C1C7F1C1C1C7F1C1C + 1C7F1C1C1C7F000000001C1C1C80717171FF00000000000003221515A3E11B1B + D1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1B + D1FF1515A3E10000032200000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000001B7A + 02E2229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C + 02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C + 02FF229C02FF229C02FF061A006900000000229C02FF09270180000000000000 + 0000341D047ED77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FF361E048000000000717171FF1C1C1C80000000007171 + 71FF1C1C1C800000000000000000000000000000000000000000000000000000 + 00000000000000000000000000001C1C1C7F0707074000000000000000000707 + 07401C1C1C7F000000001C1C1C80717171FF000000000000021E14149DDD1B1B + D1FF1B1BD1FF1B1BD1FF14149DDD01010B3C14149DDD1B1BD1FF1B1BD1FF1B1B + D1FF1B1BD1FF1515A3E100000322000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000229C + 02FF229C02FF104601AC0D3C019F229C02FF166202CB0A2E018B229B02FE1766 + 02CF09270180092701800B310190209002F50B330192092701800F4501AA229C + 02FF229C02FF229C02FF0927018000000000229C02FF09270180000000000000 + 000003020022331C037D361E0480361E0480361E0480361E0480361E0480361E + 0480361E0480361E0480361E0480361E0480361E0480361E0480361E0480361E + 0480361E0480341D037E0402002500000000717171FF1C1C1C80000000007171 + 71FF1C1C1C800000000007070740070707400707074007070740070707400707 + 07400707074001010120000000001C1C1C7F0707074000000000000000000707 + 07401C1C1C7F000000001C1C1C80717171FF00000000000000000000021E1414 + 9DDD1B1BD1FF14149DDD0000021E000000000000021E14149DDD1B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF1515A3E1000003220000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000229C + 02FF229C02FF145C01C500000004196E02D7020900400825007E229C02FF0D3C + 019F0000000F0416006007200074197002D8041100560825007E0000000C0D3E + 01A1229C02FF229C02FF0927018000000000229C02FF09270180000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000717171FF1C1C1C80000000007171 + 71FF1C1C1C80000000001C1C1C7F1C1C1C7F1C1C1C7F1C1C1C7F1C1C1C7F1C1C + 1C7F1C1C1C7F07070740000000001C1C1C7F0707074000000000000000000707 + 07401C1C1C7F000000001C1C1C80717171FF0000000000000000000000000000 + 021E0F0F71BB0000021E0000000000000000000000000000021E14149DDD1B1B + D1FF1B1BD1FF1B1BD1FF1B1BD1FF1515A3E10000032200000000000000000000 + 000000000000000000000000000000000000000000000000000000000000229C + 02FF229C02FF229C02FF0413005901060035000100181F8C02F2229C02FF0D3C + 019F00030028229C02FF229C02FF229C02FF229C02FF176B02D3000100180823 + 007A229C02FF229C02FF0927018000000000229C02FF09270180000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000009270180229C02FF000000000000 + 000000000000000000000000000000000000717171FF1C1C1C80000000007171 + 71FF1C1C1C800000000000000000000000000000000000000000000000000000 + 00000000000000000000000000001C1C1C7F1C1C1C7F1C1C1C7F1C1C1C7F1C1C + 1C7F1C1C1C7F000000001C1C1C80717171FF0000000000000000000000000000 + 00000000000000000000000000000000000000000000000000000000021E1414 + 9DDD1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1515A3E100000322000000000000 + 000000000000000000000000000000000000000000000000000000000000229C + 02FF229C02FF229C02FF145E01C700000000071F0072229C02FF229C02FF0D3C + 019F00030028229C02FF229C02FF229C02FF061D006E00000007051700631F8C + 02F1229C02FF229C02FF0927018000000000229C02FF145702C0092701800927 + 0180092701800927018009270180092701800927018009270180092701800927 + 018009270180092701800927018009270180145702C0229C02FF000000000000 + 000000000000000000000000000000000000717171FF1C1C1C80000000007171 + 71FF1C1C1C800000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000070707400707074007070740070707400707 + 074007070740000000001C1C1C80717171FF0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 021E14149DDD1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1515A3E1000003220000 + 000000000000000000000000000000000000000000000000000000000000229C + 02FF229C02FF229C02FF0416006201060033000100151E8A02F0229C02FF0D3C + 019F00030028229C02FF229C02FF1A7602DE00000000114F01B6229C02FF229A + 02FE229C02FF229C02FF0927018000000000197402DC229C02FF229C02FF229C + 02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C + 02FF229C02FF229C02FF229C02FF229C02FF229C02FF1B7A02E2000000000000 + 000000000000000000000000000000000000717171FF1C1C1C80000000007171 + 71FF1C1C1C800000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000001C1C1C80717171FF0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000021E14149DDD1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1515A3E10000 + 032200000000000000000000000000000000000000000000000000000000229C + 02FF229C02FF196F02D700000004135601BE020B004408220079229C02FF0D3C + 019F00030028229C02FF229C02FF209202F70002002000030024010700371251 + 01B9229C02FF229C02FF09270180000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000717171FF1C1C1C8000000000D776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FF0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000021E14149DDD1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1515 + A3E100000322000000000000000000000000000000000000000000000000229C + 02FF229C02FF125301BB0A2C0188229C02FF166402CD0A2C0189229A02FE1766 + 02CF0B340194229C02FF229C02FF229C02FF1E8A02F0104A01B0114D01B51F8E + 02F3229C02FF229C02FF09270180000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000050000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000717171FF1C1C1C8000000000D776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FF0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000021E14149DDD1B1BD1FF1B1BD1FF1B1BD1FF1B1B + D1FF1515A3E10000032200000000000000000000000000000000000000001974 + 02DC229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C + 02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C + 02FF229C02FF229A02FD05180065000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000020D004A0000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000717171FF1C1C1C8000000000D776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FF0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000021E14149DDD1B1BD1FF1B1BD1FF1B1B + D1FF1B1BD1FF1515A3E100000322000000000000000000000000000000000000 + 00001C1C1C80717171FF00000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000001C1C + 1C80717171FF0000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000B3201910928018200000010000000000000000000000000145B01C3020B + 004400000000000000000000000000000000717171FF1C1C1C8000000000D374 + 10FDD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FF0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000021E14149DDD1B1BD1FF1B1B + D1FF1B1BD1FF14149DDD0000021E000000000000000000000000000000000000 + 00001C1C1C80717171FF00000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000001C1C + 1C80717171FF0000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000104002C229802FC209202F7135701C00C3701980A2C0188229C02FF229C + 02FF145B01C3020B00440000000000000000717171FF1C1C1C80000000001D10 + 025F361E0480361E0480361E0480361E0480361E0480361E0480361E0480361E + 0480361E0480361E0480361E0480361E0480361E0480361E0480361E04806642 + 1BC0A57441FF361E0480361E0480201102630000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000021E14149DDD1B1B + D1FF14149DDD0000021E00000000000000000000000000000000000000000000 + 00001C1C1C80717171FF00000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000001C1C + 1C80717171FF0000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000009270181229C02FF229C02FF229C02FF229C02FF229C02FF229C + 02FF229C02FF229C02FF145B01C3020B0044717171FF1C1C1C80000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000001C1C + 1C80717171FF0000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000000000021E0F0F + 71BB0000021E0000000000000000000000000000000000000000000000000000 + 00001B1B1B7D717171FF717171FF717171FF717171FF717171FF717171FF7171 + 71FF717171FF717171FF717171FF717171FF717171FF717171FF717171FF7171 + 71FF717171FE0000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000001071F00731F8E02F3229C02FF229C02FF229C02FF229C + 02FF229C02FF229C02FF125401BB0108003C6F6F6FFD717171FF717171FF7171 + 71FF717171FF717171FF717171FF717171FF717171FF717171FF717171FF7171 + 71FF717171FF717171FF717171FF717171FF717171FF717171FF717171FF7171 + 71FF717171FF0000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000101011C1B1B1B7D1C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C + 1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C + 1C800E0E0E5D0000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000F0310005307200075229C02FF229C + 02FF125401BB0108003C00000000000000000F0F0F5F1C1C1C801C1C1C801C1C + 1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C + 1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C + 1C80111111630000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000125401BB0108 + 003C000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000000F080144361E + 0480361E04801009014700000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000201010833040421660606 + 327E0606327E0404226701010936000000030000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000010101201C1C1C7F1C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C + 1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C + 1C80101010620000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000005F3407A9D776 + 10FFD77610FF633608AD00000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000C0606307B1616A5E31B1BD1FF1B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF1B1BD1FF1616A9E50606327E0000000E000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00001B1B1B7E717171FF717171FF717171FF717171FF717171FF717171FF7171 + 71FF717171FF717171FF717171FF717171FF717171FF717171FF717171FF7171 + 71FF717171FF0000000000000000000000000000000E00000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000704002F0000000400000000000000000000000098530BD7D776 + 10FFD77610FF96520BD50000000000000000000000000000000C0B06003C0000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000001010C3E1616A4E21B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1616A8E501010E430000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00001C1C1C80717171FF00000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000001C1C + 1C80717171FF000000000000000000000000130A014E00000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000A0500380000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000120A014BCB7010F881470AC6030200220000000000000010D17310FCD776 + 10FFD77610FFCE7110FA0100001700000000080400339D560CDACF7210FA150C + 0151000000000000000000000000000000000000000000000000000000000000 + 0000030318571A1AC9FA1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BCAFB0303 + 1B5D000000000000000000000000000000000000000000000000000000000000 + 00001C1C1C80717171FF00000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000001C1C + 1C80717171FF000000000000000000000000512C069C05020028000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D37410FD492805950000000F000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000905 + 0036CB7010F8D77610FFD77610FFC0690FF1532D069FC36B0FF3D77610FFD776 + 10FFD77610FFD77610FFCF7210FB6A3A08B3CD7010F9D77610FFD77610FFCF72 + 10FA070400310000000000000000000000000000000000000000000000000101 + 0B3D1A1AC8FA1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1B + CAFB01010E430000000000000000000000000000000000000000000000000000 + 00001C1C1C80717171FF00000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000001C1C + 1C80717171FF0000000000000000000000002715026DAF600DE60A0600390000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D77610FFD77610FFAF600DE6180D02560000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000A95510BD4D77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FF7D44 + 09C20000000300000000000000000000000000000000000000000000000B1515 + A1E01B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1919C3F61919C3F61B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF1919C3F61919C3F61B1BD1FF1B1BD1FF1B1BD1FF1B1B + D1FF1616A8E50000000E00000000000000000000000000000000000000000000 + 00001C1C1C80717171FF00000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000001C1C + 1C80717171FF0000000000000000000000000201001ED47410FDD27410FC512C + 069D0603002B0000000000000000000000000000000000000000000000000000 + 0000D77610FFD77610FFD77610FFD77610FF6C3C08B503010020000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000603002EC96E0FF7D77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFBB670EEE0201 + 001E00000000000000000000000000000000000000000000000005052C761B1B + D1FF1B1BD1FF1B1BD1FF1B1BD1FF1919C3F602020F4502020F451919C3F61B1B + D1FF1B1BD1FF1919C3F602020F4502020F451919C3F61B1BD1FF1B1BD1FF1B1B + D1FF1B1BD1FF0606337E00000000000000000000000000000000000000000000 + 00001C1C1C80717171FF00000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000001C1C + 1C80717171FF000000000000000000000000000000006B3B08B4D77610FFD776 + 10FFD77610FF92500BD24325058F1C0F025C0A0500370201001E0000000D0000 + 0008D77610FFD77610FFD77610FFD77610FFD77610FFC66D0FF52D1903760000 + 0005000000000000000000000000000000000000000000000000000000000000 + 000000000000603507ABD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FF542E069F0000 + 00000000000000000000000000000000000000000000000000011515A0DF1B1B + D1FF1B1BD1FF1B1BD1FF1919C3F602020F45000000000000000002020F451919 + C3F61919C3F602020F45000000000000000002020F451919C3F61B1BD1FF1B1B + D1FF1B1BD1FF1616A9E500000003000000000000000000000000000000000000 + 00001C1C1C80717171FF00000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000001C1C + 1C80717171FF0000000000000000000000000000000009050036D47410FDD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FF904F + 0BD10A0500380000000000000000000000000000000000000000000000000000 + 000001000012CB700FF8D77610FFD77610FFD77610FFCB7010F82615026C0000 + 000C0000000B23130267C76E0FF6D77610FFD77610FFD77610FFC66D0FF50100 + 001600000000000000000000000000000000000000000000062E1B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF1A1AC5F80202114B0000000000000000000000000202 + 0F4502020F450000000000000000000000000202114B1A1AC5F81B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF0101093600000000000000000000000000000000A95D + 0DE2D77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FF2414026900000000000000000000000046260592D776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD37410FD492805950000000F000000000000000010090147623507AC9551 + 0BD4CD7010F9D77610FFD77610FFD77610FFD77610FF2816036F000000000000 + 0000000000000000000023130267D77610FFD77610FFD77610FFD77610FFD576 + 10FEA45A0DDF683908B211090148000000000000000004041D601B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF1B1BD1FF1A1AC5F80202114B00000000000000000000 + 00000000000000000000000000000202114B1A1AC5F81B1BD1FF1B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF0404226800000000000000000000000000000000D776 + 10FFD77610FFD77610FFB3630EE94325058F371E04827A4309C0D37410FD4E2B + 069A361E04815C3207A7D57510FED77610FFD07210FB44250590884B0BCBD776 + 10FFD77610FFD77610FF361E0480000000000000000000000000000000067742 + 09BED77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFAF600DE6180D025600000000361E0480D77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FF01000013000000000000 + 000000000000000000000000000BD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FF361E0480000000000000000006062D771B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1A1AC5F80202114B000000000000 + 000000000000000000000202114B1A1AC5F81B1BD1FF1B1BD1FF1B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF0606327E00000000000000000000000000000000D776 + 10FFD77610FFC16A0FF203010020040200251C0F025D29160370C96E0FF7120A + 014B361E0480010000123E22048AD77610FF7A4309C000000001140B014FD776 + 10FFD77610FFD77610FF361E0480000000000000000000000000000000000000 + 000B643708AED77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFA75C0DE1140A014E00000000361E0480D77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FF01000014000000000000 + 000000000000000000000000000CD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FF361E0480000000000000000005052C761B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1919C3F602020F45000000000000 + 0000000000000000000002020F451919C3F61B1BD1FF1B1BD1FF1B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF0606327E00000000000000000000000000000000D776 + 10FFD77610FF5B3107A60000000FBA660EEDD77610FFD77610FFD77610FFD776 + 10FF9A550BD80301001F10090148D77610FF2B180373130A014D0000000AC56C + 0FF4D77610FFD77610FF361E0480000000000000000000000000000000000000 + 0000000000011D10025EA65B0DE0D77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD17310FC4124048D0000000C00000000000000000F0801445E3407A99853 + 0BD7D27410FCD77610FFD77610FFD77610FFD77610FF2B180374000000000000 + 000000000000000000002615026CD77610FFD77610FFD77610FFD77610FFC56C + 0FF48B4C0BCD5A3107A50F080144000000000000000003031C5F1B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF1B1BD1FF1919C3F602020F4500000000000000000000 + 000000000000000000000000000002020F451919C3F61B1BD1FF1B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF0404216700000000000000000000000000000000D776 + 10FFD77610FF4727059309050037D77610FFD77610FFD77610FFD77610FF381F + 04830000000411090148A35A0DDED77610FF04020026613508AB0603002E6035 + 07ABD77610FFD77610FF361E0480000000000000000000000000000000000000 + 00000000000000000000000000041109014A4827059484480AC8B2610EE8C96E + 0FF7D77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FF874A + 0BCA080400310000000000000000000000000000000000000000000000000000 + 000001000016CB700FF8D77610FFD77610FFD77610FFCF7210FA2B1803740100 + 0014010000132816036FCB7010F8D77610FFD77610FFD77610FFCF7210FA0100 + 001500000000000000000000000000000000000000000000062C1B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF1919C3F602020F450000000000000000000000000202 + 114B0202114B00000000000000000000000002020F451919C3F61B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF0101083400000000000000000000000000000000D776 + 10FFD77610FF83480AC70000000DAB5E0DE4D77610FFD77610FFD17310FC0000 + 0005381F0483D77610FFD57610FE99540BD700000003BB670EEE2B1803731B0E + 025BD77610FFD77610FF361E0480000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D77610FFD77610FFD77610FFD77610FFD77610FFC16A0FF22715036E0000 + 0003000000000000000000000000000000000000000000000000000000000000 + 0000000000005F3407A9D77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FF6A3A08B30000 + 000000000000000000000000000000000000000000000000000114149DDD1B1B + D1FF1B1BD1FF1B1BD1FF1A1AC5F80202114B00000000000000000202114B1A1A + C5F81A1AC5F80202114B00000000000000000202114B1A1AC5F81B1BD1FF1B1B + D1FF1B1BD1FF1616A5E30000000200000000000000000000000000000000D776 + 10FFD77610FFD77610FF1F11026102010019170D01552514026BD77610FF0905 + 0035010000160D07003F512C069C3E22048A0A050038D77610FF703D08B80000 + 0010CE7110FAD77610FF361E0480000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D77610FFD77610FFD77610FFD77610FF633608AD0201001B000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000005020028C66D0FF5D77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFCF7210FB0A05 + 003800000000000000000000000000000000000000000000000005052A731B1B + D1FF1B1BD1FF1B1BD1FF1B1BD1FF1A1AC5F80202114B0202114B1A1AC5F81B1B + D1FF1B1BD1FF1A1AC5F80202114B0202114B1A1AC5F81B1BD1FF1B1BD1FF1B1B + D1FF1B1BD1FF0606307B0000000000000000000000000000000000000000D776 + 10FFD77610FFD77610FFD37410FD5F3407A93D2204887A4309C0D77610FFC66D + 0FF56B3B08B4673908B1B8650EEC5D3307A86D3C08B6D77610FFC76E0FF6361E + 0480AF610DE7D77610FF361E0480000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D77610FFD77610FFA75C0DE1140A014E0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00078E4E0BCFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFA258 + 0CDD0000000F0000000000000000000000000000000000000000000000091414 + 9CDC1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1A1AC5F81A1AC5F81B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF1A1AC5F81A1AC5F81B1BD1FF1B1BD1FF1B1BD1FF1B1B + D1FF1616A4E20000000C0000000000000000000000000000000000000000A058 + 0CDCD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD37410FD21120265000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D17310FC4124048D0000000C000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000B06 + 003BD07210FBD77610FFD77610FFCB7010F85F3407AAC96E0FF7D77610FFD776 + 10FFD77610FFD77610FFC0690FF14A290597B4630EEAD77610FFD77610FFCB70 + 10F80B06003A0000000000000000000000000000000000000000000000000101 + 0A381A1AC5F81B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1A1A + C9FA01010C3E0000000000000000000000000000000000000000000000000000 + 00001C1C1C80717171FF00000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000001C1C + 1C80717171FF0000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000080400310000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000190D0257D07210FB92500BD20703002E000000000000000FC36C0FF3D776 + 10FFD77610FFD57510FE01000012000000000201001A743F08BBCB7010F8120A + 014B000000000000000000000000000000000000000000000000000000000000 + 0000020214501A1AC5F81B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1A1AC8FA0303 + 1857000000000000000000000000000000000000000000000000000000000000 + 00001C1C1C80717171FF00000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000001C1C + 1C80717171FF0000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000B06003B00000008000000000000000000000000894B0BCCD776 + 10FFD77610FFA35A0DDE000000000000000000000000000000020503002A0000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000001010A3814149CDC1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1515A1E001010B3D0000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00001C1C1C80717171FF00000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000001C1C + 1C80717171FF0000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000583007A3D776 + 10FFD77610FF673808B000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000905052A7314149DDD1B1BD1FF1B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF1B1BD1FF1414A0DF05052C760000000B000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00001B1B1B7D717171FF717171FF717171FF717171FF717171FF717171FF7171 + 71FF717171FF717171FF717171FF717171FF717171FF717171FF717171FF7171 + 71FF717171FE0000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000000E080143361E + 0480361E04801009014700000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000010000062B03031C5E0505 + 2C7605052C7603031C5F0000062D000000010000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000101011C1B1B1B7D1C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C + 1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C + 1C800E0E0E5D0000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000001C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C + 1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C80000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000E101010611C1C1C7F0D0D0D570000000600000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000204040433121212661B1B + 1B7E1B1B1B7E1212126705050536000000030000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000717171FF717171FF717171FF717171FF717171FF7171 + 71FF717171FF717171FF717171FF717171FF717171FF717171FF000000000000 + 0000000000000000000000000000000000000000000000000000000000000404 + 04335B5B5BE5717171FF717171FE717171FF4E4E4ED40101011E000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000C1A1A1A7B5A5A5AE3717171FF717171FF7171 + 71FF717171FF717171FF717171FF5C5C5CE51B1B1B7E0000000E000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000361E0480D776 + 10FFD77610FF361E048000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000717171FF1C1C1C800000000000000000000000000000 + 0000000000000000000000000000000000001C1C1C80717171FF000000000000 + 0000000000000000000000000000000000000000000000000000040404316363 + 63EF555555DD04040432000000030C0C0C54676767F4555555DD0101011E0000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000606063E595959E2717171FF717171FF717171FF717171FF7171 + 71FF717171FF717171FF717171FF717171FF717171FF5B5B5BE5070707430000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000361E0480D776 + 10FFD77610FF361E048000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000002101010621C1C + 1C801C1C1C801C1C1C80717171FF1C1C1C800000000000000000000000000000 + 0000000000000000000000000000000000001C1C1C80717171FF1C1C1C801C1C + 1C801C1C1C801111116600000003000000000000000000000008575757DF5555 + 55DE0101011E0000000000000000000000000606063F676767F4555555DD0101 + 011E000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000D0D0D576D6D6DFA717171FF717171FF717171FF5E5E5EE92F2F2FA51D1D + 1D831D1D1D822E2E2EA35C5C5CE7717171FF717171FF717171FF6D6D6DFB0F0F + 0F5D000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000361E0480D776 + 10FFD77610FF361E048000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000F0F0F5E717171FF7171 + 71FF717171FF717171FF717171FF1C1C1C800000000000000000000000000000 + 0000000000000000000000000000000000001C1C1C80717171FF717171FF7171 + 71FF717171FF717171FF1111116600000000000000000A0A0A4D717171FF0808 + 084500000000000000000000000000000000000000000606063F676767F45555 + 55DD0101011E0000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000606 + 063D6D6D6DFA717171FF717171FF5E5E5EE90F0F0F5F00000005000000000000 + 00000000000000000000000000040E0E0E5B5C5C5CE6717171FF717171FF6D6D + 6DFB070707430000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000361E0480D776 + 10FFD77610FF361E048000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000001C1C1C80717171FF7171 + 71FF717171FF717171FF717171FF1C1C1C800000000000000000000000000000 + 0000000000000000000000000000000000001C1C1C80717171FF717171FF7171 + 71FF717171FF717171FF1C1C1C80000000000000000011111165717171FF0101 + 011F0000000000000000000000000000000000000000000000000606063F6767 + 67F4484848CB0000000100000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000000000000B5757 + 57E0717171FF717171FF4E4E4ED40101011B0000000000000000000000000000 + 000000000000000000000000000000000000000000184B4B4BD0717171FF7171 + 71FF5B5B5BE50000000E00000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000361E0480D776 + 10FFD77610FF361E048000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000001C1C1C80717171FF7171 + 71FF717171FF717171FF717171FF1C1C1C800000000000000000000000000000 + 0000000000000000000000000000000000001C1C1C80717171FF717171FF7171 + 71FF717171FF717171FF1C1C1C80000000000000000004040433717171FF1C1C + 1C7F000000000000000000000000010101221212126700000001000000001616 + 1671717171FF0404043500000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000181818767171 + 71FF717171FF5F5F5FEA0101011C0000000000000000000000000606063C1919 + 1978191919790606063F000000010000000000000000010101185C5C5CE67171 + 71FF717171FF1B1B1B7E00000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000361E0480D776 + 10FFD77610FF361E048000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000001C1C1C80717171FF7171 + 71FF717171FF717171FF717171FF1C1C1C800000000000000000000000000000 + 0000000000000000000000000000000000001C1C1C80717171FF717171FF7171 + 71FF717171FF717171FF1C1C1C80000000000000000000000000333333AC7171 + 71FE1414146C00000000000000000E0E0E5B717171FF25252593000000010707 + 0741717171FF0A0A0A4F00000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000001575757DF7171 + 71FF717171FF111111630000000000000000000000103A3A3AB8717171FF7171 + 71FF717171FF717171FF3E3E3EBD0000001300000000000000000E0E0E5B7171 + 71FF717171FF5B5B5BE500000003000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000361E0480D776 + 10FFD77610FF361E048000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000001C1C1C80717171FF7171 + 71FF717171FF717171FF717171FF717171FF717171FF717171FF717171FF7171 + 71FF717171FF717171FF717171FF717171FF717171FF717171FF717171FF7171 + 71FF717171FF717171FF1C1C1C80000000000000000000000000000000093C3C + 3CBA717171FE1414146C00000000000000001E1E1E84717171FF252525930505 + 053B6B6B6BF90202022400000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000303032E717171FF7171 + 71FF616161EC000000060000000000000000393939B5717171FF717171FF7171 + 71FF717171FF717171FF717171FF3E3E3EBD0000000100000000000000045C5C + 5CE7717171FF717171FF05050536000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000361E0480D776 + 10FFD77610FF361E048000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000001C1C1C80717171FF7171 + 71FF717171FF717171FF717171FF717171FF717171FF717171FF717171FF7171 + 71FF717171FF717171FF717171FF717171FF717171FF717171FF717171FF7171 + 71FF717171FF717171FF1C1C1C80000000000000000000000000000000000000 + 00093C3C3CBA717171FE1414146C00000000000000001E1E1E84717171FF2525 + 25930303033000000000000000160606063D0101012100000000000000000000 + 0000000000000000000000000000000000000000000010101060717171FF7171 + 71FF333333AB000000000000000005050538717171FF717171FF707070FE2A2A + 2A9D292929996F6F6FFD717171FF717171FF0707074000000000000000002E2E + 2EA3717171FF717171FF12121268000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000361E0480D776 + 10FFD77610FF361E048000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000001C1C1C80717171FF7171 + 71FF717171FF717171FF717171FF717171FF717171FF717171FF717171FF7171 + 71FF717171FF717171FF717171FF717171FF717171FF717171FF717171FF7171 + 71FF717171FF717171FF1C1C1C80000000000000000000000000000000000000 + 0000000000093C3C3CBA717171FE2929299A0E0E0E5B0F0F0F5D1E1E1E847171 + 71FF25252593030303306B6B6BF9717171FF717171FF3A3A3AB8000000150000 + 0000000000000000000000000000000000000000000018181877717171FF7171 + 71FF2121218A000000000000000016161672717171FF717171FF2D2D2DA10000 + 00000000000029292999717171FF717171FF1919197A00000000000000001D1D + 1D82717171FF717171FF1B1B1B7E000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000361E0480D776 + 10FFD77610FF361E048000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000001C1C1C80717171FF7171 + 71FF717171FF717171FF717171FF717171FF717171FF717171FF717171FF7171 + 71FF717171FF717171FF717171FF717171FF717171FF717171FF717171FF7171 + 71FF717171FF717171FF1C1C1C80000000000000000000000000000000000000 + 000000000000000000092B2B2B9E6F6F6FFC717171FF6F6F6FFC090909481E1E + 1E84717171FF25252593090909490C0C0C541E1E1E846B6B6BF84E4E4ED40000 + 0017000000000000000000000000000000000000000017171776717171FF7171 + 71FF2121218A000000000000000016161671717171FF717171FF2F2F2FA40000 + 0000000000002A2A2A9D717171FF717171FF1919197900000000000000001E1E + 1E83717171FF717171FF1B1B1B7E000000000000000000000000000000000000 + 00000201001E361E0480361E0480361E0480361E0480361E04807A4309C0D776 + 10FFD77610FF7A4309C0361E0480361E0480361E0480361E0480361E04800201 + 001E00000000000000000000000000000000000000001C1C1C80717171FF7171 + 71FF525252DA1C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C + 1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C805050 + 50D6717171FF717171FF1C1C1C80000000000000000000000000000000000000 + 0000000000000000000000000000000000140404043500000015000000000404 + 04341E1E1E84717171FF2525259300000001000000000909094B6B6B6BF84E4E + 4ED400000017000000000000000000000000000000000F0F0F5F717171FF7171 + 71FF333333AC000000000000000004040435717171FF717171FF717171FE2F2F + 2FA52D2D2DA2707070FE717171FF717171FF0606063D00000000000000002F2F + 2FA4717171FF717171FF12121267000000000000000000000000000000000000 + 000000000000321C037CD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FF321C037C0000 + 000000000000000000000000000000000000000000001C1C1C80717171FF7171 + 71FF1D1D1D820000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000001C1C + 1C80717171FF717171FF1C1C1C80000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000106B6B + 6BF90B0B0B531E1E1E84717171FF2525259300000001000000000909094B6B6B + 6BF84E4E4ED4000000170000000000000000000000000303032C717171FF7171 + 71FF626262EE000000070000000000000000363636B0717171FF717171FF7171 + 71FF717171FF717171FF717171FF3A3A3AB70000000000000000000000055E5E + 5EE9717171FF717171FF04040434000000000000000000000000000000000000 + 00000000000000000000321C037CD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FF321C037C000000000000 + 000000000000000000000000000000000000000000000E0E0E5B717171FF7171 + 71FF1C1C1C8000000000717171FF1C1C1C800000000000000000000000000000 + 0000000000000000000000000000000000001C1C1C80717171FF000000001C1C + 1C80717171FF717171FF11111163000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000040404357171 + 71FF0E0E0E5C000000001E1E1E84717171FF1212126700000000000000000909 + 094B6B6B6BF8464646C800000004000000000000000000000001555555DD7171 + 71FF717171FF1212126700000000000000000000000D363636B0717171FF7171 + 71FF717171FF717171FF393939B5000000100000000000000000101010607171 + 71FF717171FF595959E300000002000000000000000000000000000000000000 + 0000000000000000000000000000321C037CD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FF321C037C00000000000000000000 + 00000000000000000000000000000000000000000000000000010E0E0E5A1C1C + 1C800707074000000000717171FF1C1C1C800000000000000000000000000000 + 0000000000000000000000000000000000001C1C1C80717171FF000000000707 + 07401C1C1C800F0F0F5D00000002000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000010101187070 + 70FE2424249000000000000000000E0E0E5B0101012200000000000000000000 + 00000E0E0E5C717171FF0A0A0A50000000000000000000000000161616737171 + 71FF717171FF626262ED0101011F000000000000000000000000040404341515 + 157016161671050505370000000000000000000000000101011B5E5E5EE97171 + 71FF717171FF1A1A1A7B00000000000000000000000000000000000000000000 + 000000000000000000000000000000000000321C037CD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FF321C037C0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000717171FF1C1C1C800000000000000000000000000000 + 0000000000000000000000000000000000001C1C1C80717171FF000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000003232 + 32AB6E6E6EFC0D0D0D5700000000000000000000000000000000000000000000 + 000000000004717171FF1B1B1B7E000000000000000000000000000000095555 + 55DC717171FF717171FF525252D90101011F0000000000000000000000000000 + 0000000000000000000000000000000000000101011C4E4E4ED4717171FF7171 + 71FF595959E20000000C00000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000321C037CD77610FFD776 + 10FFD77610FFD77610FF321C037C000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000717171FF1C1C1C800000000000000000000000000000 + 0000000000000000000000000000000000001C1C1C80717171FF000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000E434343C56D6D6DFB0D0D0D57000000000000000000000000000000000000 + 00000303032D717171FF12121269000000000000000000000000000000000505 + 05386B6B6BF8717171FF717171FF626262ED1212126700000007000000000000 + 0000000000000000000000000006111111635F5F5FEA717171FF717171FF6D6D + 6DFA0606063E0000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000321C037CD776 + 10FFD77610FF321C037C00000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000717171FF1C1C1C800000000000000000000000000000 + 0000000000000000000000000000000000001C1C1C80717171FF000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000E434343C56D6D6DFB0D0D0D570000000000000000000000000000 + 00144C4C4CD1626262ED00000014000000000000000000000000000000000000 + 00000B0B0B506B6B6BF8717171FF717171FF717171FF626262EE343434AD2121 + 218B2121218A323232AB616161EC717171FF717171FF717171FF6D6D6DFA0D0D + 0D57000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000321C + 037C321C037C0000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000717171FF1C1C1C800000000000000000000000000000 + 0000000000000000000000000000000000001C1C1C80717171FF000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000E434343C56D6D6DFB1414146D0000000E0303032E4B4B + 4BD1676767F40606063F00000000000000000000000000000000000000000000 + 00000000000005050538555555DC717171FF717171FF717171FF717171FF7171 + 71FF717171FF717171FF717171FF717171FF717171FF575757E00606063D0000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000717171FF717171FF717171FF717171FF717171FF7171 + 71FF717171FF717171FF717171FF717171FF717171FF717171FF000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000E3E3E3EBD717171FF717171FF717171FF6060 + 60EB0606063E0000000000000000000000000000000000000000000000000000 + 000000000000000000000000000916161673555555DD717171FF717171FF7171 + 71FF717171FF717171FF717171FF575757DF181818760000000B000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000001C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C + 1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C80000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000020808084618181876101010600000 + 0010000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000010303032B0F0F0F5E1818 + 1876181818760F0F0F5F0303032D000000010000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000010101201C1C1C7F1C1C + 1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C + 1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C + 1C801C1C1C801C1C1C7F02020223000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000001B1B1B7E717171FF7171 + 71FF717171FF717171FF717171FF717171FF717171FF717171FF717171FF7171 + 71FF717171FF717171FF717171FF717171FF717171FF717171FF717171FF7171 + 71FF717171FF717171FF1C1C1C80000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000001C1C1C80717171FF0000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000717171FF1C1C1C80000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000391F + 0484391F04840000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000001C1C1C80717171FF0000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000070707400707074007070740070707400707074007070740070707400101 + 012000000000717171FF1C1C1C80000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000391F0484D776 + 10FFD77610FF391F048400000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000030200220000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000302002200000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000001C1C1C80717171FF0000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00001C1C1C7F1C1C1C7F1C1C1C7F1C1C1C7F1C1C1C7F1C1C1C7F1C1C1C7F0707 + 074000000000717171FF1C1C1C80000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000391F0484D77610FFD776 + 10FFD77610FFD77610FF391F0484000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000391F0484361E04800000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000361E0480391F0484000000000000000000000000000000000000 + 000000000000000000000000000000000000000000001C1C1C80717171FF0000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00001C1C1C7F07070740000000000000000000000000000000001C1C1C7F0707 + 074000000000717171FF1C1C1C80000000000000000000000000000000000000 + 000000000000000000000000000000000000391F0484D77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FF391F04840000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000391F0484D77610FF361E04800000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000361E0480D77610FF391F04840000000000000000000000000000 + 000000000000000000000000000000000000000000001C1C1C80717171FF0000 + 0000010101200707074007070740070707400707074007070740010101200000 + 00001C1C1C7F10101060070707400707074007070740070707401C1C1C7F0707 + 074000000000717171FF1C1C1C80000000000000000000000000000000000000 + 0000000000000000000000000000391F0484D77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FF391F048400000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000391F0484D77610FFD77610FF361E04800000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000361E0480D77610FFD77610FF391F048400000000000000000000 + 000000000000000000000000000000000000000000001C1C1C80717171FF0000 + 0000070707401C1C1C7F1C1C1C7F1C1C1C7F1C1C1C7F1C1C1C7F070707400000 + 00001C1C1C7F1C1C1C7F1C1C1C7F1C1C1C7F1C1C1C7F1C1C1C7F1C1C1C7F0707 + 074000000000717171FF1C1C1C80000000000000000000000000000000000000 + 00000000000000000000391F0484D77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FF391F0484000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000391F0484D77610FFD77610FFD77610FF361E04800000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000361E0480D77610FFD77610FFD77610FF391F0484000000000000 + 000000000000000000000000000000000000000000001C1C1C80717171FF0000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000717171FF1C1C1C80000000000000000000000000000000000000 + 000000000000391F0484D77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FF391F04840000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000391F0484D77610FFD77610FFD77610FFD77610FF361E04800000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000361E0480D77610FFD77610FFD77610FFD77610FF391F04840000 + 000000000000000000000000000000000000000000001C1C1C80717171FF0000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000070707400707074007070740070707400707074007070740070707400101 + 012000000000717171FF1C1C1C80000000000000000000000000000000000000 + 000003020022361E0480361E0480361E0480361E0480361E04807A4309C0D776 + 10FFD77610FF7A4309C0361E0480361E0480361E0480361E0480361E04800302 + 0022000000000000000000000000000000000000000000000000000000000000 + 0000391F0484D77610FFD77610FFD77610FFD77610FFD77610FF7A4309C0361E + 0480361E0480361E0480361E0480361E0480361E0480361E0480361E0480361E + 0480361E0480000000000000000000000000000000000000000000000000361E + 0480361E0480361E0480361E0480361E0480361E0480361E0480361E0480361E + 0480361E04807A4309C0D77610FFD77610FFD77610FFD77610FFD77610FF391F + 048400000000000000000000000000000000000000001C1C1C80717171FF0000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00001C1C1C7F1C1C1C7F1C1C1C7F1C1C1C7F1C1C1C7F1C1C1C7F1C1C1C7F0707 + 074000000000717171FF1C1C1C80000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000361E0480D776 + 10FFD77610FF361E048000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000391F + 0484D77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FF000000000000000000000000000000000000000000000000D776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FF391F0484000000000000000000000000000000001C1C1C80717171FF0000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00001C1C1C7F07070740000000000000000000000000000000001C1C1C7F0707 + 074000000000717171FF1C1C1C80000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000361E0480D776 + 10FFD77610FF361E048000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000321C + 037CD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FF000000000000000000000000000000000000000000000000D776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FF321C037C000000000000000000000000000000001C1C1C80717171FF0000 + 0000010101200707074007070740070707400707074007070740010101200000 + 00001C1C1C7F10101060070707400707074007070740070707401C1C1C7F0707 + 074000000000717171FF1C1C1C80000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000361E0480D776 + 10FFD77610FF361E048000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000321C037CD77610FFD77610FFD77610FFD77610FFD77610FF7A4309C0361E + 0480361E0480361E0480361E0480361E0480361E0480361E0480361E0480361E + 0480361E0480000000000000000000000000000000000000000000000000361E + 0480361E0480361E0480361E0480361E0480361E0480361E0480361E0480361E + 0480361E04807A4309C0D77610FFD77610FFD77610FFD77610FFD77610FF321C + 037C00000000000000000000000000000000000000001C1C1C80717171FF0000 + 0000070707401C1C1C7F1C1C1C7F1C1C1C7F1C1C1C7F1C1C1C7F070707400000 + 00001C1C1C7F1C1C1C7F1C1C1C7F1C1C1C7F1C1C1C7F1C1C1C7F1C1C1C7F0707 + 074000000000717171FF1C1C1C80000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000361E0480D776 + 10FFD77610FF361E048000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000321C037CD77610FFD77610FFD77610FFD77610FF361E04800000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000361E0480D77610FFD77610FFD77610FFD77610FF321C037C0000 + 000000000000000000000000000000000000000000001C1C1C80717171FF0000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000717171FF1C1C1C80000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000361E0480D776 + 10FFD77610FF361E048000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000321C037CD77610FFD77610FFD77610FF361E04800000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000361E0480D77610FFD77610FFD77610FF321C037C000000000000 + 00000000000000000000000000000000000000000000291D1080A57441FF361E + 0480361E0480361E0480361E0480361E0480361E0480361E0480361E0480361E + 0480361E0480361E0480361E0480361E0480361E0480361E0480361E0480361E + 0480361E0480A57441FF291D1080000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000361E0480D776 + 10FFD77610FF361E048000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000321C037CD77610FFD77610FF361E04800000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000361E0480D77610FFD77610FF321C037C00000000000000000000 + 00000000000000000000000000000000000000000000361E0480D77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FF361E0480000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000361E0480D776 + 10FFD77610FF361E048000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000321C037CD77610FF361E04800000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000361E0480D77610FF321C037C0000000000000000000000000000 + 00000000000000000000000000000000000000000000361E0480D77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FF361E0480000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000361E0480D776 + 10FFD77610FF361E048000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000321C037C361E04800000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000361E0480321C037C000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000361E0480D77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FF361E0480000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000361E0480D776 + 10FFD77610FF361E048000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000000201001E0000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000201001E00000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000001A0E0259D27410FCD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD37410FD1D10025F000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000361E0480D776 + 10FFD77610FF361E048000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000E0E0E5D717171FE7171 + 71FF717171FF717171FF717171FF717171FF717171FF717171FF717171FF7171 + 71FF717171FF717171FF717171FF717171FF717171FF717171FF717171FF7171 + 71FF717171FF717171FF11111163000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000F0F + 0F5E1C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C + 1C801C1C1C801C1C1C801C1C1C801C1C1C7F0202022300000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000005280505246B070734800505256D0000052B0000 + 000000000000000000000000000000000000000000001C1C1C80717171FF1C1C + 1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C + 1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C + 1C801C1C1C80717171FF1C1C1C80000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000006F6F + 6FFD717171FF717171FF717171FF717171FF717171FF717171FF717171FF7171 + 71FF717171FF717171FF717171FF717171FF1C1C1C8000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000001160C0C62AF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF0E0E + 68B400000119000000000000000000000000000000001C1C1C80717171FF0000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000717171FF1C1C1C80000000000000000000000000000000000000 + 0000000000000000000000000000000000000000001200000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000007171 + 71FF1C1C1C800000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000717171FF1C1C1C8000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0115141499DA1919C3F60606307C0000021E000000000000021B06062D771919 + BDF314149EDE000001190000000000000000000000001C1C1C80717171FF0000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000717171FF1C1C1C80000000000000000000000000000000000000 + 0000000000000000000000000000092901841B7A02E100020022000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000007171 + 71FF1C1C1C800000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000717171FF1C1C1C8000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000C0C + 5EAB1B1BD1FF1A1AC9FA02021451000000000000000000000000000000000101 + 08321919BDF30D0D67B30000000000000000000000001C1C1C80717171FF0000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000717171FF1C1C1C80000000000000000000000000000000000000 + 0000000000000000000009290184229C02FF229C02FF1B7A02E1000200220000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000007171 + 71FF1C1C1C800000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000717171FF1C1C1C8000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000004241B1B + CFFE09094896141497D91A1AC9FA020214510000000000000000000000000000 + 000006062D771B1BD1FF0000052B00000000000000001C1C1C80717171FF0000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000717171FF1C1C1C80000000000000000000000000000000000000 + 00000000000009290184229C02FF229C02FF229C02FF229C02FF1B7A02E10002 + 0022000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000007171 + 71FF1C1C1C800000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000717171FF717171FF717171FF717171FF7171 + 71FF585858E10000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000040420651B1B + D1FF000003230000021A141497D91A1AC9FA0202145100000000000000000000 + 00000000021C1B1BD1FF0505256D00000000000000001C1C1C80717171FF0000 + 00000000000000000000CB6F0FF8D77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD57510FE000000000000 + 000000000000717171FF1C1C1C80000000000000000000000000000000000000 + 000009290184229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF1B7A + 02E1000200220000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000007171 + 71FF1C1C1C800000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000717171FF404040C01C1C1C801C1C1C804040 + 40C0717171FF0000000000000000000000000000000000000000010101201414 + 146B00000003000000000000000000000000000000000000000006062D781B1B + D1FF00000008000000000000021A141497D91A1AC9FA02021451000000000000 + 0000000000001B1BD1FF0707348000000000000000001C1C1C80717171FF0000 + 0000000000000000000091500BD1D77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FF9D560BDA000000000000 + 000000000000717171FF1C1C1C80000000000000000000000000000000000929 + 0184229C02FF229C02FF229C02FF197502DD0A2E018C229C02FF229C02FF229C + 02FF1B7A02E10002002200000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000007171 + 71FF1C1C1C800000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000717171FF1C1C1C8000000000000000001C1C + 1C80717171FF000000000000000000000000000000000101011F585858E17171 + 71FF2D2D2DA1000000030000000000000000000000000000000004041F641B1B + D1FF0000042600000000000000000000021A141497D91A1AC9FA020214510000 + 00000000021E1B1BD1FF0505256C00000000000000001C1C1C80717171FF0000 + 00000000000000000000130A014DC96E0FF7D77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFCE7110FA170D0155000000000000 + 000000000000717171FF1C1C1C8000000000000000000000000009290184229C + 02FF229C02FF229C02FF197502DD0002001E000000000824007C229C02FF229C + 02FF229C02FF1B7A02E100020022000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000007171 + 71FF1C1C1C800000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000717171FF1C1C1C8000000000000000001C1C + 1C80717171FF0000000000000000000000000000000010101061717171FF7171 + 71FF717171FF2D2D2DA100000003000000000000000000000000000003211B1B + CFFE070736830000000000000000000000000000021A141497D91A1AC9FA0202 + 14510606307C1B1BD1FF0000052800000000000000001C1C1C80717171FF0000 + 00000000000000000000000000000201001B351D047FBA660EED784209BF0502 + 0027040200246E3C08B7BB670EEE3A2004850302002100000000000000000000 + 000000000000717171FF1C1C1C80000000000000000002090040229C02FF229C + 02FF229C02FF197502DD0002001E0000000000000000000000000824007C229C + 02FF229C02FF229C02FF1B7A02E1000200220000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000007171 + 71FF1C1C1C800000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000717171FF1C1C1C8000000000000000001C1C + 1C80717171FF0000000000000000000000000000000000000001252525937171 + 71FF717171FF717171FF2D2D2DA1000000030000000000000000000000000B0B + 5AA71A1AC5F801010B3D0000000000000000000000000000021A141497D91A1A + C9FA1919C3F60C0C61AE0000000000000000000000001C1C1C80717171FF0000 + 00000000000000000000000000000000000000000000030200230301001F2615 + 026C2816036F0201001B03010020000000000000000000000000000000000000 + 000000000000717171FF1C1C1C800000000000000000000000000824007C229C + 02FF197502DD0002001E00000000000000000000000000000000000000000824 + 007C229C02FF229C02FF229C02FF1B7A02E10002002200000000000000000000 + 0000000000000000000000000000000000000000000000000000000000007171 + 71FF1C1C1C800000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000717171FF1C1C1C8000000000000000001C1C + 1C80717171FF0000000000000000000000000000000000000000000000012525 + 2593717171FF717171FF717171FF2D2D2DA10000000300000002010101200000 + 0112131392D51A1AC5F8070736830000042500000008000003230A0A49971B1B + D1FF141499DA000001160000000000000000000000001C1C1C80717171FF0000 + 00000000000000000000000000000000000000000000000000006F3D08B7D776 + 10FFD77610FF85490AC900000003000000000000000000000000000000000000 + 000000000000717171FF1C1C1C8000000000000000000000000000000000061B + 006C0002001E0000000000000000000000000000000000000000000000000000 + 00000824007C229C02FF229C02FF229C02FF1B7A02E100020022000000000000 + 0000000000000000000000000000000000000000000000000000000000007171 + 71FF1C1C1C8000000000000000000000000000000000000000000E0E0E5D7171 + 71FE717171FF717171FF717171FF717171FF1818187700000000000000001C1C + 1C80717171FF0000000000000000000000000000000000000000000000000000 + 000125252593717171FF717171FF717171FF2D2D2DA12929299A575757E10101 + 011A000001120B0B5AA71B1BCFFE1B1BD1FF1B1BD1FF1B1BD1FF1B1BCFFE0C0C + 5EAB00000115000000000000000000000000000000001C1C1C80717171FF0000 + 000000000000000000000000000000000000000000000B06003CD77610FFD776 + 10FFD77610FFD77610FF150C0151000000000000000000000000000000000000 + 000000000000717171FF1C1C1C80000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000824007C229C02FF229C02FF229C02FF1B7A02E1000200220000 + 0000000000000000000000000000000000000000000000000000000000007171 + 71FF1C1C1C8000000000000000000000000000000000000000001C1C1C807171 + 71FF717171FF717171FF717171FF383838B40000000700000000000000001C1C + 1C80717171FF0000000000000000000000000000000000000000000000000000 + 00000000000125252593717171FF717171FF717171FF717171FF717171FF5757 + 57E101010120000000000000032104041F6306062D7804042065000003230000 + 000000000000000000000000000000000000000000001C1C1C80717171FF0000 + 000000000000000000000000000000000000000000007C4409C2D77610FFD776 + 10FFD77610FFD77610FF874A0ACA000000000000000000000000000000000000 + 000000000000717171FF1C1C1C80000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000824007C229C02FF229C02FF229C02FF1B7A02E10002 + 0022000000000000000000000000000000000000000000000000000000007171 + 71FF1C1C1C8000000000000000000000000000000000000000001C1C1C807171 + 71FF717171FF717171FF383838B4000000070000000000000000000000001C1C + 1C80717171FF0000000000000000000000000000000000000000000000000000 + 0000000000000000000125252593717171FF717171FF717171FF717171FF2929 + 299A000000020000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000001C1C1C80717171FF0000 + 00000000000000000000000000000000000000000000A45A0DDFD77610FFD776 + 10FFD77610FFD77610FFA65B0DE0000000000000000000000000000000000000 + 000000000000717171FF1C1C1C80000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000824007C229C02FF229C02FF229C02FF1B7A + 02E1000200220000000000000000000000000000000000000000000000007171 + 71FF1C1C1C8000000000000000000000000000000000000000001C1C1C807171 + 71FF717171FF383838B400000007000000000000000000000000000000001C1C + 1C80717171FF0000000000000000000000000000000000000000000000000000 + 000000000000000000022929299A717171FF717171FF717171FF717171FF2D2D + 2DA1000000030000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000001C1C1C80717171FF0000 + 00000000000000000000000000000000000000000000C36B0FF3D77610FFD776 + 10FFD77610FFD77610FFD07210FB000000000000000000000000000000000000 + 000000000000717171FF1C1C1C80000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000824007C229C02FF229C02FF229C + 02FF1B7A02E10002002200000000000000000000000000000000000000007171 + 71FF404040C01C1C1C801C1C1C801C1C1C801C1C1C801C1C1C80404040C07171 + 71FF383838B400000007000000000F0F0F5E1C1C1C801C1C1C801C1C1C804040 + 40C0717171FF0000000000000000000000000000000000000000000000000000 + 0000000000022929299A717171FF717171FF717171FF717171FF717171FF7171 + 71FF2D2D2DA10000000300000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000001C1C1C80717171FF0000 + 00000000000000000000000000000000000000000000A1580CDDD77610FFD776 + 10FFD77610FFD77610FF321C037C000000000000000000000000000000000000 + 000000000000717171FF1C1C1C80000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000824007C229C02FF229C + 02FF229C02FF1B7A02E100020022000000000000000000000000000000004F4F + 4FD6717171FF717171FF717171FF717171FF717171FF717171FF717171FF3838 + 38B40000000700000000000000006F6F6FFD717171FF717171FF717171FF7171 + 71FF383838B40000000000000000000000000000000000000000000000000000 + 00022929299A717171FF717171FF717171FF2929299A25252593717171FF7171 + 71FF717171FF2D2D2DA100000003000000000000000000000000000000000000 + 000000000000000000000000000000000000000000001C1C1C80717171FF0000 + 000000000000000000000000000000000000000000000F0801459B550CD9C96E + 0FF7A45A0DDF2D19037600000000000000000000000000000000000000000000 + 000000000000717171FF1C1C1C80000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000000824007C229C + 02FF229C02FF197502DD0002001E000000000000000000000000000000000000 + 00000000000000000000000000001C1C1C80717171FF00000000000000000000 + 0000000000000000000000000000717171FF717171FF717171FF717171FF3838 + 38B4000000070000000000000000000000000000000000000000000000022929 + 299A717171FF717171FF717171FF2929299A0000000200000001252525937171 + 71FF717171FF717171FF2D2D2DA1000000030000000000000000000000000000 + 000000000000000000000000000000000000000000001C1C1C80717171FF0000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000717171FF1C1C1C80000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000824 + 007C197502DD0002001E00000000000000000000000000000000000000000000 + 00000000000000000000000000001C1C1C80717171FF00000000000000000000 + 0000000000000000000000000000717171FF717171FF717171FF383838B40000 + 00070000000000000000000000000000000000000000000000022929299A7171 + 71FF717171FF717171FF2929299A000000020000000000000000000000012525 + 2593717171FF717171FF717171FF2D2D2DA10000000300000000000000000000 + 000000000000000000000000000000000000000000001C1C1C80717171FF0000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000717171FF1C1C1C80000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000E0000000000000000000000000000000000000000000000000000 + 00000000000000000000000000001C1C1C80717171FF00000000000000000000 + 0000000000000000000000000000717171FF717171FF383838B4000000070000 + 0000000000000000000000000000000000000000000011111163717171FF7171 + 71FF717171FF2929299A00000002000000000000000000000000000000000000 + 000125252593717171FF717171FF717171FF1414146B00000000000000000000 + 000000000000000000000000000000000000000000001C1C1C80717171FF0000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000717171FF1C1C1C80000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000001B1B1B7D717171FF717171FF717171FF7171 + 71FF717171FF717171FF717171FF717171FF383838B400000007000000000000 + 000000000000000000000000000000000000000000000101011A525252D97171 + 71FF2929299A0000000200000000000000000000000000000000000000000000 + 00000000000125252593717171FF555555DD0101011E00000000000000000000 + 000000000000000000000000000000000000000000001C1C1C80717171FF0000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000717171FF1C1C1C80000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000101011C1B1B1B7D1C1C1C801C1C1C801C1C + 1C801C1C1C801C1C1C801C1C1C80181818770000000700000000000000000000 + 00000000000000000000000000000000000000000000000000000101011A1111 + 1163000000020000000000000000000000000000000000000000000000000000 + 00000000000000000001101010600101011D0000000000000000000000000000 + 000000000000000000000000000000000000000000001C1C1C80717171FF1C1C + 1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C + 1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C1C801C1C + 1C801C1C1C80717171FF1C1C1C80000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000D0D0D596F6F6FFC7171 + 71FF717171FF717171FF717171FF717171FF717171FF717171FF717171FF7171 + 71FF717171FF717171FF717171FF717171FF717171FF717171FF717171FF7171 + 71FF717171FF6F6F6FFD0F0F0F5F000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 004D0000004D0000004D0000004D0000004D0000004D0000004D0000004D0000 + 004D0000004D0000004D0000004D0000004D0000004D0000004D0000004D0000 + 004D0000004D0000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000002020E4400000000000000000000 + 0000000000000000000002020E44000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0003000000000000000000000000000000000000000000000000000000000000 + 0099000000990000009900000099000000990000009900000099000000990000 + 0099000000990000009900000099000000990000009900000099000000990000 + 0099000000990000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000070737841B1BD1FF07073784000000000000 + 000000000000070737841B1BD1FF070737840000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000111111656767 + 67F40909094B0000000000000000000000000000000000000000000000000000 + 0099666666CCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6666 + 66CC000000990000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000606307C1B1BD1FF1B1BD1FF070737840000 + 0000070737841B1BD1FF1B1BD1FF0606307C0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000011111165707070FE7171 + 71FF636363EF0000000000000000000000000000000000000000000000000000 + 0099666666CCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6666 + 66CC000000990000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000606307C1B1BD1FF1B1BD1FF1010 + 7AC31B1BD1FF1B1BD1FF0606307C000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000020000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000011111165707070FE717171FF6D6D + 6DFA0B0B0B510000000000000000000000000000000000000000000000000000 + 0099666666CCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6666 + 66CC000000990000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000606307C1B1BD1FF1B1B + D1FF1B1BD1FF0606307C00000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000050200280000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000011111165707070FE717171FF6D6D6DFB0D0D + 0D57000000000000000000000000000000000000000000000000000000000000 + 0099666666CCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6666 + 66CC000000990000000000000000000000001C1C1C7F1C1C1C7F1C1C1C7F1C1C + 1C7F1C1C1C7F1C1C1C7F00000000070707401C1C1C7F1C1C1C7F1C1C1C7F1C1C + 1C7F1C1C1C7F07070740000000000000000000000000070737841B1BD1FF1B1B + D1FF1B1BD1FF0707378400000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000000201001E6839 + 08B1000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000361E04800000000000000000000000000000 + 000000000000000000000000000001010121111111641C1C1C7F181818770808 + 0847000000060000000011111165707070FE717171FF6D6D6DFB0D0D0D570000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0099666666CCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6666 + 66CC000000990000000000000000000000001C1C1C7F1C1C1C7F1C1C1C7F1C1C + 1C7F1C1C1C7F1C1C1C7F00000000070707401C1C1C7F1C1C1C7F1C1C1C7F1C1C + 1C7F1C1C1C7F070707400000000000000000070737841B1BD1FF1B1BD1FF0F0F + 71BB1B1BD1FF1B1BD1FF07073784000000000000000000000000000000000000 + 000000000000000000000000000000000000000000042A170372C36B0FF3D776 + 10FF000000000000000000000000000000000000000000000000000000000000 + 000000000000000000013B2004864A2905960000000000000000000000000000 + 0000000000000101011A333333AC707070FE717171FF717171FF717171FF7171 + 71FF5C5C5CE628282897707070FE717171FF6F6F6FFD0E0E0E5C000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0099666666CCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6666 + 66CC000000990000000000000000000000001C1C1C7F1C1C1C7F1C1C1C7F1C1C + 1C7F1C1C1C7F1C1C1C7F00000000070707401C1C1C7F1C1C1C7F1C1C1C7F1C1C + 1C7F1C1C1C7F0707074000000000070737841B1BD1FF1B1BD1FF0606307C0000 + 00000606307C1B1BD1FF1B1BD1FF070737840000000000000000000000000000 + 0000000000000000000000000000090500358C4D0BCED77610FFD77610FFD776 + 10FF000000000000000000000000000000000000000000000000000000000000 + 00000301001F663808B0D77610FF140B01500000000000000000000000000000 + 0000020202255A5A5AE4676767F41C1C1C8002020225000000020000000B0909 + 0948404040C0717171FF717171FF6F6F6FFD0F0F0F5E00000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0099666666CCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6666 + 66CC000000990000000000000000000000001C1C1C7F1C1C1C7F1C1C1C7F1C1C + 1C7F1C1C1C7F1C1C1C7F00000000070707401C1C1C7F1C1C1C7F1C1C1C7F1C1C + 1C7F1C1C1C7F07070740000000000606307C1B1BD1FF0606307C000000000000 + 0000000000000606307C1B1BD1FF0606307C0000000000000000000000000000 + 0000000000000000000E45260591D27410FCD77610FFD77610FFD77610FFD776 + 10FF00000000000000000000000000000000000000000000000F150C01515C32 + 07A7CD7010F9D77610FFB6640EEB000000070000000000000000000000000000 + 00074E4E4ED45E5E5EE90303032B000000000000000000000000000000000000 + 0000000000012121218C717171FF262626950000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0099666666CCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6666 + 66CC000000990000000000000000000000000707074007070740070707400707 + 0740070707400707074000000000010101200707074007070740070707400707 + 07400707074001010120000000000000000001010B3C00000000000000000000 + 0000000000000000000001010B3C000000000000000000000000000000000000 + 0000160C0152AB5E0DE4D77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FF3C2104874023048C512C069D6D3C08B69E570CDBD47410FDD77610FFD776 + 10FFD77610FFD77610FF361E0480000000000000000000000000000000001212 + 1268717171FF0909094A00000000000000000000000000000000000000000000 + 00000000000000000001404040C05F5F5FEA0000000800000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0099666666CCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6666 + 66CC000000990000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000000201001E6839 + 08B1D77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFA95D0DE20000000D000000000000000000000000000000004040 + 40C04B4B4BD00000000000000000000000000000000000000000000000000000 + 0000000000000000000009090949717171FF0909094B00000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0099666666CCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6666 + 66CC00000099000000000000000000000000229C02FF229C02FF229C02FF229C + 02FF229C02FF229C02FF0000000009270180229C02FF229C02FF229C02FF229C + 02FF229C02FF09270180000000001C1C1C7F1C1C1C7F1C1C1C7F1C1C1C7F1C1C + 1C7F1C1C1C7F000000000000000000000000000000042A170372C36B0FF3D776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFCF7210FA0D07003F00000000000000000000000000000000000000006363 + 63EF252525920000000000000000000000000000000000000000000000000000 + 000000000000000000000000000B717171FF1818187800000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0099666666CCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6666 + 66CC00000099000000000000000000000000229C02FF229C02FF229C02FF229C + 02FF229C02FF229C02FF0000000009270180229C02FF229C02FF229C02FF229C + 02FF229C02FF09270180000000001C1C1C7F1C1C1C7F1C1C1C7F1C1C1C7F1C1C + 1C7F1C1C1C7F00000000000000000000000049290596D77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFCD70 + 10F9180D02570000000000000000000000000000000000000000000000006969 + 69F6202020880000000000000000000000000000000000000000000000000000 + 0000000000000000000000000002717171FF1C1C1C7F00000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0099666666CCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6666 + 66CC00000099000000000000000000000000229C02FF229C02FF229C02FF229C + 02FF229C02FF229C02FF0000000009270180229C02FF229C02FF229C02FF229C + 02FF229C02FF09270180000000001C1C1C7F1C1C1C7F1C1C1C7F1C1C1C7F1C1C + 1C7F1C1C1C7F000000000000000000000000000000022414026ABE690FF0D776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FF9F570CDB0B06 + 003B000000000000000000000000000000000000000000000000000000005353 + 53DB333333AC0000000000000000000000000000000000000000000000000000 + 0000000000000000000002020225717171FF1111116400000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0099666666CCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6666 + 66CC00000099000000000000000000000000229C02FF229C02FF229C02FF229C + 02FF229C02FF229C02FF0000000009270180229C02FF229C02FF229C02FF229C + 02FF229C02FF09270180000000001C1C1C7F1C1C1C7F1C1C1C7F1C1C1C7F1C1C + 1C7F1C1C1C7F0000000000000000000000000000000000000000020100195F34 + 07A9D77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD57610FE894B0BCC23130268000000070000 + 0000000000000000000000000000000000000000000000000000000000002727 + 2797676767F40000001400000000000000000000000000000000000000000000 + 000000000000000000001C1C1C80707070FE0101012100000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0099666666CCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFADADADE6666666CC666666CC666666CC666666CC666666CC2C2C + 2CB3000000990000000000000000000000000927018009270180092701800927 + 0180092701800927018000000000020900400927018009270180092701800927 + 0180092701800209004000000000070707400707074007070740070707400707 + 0740070707400000000000000000000000000000000000000000000000000000 + 00001109014AA45A0DDFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FF2F1A03782414026A110A014A010000170000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000202 + 02296D6D6DFA313131A800000001000000000000000000000000000000000000 + 0000000000000303032B676767F4333333AC0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0099666666CCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFF666666CC00000099000000990000009900000099000000990000 + 0099000000990000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000B3E220489CF7210FBD77610FFD77610FFD77610FFD776 + 10FF000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000018181876717171FF313131A8000000140000000000000000000000000000 + 00000909094A5E5E5EE95A5A5AE40101011A0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0099666666CCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFF666666CC00000099FFFFFFFFFFFFFFFFFFFFFFFFD0D0D0F11313 + 13A500000094000000000000000000000000229C02FF229C02FF229C02FF229C + 02FF229C02FF229C02FF0000000009270180229C02FF229C02FF229C02FF229C + 02FF229C02FF09270180000000001C1C1C7F1C1C1C7F1C1C1C7F1C1C1C7F1C1C + 1C7F1C1C1C7F0000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000703002E83480AC7D77610FFD77610FFD776 + 10FF000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000181818766D6D6DFA676767F4333333AC20202089252525934B4B + 4BD0717171FF4E4E4ED402020225000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0099666666CCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFF666666CC00000099FFFFFFFFFFFFFFFFD0D0D0F1131313A50000 + 009400000029000000000000000000000000229C02FF229C02FF229C02FF229C + 02FF229C02FF229C02FF0000000009270180229C02FF229C02FF229C02FF229C + 02FF229C02FF09270180000000001C1C1C7F1C1C1C7F1C1C1C7F1C1C1C7F1C1C + 1C7F1C1C1C7F0000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000022414026ABE690FF0D776 + 10FF000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000202022927272797535353DB696969F6636363EF4040 + 40C1121212680000000700000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0099666666CCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFF666666CC00000099FFFFFFFFD0D0D0F1131313A5000000940000 + 002900000000000000000000000000000000229C02FF229C02FF229C02FF229C + 02FF229C02FF229C02FF0000000009270180229C02FF229C02FF229C02FF229C + 02FF229C02FF09270180000000001C1C1C7F1C1C1C7F1C1C1C7F1C1C1C7F1C1C + 1C7F1C1C1C7F0000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000020100195F34 + 07A9000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0099666666CCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFF666666CC00000099D0D0D0F1131313A500000094000000290000 + 000000000000000000000000000000000000229C02FF229C02FF229C02FF229C + 02FF229C02FF229C02FF0000000009270180229C02FF229C02FF229C02FF229C + 02FF229C02FF09270180000000001C1C1C7F1C1C1C7F1C1C1C7F1C1C1C7F1C1C + 1C7F1C1C1C7F0000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00992C2C2CB3666666CC666666CC666666CC666666CC666666CC666666CC6666 + 66CC666666CC2C2C2CB300000099131313A50000009400000029000000000000 + 0000000000000000000000000000000000000927018009270180092701800927 + 0180092701800927018000000000020900400927018009270180092701800927 + 0180092701800209004000000000070707400707074007070740070707400707 + 0740070707400000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0099000000990000009900000099000000990000009900000099000000990000 + 0099000000990000009900000099000000940000002900000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000021120265361E0480361E + 0480361E0480361E0480361E0480361E0480361E0480361E0480361E0480361E + 0480241402690000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000D37410FDD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FF0000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000D77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FF0000000000000000000000000000000000000000000000000000 + 0000000000030202104700000003000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000202020F460000 + 0004000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000001020211490B0B58A51515A1E01B1B + CDFD1B1BCDFD1616A4E20B0B5AA80202124D0000000200000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000D77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FF0000000000000000000000000000000000000000000000000000 + 00030B0B53A11B1BD1FF0B0B53A1000000030000000000000000000000000000 + 000000000000000000000000000000000000000000020A0A4B9A1B1BD1FF0B0B + 5AA8000000040000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000052811117FC71B1BD1FF1B1BD1FF1B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF111184CB0000062C000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000D77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FF0000000000000000000000000000000000000000000000000101 + 0C3E1B1BD1FF1B1BD1FF1B1BD1FF0B0B53A10000000300000000000000000000 + 0000000000000000000000000000000000020A0A4B9A1B1BD1FF1B1BD1FF1B1B + D1FF020210470000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000001010C3F1818BBF11B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1919BFF402020F450000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000D77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FF0000000000000000000000000000000000000000000000000000 + 0001090944931B1BD1FF1B1BD1FF1B1BD1FF0B0B53A100000003000000000000 + 00000000000000000000000000020A0A4B9A1B1BD1FF1B1BD1FF1B1BD1FF0A0A + 4B9A000000020000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000004271818BAF11B1BD1FF1B1BD1FF1A1AC3F708083E8C000007300000 + 0005000000040000062E08083B891919C1F51B1BD1FF1B1BD1FF1919BDF30000 + 062D000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000D77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FF0000000000000000000000000000000000000000000000000000 + 000000000001090944931B1BD1FF1B1BD1FF1B1BD1FF0B0B53A1000000030000 + 000000000000000000020A0A4B9A1B1BD1FF1B1BD1FF1B1BD1FF0A0A4B9A0000 + 0002000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000110107CC41B1BD1FF1B1BD1FF1616A7E40000062E00000000000000000000 + 0000000000000000000000000000000005291515A1E01B1BD1FF1B1BD1FF1111 + 84CB000000020000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000D77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FF0000000000000000000000000000000000000000000000000000 + 00000000000000000001090944931B1BD1FF1B1BD1FF1B1BD1FF0B0B53A10000 + 0003000000020A0A4B9A1B1BD1FF1B1BD1FF1B1BD1FF0A0A4B9A000000020000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000202 + 0F451B1BD1FF1B1BD1FF1A1AC5F80000062F0000000000000000000000000000 + 000000000000000000000000000000000000000005291919C1F51B1BD1FF1B1B + D1FF0202124D0000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000D77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FF0000000000000000000000000000000000000000000000000000 + 0000000000000000000000000001090944931B1BD1FF1B1BD1FF1B1BD1FF0B0B + 53A10A0A4B9A1B1BD1FF1B1BD1FF1B1BD1FF0A0A4B9A00000002000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000B0B + 519F1B1BD1FF1B1BD1FF09094391000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000008083B891B1BD1FF1B1B + D1FF0B0B5AA70000000000000000000000000000000000000000000000002112 + 0265361E0480361E0480361E0480361E0480361E0480D77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FF0000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000001090944931B1BD1FF1B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF1B1BD1FF0A0A4B9A0000000200000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000404 + 1E62070734800707348007073480070734800707348007073480070734800707 + 3480070734800707348007073480070734800707348007073480070734800707 + 348004041F620000000000000000000000000000000000000000000000001414 + 99DA1B1BD1FF1B1BD1FF01010936000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000062E1B1BD1FF1B1B + D1FF1616A4E2000000000000000000000000000000000000000000000000D374 + 10FDD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FF0000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000001090944931B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF0A0A4B9A000000020000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000001B1B + CDFD1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1B + D1FF1B1BD1FF0000000000000000000000000000000000000000000000001919 + C1F51B1BD1FF1B1BD1FF0000000C000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000041B1BD1FF1B1B + D1FF1B1BCDFD000000000000000000000000000000000000000000000000D776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FF0000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000020A0A4B9A1B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF0B0B53A1000000030000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000001B1B + CDFD1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1BD1FF1B1B + D1FF1B1BD1FF0000000000000000000000000000000000000000000000001919 + C0F51B1BD1FF1B1BD1FF0000000D000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000051B1BD1FF1B1B + D1FF1B1BCDFD000000000000000000000000000000000000000000000000D776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FF361E0480361E0480361E0480361E0480361E + 0480201102630000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000020A0A4B9A1B1BD1FF1B1BD1FF1B1B + D1FF1B1BD1FF1B1BD1FF1B1BD1FF0B0B53A10000000300000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000303 + 1C5F070734800707348007073480070734800707348007073480070734800707 + 3480070734800707348007073480070734800707348007073480070734800707 + 348004041D600000000000000000000000000000000000000000000000001414 + 97D91B1BD1FF1B1BD1FF01010937000000000000000000000000000004250606 + 337F0707348000000529000000000000000000000000010108321B1BD1FF1B1B + D1FF1515A2E1000000000000000000000000000000000000000000000000D776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FF000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000020A0A4B9A1B1BD1FF1B1BD1FF1B1BD1FF0A0A + 4B9A090944931B1BD1FF1B1BD1FF1B1BD1FF0B0B53A100000003000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000A0A + 519F1B1BD1FF1B1BD1FF090945930000000000000000000000000606327E1B1B + D1FF1B1BD1FF070734800000000000000000000000000808418F1B1BD1FF1B1B + D1FF0B0B5AA7000000000000000000000000000000000000000000000000D776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FF000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000020A0A4B9A1B1BD1FF1B1BD1FF1B1BD1FF0A0A4B9A0000 + 000200000001090944931B1BD1FF1B1BD1FF1B1BD1FF0B0B53A1000000030000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000202 + 0F451B1BD1FF1B1BD1FF1A1AC7F9010108330000000000000000070734801B1B + D1FF1B1BD1FF0707348000000000000000000000072F1A1AC5F81B1BD1FF1B1B + D1FF0202124D000000000000000000000000000000000000000000000000D776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FF000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000020A0A4B9A1B1BD1FF1B1BD1FF1B1BD1FF0A0A4B9A000000020000 + 00000000000000000001090944931B1BD1FF1B1BD1FF1B1BD1FF0B0B53A10000 + 0003000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00010F0F7AC31B1BD1FF1B1BD1FF1717ADE80101093500000000070734801B1B + D1FF1B1BD1FF0707348000000000000007311616A9E51B1BD1FF1B1BD1FF1111 + 83CA00000002000000000000000000000000000000000000000000000000D776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FF000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00020A0A4B9A1B1BD1FF1B1BD1FF1B1BD1FF0A0A4B9A00000002000000000000 + 0000000000000000000000000001090944931B1BD1FF1B1BD1FF1B1BD1FF0B0B + 53A1000000030000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000004261818BAF11B1BD1FF1B1BD1FF1B1BC9FB00000000070734801B1B + D1FF1B1BD1FF07073480000000001A1AC7F91B1BD1FF1B1BD1FF1919BDF30000 + 052B00000000000000000000000000000000000000000000000000000000D776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FF000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000101 + 0C3F1B1BD1FF1B1BD1FF1B1BD1FF0A0A4B9A0000000200000000000000000000 + 000000000000000000000000000000000001090944931B1BD1FF1B1BD1FF1B1B + D1FF020210470000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000001010C3F1818B9F01B1BD1FF1B1BD1FF00000000070734801B1B + D1FF1B1BD1FF07073480000000001B1BD1FF1B1BD1FF1919BDF302020E440000 + 000000000000000000000000000000000000000000000000000000000000D776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FF000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00020A0A4B9A1B1BD1FF0A0A4B9A000000020000000000000000000000000000 + 00000000000000000000000000000000000000000001090944931B1BD1FF0B0B + 53A1000000030000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000004260F0F79C21B1BD1FF00000000070734801B1B + D1FF1B1BD1FF07073480000000001B1BD1FF11117EC600000529000000000000 + 000000000000000000000000000000000000000000000000000000000000D776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FF000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000201010C3E00000002000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000101010C3E0000 + 0003000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000001010D4200000000070734801B1B + D1FF1B1BD1FF070734800000000002020F450000000100000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D374 + 10FDD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FF000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000000606327E1B1B + D1FF1B1BD1FF0707348000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000001D10 + 025F361E0480361E0480361E0480361E0480361E0480361E0480361E0480361E + 0480361E0480361E048020110263000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000003220606 + 327D0606327E0000042500000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000391F + 0484000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000391F0484D776 + 10FF000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000391F0484D77610FFD776 + 10FF000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000031A25620003 + 0422000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000391F0484D77610FFD77610FFD776 + 10FFD37410FDA95D0DE25D3307A8130A014D0000000200000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000000414005D229B + 02FE229C02FF0517006300000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D776 + 10FFD77610FFD77610FFA1580CDD0201001E0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000052C40801089 + C6E1000304220000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000D070140D77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FF884B0BCB0603002C000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000009270180229C + 02FF229C02FF0927018000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D776 + 10FFD77610FFA1580CDD0201001E0201001E743F09BB0201001E000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000052C408014B1 + FFFF1089C6E10003042200000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000C07003E1B0F025C00000000321C037CD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FFC56C0FF40F0801450000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000009270180229C + 02FF229C02FF0927018000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D776 + 10FFA1580CDD0201001E0201001EA1580CDDD77610FFA1580CDD0201001E0000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000052C408014B1 + FFFF14B1FFFF052C408000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000004020026BE690FF0D37410FD1D10025E00000000321C037CD77610FFD776 + 10FF000000040703002E3E220489C76E0FF5D77610FFD77610FFC36C0FF30603 + 002D000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000009270180229C + 02FF229C02FF0927018000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000A158 + 0CDD0201001E0201001EA1580CDDD77610FFD77610FFD77610FFA1580CDD0201 + 001E000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000052C408014B1 + FFFF14B1FFFF052C408000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00017D4509C3D77610FFD77610FF9E570CDB0000000900000000321C037CD776 + 10FF00000000000000000000000005030029A65B0DE0D77610FFD77610FF884B + 0BCB000000020000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000009270180229C + 02FF229C02FF0927018000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000201 + 001E0201001EA1580CDDD77610FFD77610FFD77610FFD77610FFD77610FFA158 + 0CDD0201001E0000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000052C408014B1 + FFFF14B1FFFF052C408000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000F08 + 0145D77610FFD77610FFC56C0FF405020027000000000000000000000000321C + 037C0000000000000000000000000000000005030029C76D0FF5D77610FFD776 + 10FF130A014D0000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000009270180229C + 02FF229C02FF0927018000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000046260592D77610FFD77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFA1580CDD0201001E00000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000052C408014B1 + FFFF14B1FFFF052C408000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000532D + 069FD77610FFD77610FF381F0483000000000000000000000000000000000000 + 000000000000000000000000000000000000000000003E220489D77610FFD776 + 10FF5C3207A70000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000009270180229C + 02FF229C02FF0927018000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000005643708AED77610FFD77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFA1580CDD0201001E000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000052C408014B1 + FFFF14B1FFFF052C408000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000009D56 + 0BDAD77610FFD77610FF04020026000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000703002ED77610FFD776 + 10FFA85C0DE20000000000000000000000000000000000000000000000000415 + 005E092701800927018009270180092701800927018009270180145702C0229C + 02FF229C02FF145702C009270180092701800927018009270180092701800927 + 0180051600620000000000000000000000000000000000000000000000000000 + 00000000000000000005643708AED77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFA1580CDD0201001E0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000052C408014B1 + FFFF14B1FFFF052C408000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000C76D + 0FF5D77610FFC86E0FF600000001000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000004D77610FFD776 + 10FFD37410FD000000000000000000000000000000000000000000000000229A + 02FD229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C + 02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C + 02FF229C02FF0000000000000000000000000000000000000000000000000000 + 0000000000000000000000000005643708AED77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFA1580CDD0201001E00000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000304221089C6E114B1 + FFFF14B1FFFF1089C6E100030422000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000C66D + 0FF5D77610FFC96E0FF700000001000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000005D77610FFD776 + 10FFD37410FD0000000000000000000000000000000000000000000000002298 + 02FC229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C + 02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C02FF229C + 02FF229B02FE0000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000005643708AED77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFA1580CDD0201001E000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000304221089C6E114B1FFFF14B1 + FFFF14B1FFFF14B1FFFF1089C6E1000304220000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000009B55 + 0BD9D77610FFD77610FF04020026000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000008040033D77610FFD776 + 10FFA65B0DE00000000000000000000000000000000000000000000000000412 + 0059092701800927018009270180092701800927018009270180145702C0229C + 02FF229C02FF145702C009270180092701800927018009270180092701800927 + 01800414005D0000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000005643708AED77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FFD77610FF4124048D000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000304221089C6E114B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF14B1FFFF1089C6E10003042200000000000000000000 + 000000000000000000000000000000000000000000000000000000000000522D + 069DD77610FFD77610FF371E0482000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000045260591D77610FFD776 + 10FF5A3107A50000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000009270180229C + 02FF229C02FF0927018000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000005643708AED776 + 10FFD77610FFD77610FFD77610FFD77610FF5D3307A800000004080400320201 + 001A000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000304221089C6E114B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF1089C6E100030422000000000000 + 0000000000000000000000000000000000000000000000000000000000000E07 + 0142D77610FFD77610FFC36C0FF3040200270000000000000000000000000000 + 00102E19037600000000000000000000000008040033CD7010F9D77610FFD776 + 10FF1109014A0000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000009270180229C + 02FF229C02FF0927018000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000056437 + 08AED77610FFD77610FFD77610FF5D3307A80000000408040034BC670EEF9B55 + 0BD90201001A0000000000000000000000000000000000000000000000000000 + 000000000000000304221089C6E114B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF1089C6E1000304220000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00007A4309C0D77610FFD77610FFA35A0DDE0503002900000000000000000000 + 0010D77610FF321C037C000000000000000DAF600DE6D77610FFD77610FF8147 + 0AC6000000010000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000009270180229C + 02FF229C02FF0927018000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0005643708AED77610FF5D3307A80000000408040034BC670EEFD77610FFD776 + 10FF93500BD30000000000000000000000000000000000000000000000000000 + 0000000304221089C6E114B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF1089C6E10003 + 0422000000000000000000000000000000000000000000000000000000000000 + 000003020023BB670EEED77610FFD77610FFC76E0FF63F23048B080400330201 + 001BD77610FFD77610FF351D037F000000001A0E025AD07210FBC0690FF10502 + 0027000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000009270180229C + 02FF229C02FF0927018000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000005291603700000000408040034BC670EEFD77610FFD77610FFD776 + 10FFA35A0DDE0000000000000000000000000000000000000000000000000000 + 0000052C408014B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF052C + 4080000000000000000000000000000000000000000000000000000000000000 + 0000000000000B06003ABB670EEED77610FFD77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FF391F048400000000150C01510C07003E0000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000009270180229C + 02FF229C02FF0927018000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000503002ABC670EEFD77610FFD77610FFD77610FFAD5F + 0DE5040200260000000000000000000000000000000000000000000000000000 + 0000052C408014B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF052C + 4080000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000030200237A4309C0D77610FFD77610FFD77610FFD776 + 10FFD77610FFD77610FFD77610FFD77610FF0D07014000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000009270180229C + 02FF229C02FF0927018000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000076B3B08B4D77610FFD77610FFAD5F0DE50402 + 0026000000000000000000000000000000000000000000000000000000000000 + 0000052C408014B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1 + FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF14B1FFFF052C + 4080000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000E070142522C069D9B550BD9C66D + 0FF5D77610FFD77610FFD77610FF321C037C0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000041200592298 + 02FC229902FD0415005F00000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000007633608AD9B550BD9040200260000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D77610FFD77610FF321C037C000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D77610FF321C037C00000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000321C037C0000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000424D3E000000000000003E000000 + 2800000060000000500100000100010000000000C00F00000000000000000000 + 000000000000000000000000FFFFFF0000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000} + DesignInfo = 12189968 + ImageInfo = < + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D224C + 617965725F312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267 + 2F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F77 + 77772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D + 22307078222076696577426F783D2230203020333220333222207374796C653D + 22656E61626C652D6261636B67726F756E643A6E657720302030203332203332 + 3B2220786D6C3A73706163653D227072657365727665223E262331333B262331 + 303B3C7374796C6520747970653D22746578742F637373223E2E59656C6C6F77 + 7B66696C6C3A234646423131353B7D3C2F7374796C653E0D0A3C706F6C79676F + 6E20636C6173733D2259656C6C6F772220706F696E74733D22362C342032362C + 342032362C382031382C31362031382C32342031342C32382031342C31362036 + 2C3820222F3E0D0A3C2F7376673E0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D224C + 617965725F312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267 + 2F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F77 + 77772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D + 22307078222076696577426F783D2230203020333220333222207374796C653D + 22656E61626C652D6261636B67726F756E643A6E657720302030203332203332 + 3B2220786D6C3A73706163653D227072657365727665223E262331333B262331 + 303B3C7374796C6520747970653D22746578742F637373223E2E426C75657B66 + 696C6C3A233131373744373B7D3C2F7374796C653E0D0A3C7061746820636C61 + 73733D22426C75652220643D224D32322C366C2D362D36763443392E342C342C + 342C392E342C342C313663302C332E362C312E362C362E382C342E312C396C32 + 2E382D322E38632D312E382D312E352D332D332E372D332D362E3263302D342E + 342C332E362D382C382D3876344C32322C367A222F3E0D0A3C7061746820636C + 6173733D22426C75652220643D224D32332E392C374C32312C392E3863312E38 + 2C312E352C332C332E372C332C362E3263302C342E342D332E362C382D382C38 + 762D346C2D362C366C362C36762D3463362E362C302C31322D352E342C31322D + 313220202623393B4332382C31322E342C32362E342C392E322C32332E392C37 + 7A222F3E0D0A3C2F7376673E0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D224C + 617965725F312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267 + 2F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F77 + 77772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D + 22307078222076696577426F783D2230203020333220333222207374796C653D + 22656E61626C652D6261636B67726F756E643A6E657720302030203332203332 + 3B2220786D6C3A73706163653D227072657365727665223E262331333B262331 + 303B3C7374796C6520747970653D22746578742F6373732220786D6C3A737061 + 63653D227072657365727665223E2E426C75657B66696C6C3A23313137374437 + 3B7D262331333B262331303B2623393B2E59656C6C6F777B66696C6C3A234646 + 423131353B7D262331333B262331303B2623393B2E426C61636B7B66696C6C3A + 233732373237323B7D262331333B262331303B2623393B2E477265656E7B6669 + 6C6C3A233033394332333B7D262331333B262331303B2623393B2E5265647B66 + 696C6C3A234431314331433B7D262331333B262331303B2623393B2E7374307B + 6F7061636974793A302E37353B7D262331333B262331303B2623393B2E737431 + 7B6F7061636974793A302E353B7D3C2F7374796C653E0D0A3C672069643D2241 + 6464223E0D0A09093C7061746820636C6173733D22477265656E2220643D224D + 32372C3134682D39563563302D302E352D302E352D312D312D31682D32632D30 + 2E352C302D312C302E352D312C3176394835632D302E352C302D312C302E352D + 312C31763263302C302E352C302E352C312C312C316839763920202623393B26 + 23393B63302C302E352C302E352C312C312C31683263302E352C302C312D302E + 352C312D31762D39683963302E352C302C312D302E352C312D31762D32433238 + 2C31342E352C32372E352C31342C32372C31347A222F3E0D0A093C2F673E0D0A + 3C2F7376673E0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D224C + 617965725F312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267 + 2F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F77 + 77772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D + 22307078222076696577426F783D2230203020333220333222207374796C653D + 22656E61626C652D6261636B67726F756E643A6E657720302030203332203332 + 3B2220786D6C3A73706163653D227072657365727665223E262331333B262331 + 303B3C7374796C6520747970653D22746578742F637373223E2E426C75657B66 + 696C6C3A233131373744373B7D3C2F7374796C653E0D0A3C7061746820636C61 + 73733D22426C75652220643D224D32372E362C382E326C2D332E382D332E3863 + 2D302E352D302E352D312E342D302E352D312E392C306C2D322E352C322E356C + 352E382C352E386C322E352D322E354332382E312C392E362C32382E312C382E + 382C32372E362C382E327A222F3E0D0A3C706F6C79676F6E20636C6173733D22 + 426C75652220706F696E74733D22342C32382031302C323820342C323220222F + 3E0D0A3C7265637420783D22352E382220793D2231332E3422207472616E7366 + 6F726D3D226D617472697828302E373037202D302E3730373220302E37303732 + 20302E373037202D382E3035372031352E343537292220636C6173733D22426C + 7565222077696474683D2231372E3622206865696768743D22382E32222F3E0D + 0A3C2F7376673E0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D224C + 617965725F312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267 + 2F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F77 + 77772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D + 22307078222076696577426F783D2230203020333220333222207374796C653D + 22656E61626C652D6261636B67726F756E643A6E657720302030203332203332 + 3B2220786D6C3A73706163653D227072657365727665223E262331333B262331 + 303B3C7374796C6520747970653D22746578742F637373223E2E426C75657B66 + 696C6C3A233131373744373B7D3C2F7374796C653E0D0A3C7061746820636C61 + 73733D22426C75652220643D224D32372C3134682D37563363302D302E362D30 + 2E342D312D312D31483543342E342C322C342C322E342C342C3376313463302C + 302E362C302E342C312C312C31683776313163302C302E362C302E342C312C31 + 2C3168313463302E362C302C312D302E342C312D3120202623393B5631354332 + 382C31342E342C32372E362C31342C32372C31347A222F3E0D0A3C2F7376673E + 0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D224C + 617965725F312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267 + 2F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F77 + 77772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D + 22307078222076696577426F783D2230203020333220333222207374796C653D + 22656E61626C652D6261636B67726F756E643A6E657720302030203332203332 + 3B2220786D6C3A73706163653D227072657365727665223E262331333B262331 + 303B3C7374796C6520747970653D22746578742F637373223E2E5265647B6669 + 6C6C3A234431314331433B7D3C2F7374796C653E0D0A3C7061746820636C6173 + 733D225265642220643D224D31382E382C31366C382D3863302E342D302E342C + 302E342D312C302D312E346C2D312E342D312E34632D302E342D302E342D312D + 302E342D312E342C306C2D382C386C2D382D38632D302E342D302E342D312D30 + 2E342D312E342C304C352E322C362E3620202623393B43342E382C372C342E38 + 2C372E362C352E322C386C382C386C2D382C38632D302E342C302E342D302E34 + 2C312C302C312E346C312E342C312E3463302E342C302E342C312C302E342C31 + 2E342C306C382D386C382C3863302E342C302E342C312C302E342C312E342C30 + 6C312E342D312E3420202623393B63302E342D302E342C302E342D312C302D31 + 2E344C31382E382C31367A222F3E0D0A3C2F7376673E0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D224C + 617965725F312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267 + 2F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F77 + 77772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D + 22307078222076696577426F783D2230203020333220333222207374796C653D + 22656E61626C652D6261636B67726F756E643A6E657720302030203332203332 + 3B2220786D6C3A73706163653D227072657365727665223E262331333B262331 + 303B3C7374796C6520747970653D22746578742F6373732220786D6C3A737061 + 63653D227072657365727665223E2E426C75657B66696C6C3A23313137374437 + 3B7D262331333B262331303B2623393B2E59656C6C6F777B66696C6C3A234646 + 423131353B7D262331333B262331303B2623393B2E426C61636B7B66696C6C3A + 233732373237323B7D262331333B262331303B2623393B2E477265656E7B6669 + 6C6C3A233033394332333B7D262331333B262331303B2623393B2E5265647B66 + 696C6C3A234431314331433B7D262331333B262331303B2623393B2E7374307B + 6F7061636974793A302E37353B7D262331333B262331303B2623393B2E737431 + 7B6F7061636974793A302E353B7D3C2F7374796C653E0D0A3C672069643D2252 + 656D6F7665223E0D0A09093C7061746820636C6173733D225265642220643D22 + 4D32372C31384835632D302E362C302D312D302E352D312D31762D3263302D30 + 2E362C302E342D312C312D3168323263302E352C302C312C302E342C312C3176 + 324332382C31372E352C32372E352C31382C32372C31387A222F3E0D0A093C2F + 673E0D0A3C2F7376673E0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D224C + 617965725F312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267 + 2F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F77 + 77772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D + 22307078222076696577426F783D2230203020333220333222207374796C653D + 22656E61626C652D6261636B67726F756E643A6E657720302030203332203332 + 3B2220786D6C3A73706163653D227072657365727665223E262331333B262331 + 303B3C7374796C6520747970653D22746578742F637373223E2E5265647B6669 + 6C6C3A234431314331433B7D3C2F7374796C653E0D0A3C7061746820636C6173 + 733D225265642220643D224D32302C342E3776342E3463322E342C312E342C34 + 2C342C342C362E3963302C342E342D332E362C382D382C38732D382D332E362D + 382D3863302D332C312E362D352E352C342D362E3956342E3743372E332C362E + 332C342C31302E382C342C313620202623393B63302C362E362C352E342C3132 + 2C31322C313263362E362C302C31322D352E342C31322D31324332382C31302E + 382C32342E372C362E332C32302C342E377A222F3E0D0A3C7061746820636C61 + 73733D225265642220643D224D31372C3134682D32632D302E362C302D312D30 + 2E342D312D31563363302D302E362C302E342D312C312D31683263302E362C30 + 2C312C302E342C312C317631304331382C31332E362C31372E362C31342C3137 + 2C31347A222F3E0D0A3C2F7376673E0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D224C + 617965725F312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267 + 2F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F77 + 77772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D + 22307078222076696577426F783D2230203020333220333222207374796C653D + 22656E61626C652D6261636B67726F756E643A6E657720302030203332203332 + 3B2220786D6C3A73706163653D227072657365727665223E262331333B262331 + 303B3C7374796C6520747970653D22746578742F6373732220786D6C3A737061 + 63653D227072657365727665223E2E426C75657B66696C6C3A23313137374437 + 3B7D262331333B262331303B2623393B2E59656C6C6F777B66696C6C3A234646 + 423131353B7D262331333B262331303B2623393B2E426C61636B7B66696C6C3A + 233732373237323B7D262331333B262331303B2623393B2E477265656E7B6669 + 6C6C3A233033394332333B7D262331333B262331303B2623393B2E5265647B66 + 696C6C3A234431314331433B7D262331333B262331303B2623393B2E7374307B + 6F7061636974793A302E37353B7D262331333B262331303B2623393B2E737431 + 7B6F7061636974793A302E353B7D3C2F7374796C653E0D0A3C672069643D225A + 6F6F6D223E0D0A09093C7061746820636C6173733D22426C61636B2220643D22 + 4D32372E372C32352E334C32302E352C313863312D312E342C312E352D332E32 + 2C312E352D3563302D352D342D392D392D39732D392C342D392C3963302C352C + 342C392C392C3963312E392C302C332E362D302E362C352D312E356C372E332C + 372E3320202623393B2623393B63302E332C302E332C302E392C302E332C312E + 322C306C312E322D312E324332382E312C32362E322C32382E312C32352E362C + 32372E372C32352E337A204D362C313363302D332E392C332E312D372C372D37 + 73372C332E312C372C3763302C332E392D332E312C372D372C3753362C31362E + 392C362C31337A222F3E0D0A093C2F673E0D0A3C2F7376673E0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D224C + 617965725F312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267 + 2F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F77 + 77772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D + 22307078222076696577426F783D223020302033322033322220656E61626C65 + 2D6261636B67726F756E643D226E6577203020302033322033322220786D6C3A + 73706163653D227072657365727665223E262331333B262331303B3C706F6C79 + 676F6E206F7061636974793D22302E362220706F696E74733D22342C3020342C + 33302032382C33302032382C372032312C3020222F3E0D0A3C706F6C79676F6E + 2066696C6C3D22234646464646462220706F696E74733D22362C3220362C3238 + 2032362C32382032362C31302031382C31302031382C3220222F3E0D0A3C706F + 6C79676F6E2066696C6C3D22234646464646462220706F696E74733D2232302C + 322032302C382032362C3820222F3E0D0A3C2F7376673E0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D224C + 617965725F312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267 + 2F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F77 + 77772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D + 22307078222076696577426F783D2230203020333220333222207374796C653D + 22656E61626C652D6261636B67726F756E643A6E657720302030203332203332 + 3B2220786D6C3A73706163653D227072657365727665223E262331333B262331 + 303B3C7374796C6520747970653D22746578742F6373732220786D6C3A737061 + 63653D227072657365727665223E2E59656C6C6F777B66696C6C3A2346464231 + 31353B7D262331333B262331303B2623393B2E5265647B66696C6C3A23443131 + 4331433B7D262331333B262331303B2623393B2E426C61636B7B66696C6C3A23 + 3732373237323B7D262331333B262331303B2623393B2E426C75657B66696C6C + 3A233131373744373B7D262331333B262331303B2623393B2E57686974657B66 + 696C6C3A234646464646463B7D262331333B262331303B2623393B2E47726565 + 6E7B66696C6C3A233033394332333B7D262331333B262331303B2623393B2E73 + 74307B6F7061636974793A302E37353B7D262331333B262331303B2623393B2E + 7374317B6F7061636974793A302E353B7D262331333B262331303B2623393B2E + 7374327B6F7061636974793A302E32353B7D262331333B262331303B2623393B + 2E7374337B66696C6C3A234646423131353B7D3C2F7374796C653E0D0A3C672F + 3E0D0A3C672069643D2244656C6574655175657279223E0D0A09093C70617468 + 20636C6173733D22477265656E2220643D224D382C3130483076366838563130 + 7A204D382C3248307636683856327A204D31382C32682D387636683856327A20 + 4D31382C3130682D38763668385631307A222F3E0D0A09093C6720636C617373 + 3D22737431223E0D0A0909093C7061746820636C6173733D22426C61636B2220 + 643D224D32382C3136682D38762D3668385631367A204D32382C32682D387636 + 683856327A204D302C32346838762D3648305632347A204D31302C3234683876 + 2D36682D385632347A222F3E0D0A09093C2F673E0D0A09093C706F6C79676F6E + 20636C6173733D225265642220706F696E74733D2233322C32302033302C3138 + 2032362C32322032322C31382032302C32302032342C32342032302C32382032 + 322C33302032362C32362033302C33302033322C32382032382C323420262339 + 3B222F3E0D0A093C2F673E0D0A3C2F7376673E0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D2255 + 6E646F2220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F3230 + 30302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F7777772E + 77332E6F72672F313939392F786C696E6B2220783D223070782220793D223070 + 78222076696577426F783D2230203020333220333222207374796C653D22656E + 61626C652D6261636B67726F756E643A6E6577203020302033322033323B2220 + 786D6C3A73706163653D227072657365727665223E262331333B262331303B3C + 7374796C6520747970653D22746578742F637373223E2E426C75657B66696C6C + 3A233131373744373B7D3C2F7374796C653E0D0A3C7061746820636C6173733D + 22426C75652220643D224D33322C323663302C302C302D382D31362D3876364C + 302C31344C31362C3476364333322C31302C33322C32362C33322C32367A222F + 3E0D0A3C2F7376673E0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D224C + 617965725F312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267 + 2F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F77 + 77772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D + 22307078222076696577426F783D2230203020333220333222207374796C653D + 22656E61626C652D6261636B67726F756E643A6E657720302030203332203332 + 3B2220786D6C3A73706163653D227072657365727665223E262331333B262331 + 303B3C7374796C6520747970653D22746578742F6373732220786D6C3A737061 + 63653D227072657365727665223E2E426C75657B66696C6C3A23313137374437 + 3B7D262331333B262331303B2623393B2E59656C6C6F777B66696C6C3A234646 + 423131353B7D262331333B262331303B2623393B2E426C61636B7B66696C6C3A + 233732373237323B7D262331333B262331303B2623393B2E477265656E7B6669 + 6C6C3A233033394332333B7D262331333B262331303B2623393B2E5265647B66 + 696C6C3A234431314331433B7D262331333B262331303B2623393B2E7374307B + 6F7061636974793A302E37353B7D262331333B262331303B2623393B2E737431 + 7B6F7061636974793A302E353B7D3C2F7374796C653E0D0A3C672069643D2243 + 6865636B223E0D0A09093C706F6C79676F6E20636C6173733D22477265656E22 + 20706F696E74733D2232372C352031312C323120352C313520322C3138203131 + 2C32372033302C38202623393B222F3E0D0A093C2F673E0D0A3C2F7376673E0D + 0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D224C + 617965725F312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267 + 2F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F77 + 77772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D + 22307078222076696577426F783D2230203020333220333222207374796C653D + 22656E61626C652D6261636B67726F756E643A6E657720302030203332203332 + 3B2220786D6C3A73706163653D227072657365727665223E262331333B262331 + 303B3C7374796C6520747970653D22746578742F637373223E2E426C61636B7B + 66696C6C3A233732373237323B7D3C2F7374796C653E0D0A3C7061746820636C + 6173733D22426C61636B2220643D224D32312C32483131632D302E352C302D31 + 2C302E352D312C317635483543342E352C382C342C382E352C342C3976323063 + 302C302E352C302E352C312C312C3168313663302E352C302C312D302E352C31 + 2D31762D35683563302E352C302C312D302E352C312D3120202623393B56394C + 32312C327A204D32302C323848365631306838763563302C302E352C302E352C + 312C312C3168355632387A204D32362C3232682D34762D376C2D372D37682D33 + 56346838763563302C302E352C302E352C312C312C3168355632327A222F3E0D + 0A3C2F7376673E0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D224C + 617965725F312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267 + 2F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F77 + 77772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D + 22307078222076696577426F783D2230203020333220333222207374796C653D + 22656E61626C652D6261636B67726F756E643A6E657720302030203332203332 + 3B2220786D6C3A73706163653D227072657365727665223E262331333B262331 + 303B3C7374796C6520747970653D22746578742F6373732220786D6C3A737061 + 63653D227072657365727665223E2E426C61636B7B66696C6C3A233732373237 + 323B7D262331333B262331303B2623393B2E5265647B66696C6C3A2344313143 + 31433B7D3C2F7374796C653E0D0A3C7061746820636C6173733D225265642220 + 643D224D32322C3134632D342E342C302D382C332E362D382C3873332E362C38 + 2C382C3873382D332E362C382D385332362E342C31342C32322C31347A204D32 + 322C313663312E312C302C322E322C302E332C332E312C302E396C2D382E322C + 382E3220202623393B632D302E362D302E392D302E392D322D302E392D332E31 + 4331362C31382E372C31382E372C31362C32322C31367A204D32322C3238632D + 312E342C302D322E372D302E352D332E372D312E336C382E342D382E3463302E + 382C312C312E332C322E332C312E332C332E3720202623393B4332382C32352E + 332C32352E332C32382C32322C32387A222F3E0D0A3C7061746820636C617373 + 3D22426C61636B2220643D224D31362E352C31332E374C31342E382C31326C36 + 2E392D362E3963302E342D302E342C302E342D312C302D312E346C2D312E342D + 312E34632D302E342D302E342D312D302E342D312E342C304C31322C392E324C + 352E312C322E3320202623393B632D302E342D302E342D312D302E342D312E34 + 2C304C322E332C332E37632D302E342C302E342D302E342C312C302C312E344C + 392E322C31326C2D362E392C362E39632D302E342C302E342D302E342C312C30 + 2C312E346C312E342C312E3463302E342C302E342C312C302E342C312E342C30 + 6C362E392D362E3920202623393B6C312E372C312E374331342E342C31352E34 + 2C31352E342C31342E342C31362E352C31332E377A222F3E0D0A3C2F7376673E + 0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D224C + 617965725F312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267 + 2F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F77 + 77772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D + 22307078222076696577426F783D2230203020333220333222207374796C653D + 22656E61626C652D6261636B67726F756E643A6E657720302030203332203332 + 3B2220786D6C3A73706163653D227072657365727665223E262331333B262331 + 303B3C7374796C6520747970653D22746578742F6373732220786D6C3A737061 + 63653D227072657365727665223E2E59656C6C6F777B66696C6C3A2346464231 + 31353B7D262331333B262331303B2623393B2E5265647B66696C6C3A23443131 + 4331433B7D262331333B262331303B2623393B2E426C75657B66696C6C3A2331 + 31373744373B7D262331333B262331303B2623393B2E477265656E7B66696C6C + 3A233033394332333B7D262331333B262331303B2623393B2E426C61636B7B66 + 696C6C3A233732373237323B7D262331333B262331303B2623393B2E57686974 + 657B66696C6C3A234646464646463B7D262331333B262331303B2623393B2E73 + 74307B6F7061636974793A302E353B7D262331333B262331303B2623393B2E73 + 74317B646973706C61793A6E6F6E653B7D262331333B262331303B2623393B2E + 7374327B646973706C61793A696E6C696E653B66696C6C3A233033394332333B + 7D262331333B262331303B2623393B2E7374337B646973706C61793A696E6C69 + 6E653B66696C6C3A234431314331433B7D262331333B262331303B2623393B2E + 7374347B646973706C61793A696E6C696E653B66696C6C3A233732373237323B + 7D3C2F7374796C653E0D0A3C672069643D22456D706C6F79656550726F66696C + 65223E0D0A09093C7061746820636C6173733D22426C61636B2220643D224D32 + 392C30483343322E352C302C322C302E352C322C3176333063302C302E352C30 + 2E352C312C312C3168323663302E352C302C312D302E352C312D315631433330 + 2C302E352C32392E352C302C32392C307A204D32382C33304834563268323456 + 33307A222F3E0D0A09093C7061746820636C6173733D22426C75652220643D22 + 4D31322E332C31332E38632D302E312D302E332D302E332D302E362D302E332D + 302E3963302E312D302E312C302E332D302E322C302E332D302E324331312E36 + 2C31302E352C31322C382C31352E322C3863332E352C302C332E372C312E392C + 332E372C312E3920202623393B2623393B73312E392D302E312C302E372C322E + 3963302E312D302E312C302E332D302E312C302E332C302E3263302E312C302E + 332D302E312C302E362D302E322C302E39632D302E322C302E332C302E312C31 + 2E312D302E362C3176302E314331382E382C31362E342C31372E382C31382C31 + 362C313820202623393B2623393B732D322E372D312E362D332E312D332E3163 + 302D302E312C302D302E312C302D302E314331322E322C31342E392C31322E34 + 2C31342E312C31322E332C31332E387A204D31382E372C3138632D302E352C31 + 2D312E342C312E392D322E372C312E39632D312E332C302D322E322D302E392D + 322E372D3220202623393B2623393B4331312E372C32302E332C382C31382E37 + 2C382C32332E37563234683136762D302E334332342C31382E372C32302E332C + 32302E322C31382E372C31387A222F3E0D0A093C2F673E0D0A3C2F7376673E0D + 0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D224C + 617965725F312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267 + 2F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F77 + 77772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D + 22307078222076696577426F783D2230203020333220333222207374796C653D + 22656E61626C652D6261636B67726F756E643A6E657720302030203332203332 + 3B2220786D6C3A73706163653D227072657365727665223E262331333B262331 + 303B3C7374796C6520747970653D22746578742F6373732220786D6C3A737061 + 63653D227072657365727665223E2E426C61636B7B66696C6C3A233732373237 + 323B7D262331333B262331303B2623393B2E426C75657B66696C6C3A23313137 + 3744373B7D262331333B262331303B2623393B2E7374307B6F7061636974793A + 302E353B7D3C2F7374796C653E0D0A3C672069643D2257696E646F77223E0D0A + 09093C7061746820636C6173733D22426C61636B2220643D224D32382C387632 + 3048345638483276323163302C302E352C302E352C312C312C3168323663302E + 352C302C312D302E352C312D3156384832387A222F3E0D0A09093C7061746820 + 636C6173733D22426C75652220643D224D33302C3130563563302D302E352D30 + 2E352D312D312D31483343322E352C342C322C342E352C322C3576354833307A + 222F3E0D0A093C2F673E0D0A3C6720636C6173733D22737430223E0D0A09093C + 7265637420783D22362220793D2231322220636C6173733D22426C61636B2220 + 77696474683D223822206865696768743D2232222F3E0D0A09093C7061746820 + 636C6173733D22426C61636B2220643D224D31362C31327636683130762D3648 + 31367A204D32342C3136682D36762D3268365631367A222F3E0D0A09093C7061 + 746820636C6173733D22426C61636B2220643D224D31362C3230763668313076 + 2D364831367A204D32342C3234682D36762D3268365632347A222F3E0D0A0909 + 3C7265637420783D22362220793D2232302220636C6173733D22426C61636B22 + 2077696474683D223822206865696768743D2232222F3E0D0A093C2F673E0D0A + 3C2F7376673E0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D224C + 617965725F312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267 + 2F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F77 + 77772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D + 22307078222076696577426F783D2230203020333220333222207374796C653D + 22656E61626C652D6261636B67726F756E643A6E657720302030203332203332 + 3B2220786D6C3A73706163653D227072657365727665223E262331333B262331 + 303B3C7374796C6520747970653D22746578742F6373732220786D6C3A737061 + 63653D227072657365727665223E2E426C75657B66696C6C3A23313137374437 + 3B7D262331333B262331303B2623393B2E59656C6C6F777B66696C6C3A234646 + 423131353B7D262331333B262331303B2623393B2E426C61636B7B66696C6C3A + 233732373237323B7D262331333B262331303B2623393B2E477265656E7B6669 + 6C6C3A233033394332333B7D262331333B262331303B2623393B2E5265647B66 + 696C6C3A234431314331433B7D262331333B262331303B2623393B2E7374307B + 6F7061636974793A302E37353B7D262331333B262331303B2623393B2E737431 + 7B6F7061636974793A302E353B7D3C2F7374796C653E0D0A3C672069643D2241 + 72726F7731446F776E223E0D0A09093C706174682069643D2247726F75705F53 + 656C656374696F6E5F325F2220636C6173733D22426C75652220643D224D3134 + 2C34763134682D302E3748366C31302C31306C31302D3130682D372E33483138 + 56344831347A222F3E0D0A093C2F673E0D0A3C2F7376673E0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D224C + 617965725F312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267 + 2F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F77 + 77772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D + 22307078222076696577426F783D2230203020333220333222207374796C653D + 22656E61626C652D6261636B67726F756E643A6E657720302030203332203332 + 3B2220786D6C3A73706163653D227072657365727665223E262331333B262331 + 303B3C7374796C6520747970653D22746578742F6373732220786D6C3A737061 + 63653D227072657365727665223E2E426C75657B66696C6C3A23313137374437 + 3B7D262331333B262331303B2623393B2E59656C6C6F777B66696C6C3A234646 + 423131353B7D262331333B262331303B2623393B2E426C61636B7B66696C6C3A + 233732373237323B7D262331333B262331303B2623393B2E477265656E7B6669 + 6C6C3A233033394332333B7D262331333B262331303B2623393B2E5265647B66 + 696C6C3A234431314331433B7D262331333B262331303B2623393B2E7374307B + 6F7061636974793A302E37353B7D262331333B262331303B2623393B2E737431 + 7B6F7061636974793A302E353B7D3C2F7374796C653E0D0A3C672069643D2241 + 72726F77314C656674223E0D0A09093C706F6C79676F6E20636C6173733D2242 + 6C75652220706F696E74733D2232382C31342031342C31342031342C31332E33 + 2031342C3620342C31362031342C32362031342C31382E372031342C31382032 + 382C3138202623393B222F3E0D0A093C2F673E0D0A3C2F7376673E0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D224C + 617965725F312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267 + 2F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F77 + 77772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D + 22307078222076696577426F783D2230203020333220333222207374796C653D + 22656E61626C652D6261636B67726F756E643A6E657720302030203332203332 + 3B2220786D6C3A73706163653D227072657365727665223E262331333B262331 + 303B3C7374796C6520747970653D22746578742F6373732220786D6C3A737061 + 63653D227072657365727665223E2E426C75657B66696C6C3A23313137374437 + 3B7D262331333B262331303B2623393B2E59656C6C6F777B66696C6C3A234646 + 423131353B7D262331333B262331303B2623393B2E426C61636B7B66696C6C3A + 233732373237323B7D262331333B262331303B2623393B2E477265656E7B6669 + 6C6C3A233033394332333B7D262331333B262331303B2623393B2E5265647B66 + 696C6C3A234431314331433B7D262331333B262331303B2623393B2E7374307B + 6F7061636974793A302E37353B7D262331333B262331303B2623393B2E737431 + 7B6F7061636974793A302E353B7D3C2F7374796C653E0D0A3C672069643D2241 + 72726F773152696768745F315F223E0D0A09093C7061746820636C6173733D22 + 426C75652220643D224D342C3134683134762D302E3756366C31302C31304C31 + 382C3236762D372E3356313848345631347A222F3E0D0A093C2F673E0D0A3C2F + 7376673E0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D224C + 617965725F312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267 + 2F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F77 + 77772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D + 22307078222076696577426F783D2230203020333220333222207374796C653D + 22656E61626C652D6261636B67726F756E643A6E657720302030203332203332 + 3B2220786D6C3A73706163653D227072657365727665223E262331333B262331 + 303B3C7374796C6520747970653D22746578742F6373732220786D6C3A737061 + 63653D227072657365727665223E2E426C75657B66696C6C3A23313137374437 + 3B7D262331333B262331303B2623393B2E59656C6C6F777B66696C6C3A234646 + 423131353B7D262331333B262331303B2623393B2E426C61636B7B66696C6C3A + 233732373237323B7D262331333B262331303B2623393B2E477265656E7B6669 + 6C6C3A233033394332333B7D262331333B262331303B2623393B2E5265647B66 + 696C6C3A234431314331433B7D262331333B262331303B2623393B2E7374307B + 6F7061636974793A302E37353B7D262331333B262331303B2623393B2E737431 + 7B6F7061636974793A302E353B7D3C2F7374796C653E0D0A3C672069643D2241 + 72726F77315570223E0D0A09093C706174682069643D2247726F75705F53656C + 656374696F6E5F335F2220636C6173733D22426C75652220643D224D31342C32 + 38563134682D302E3748364C31362C346C31302C3130682D372E334831387631 + 344831347A222F3E0D0A093C2F673E0D0A3C2F7376673E0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D224C + 617965725F312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267 + 2F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F77 + 77772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D + 22307078222076696577426F783D2230203020333220333222207374796C653D + 22656E61626C652D6261636B67726F756E643A6E657720302030203332203332 + 3B2220786D6C3A73706163653D227072657365727665223E262331333B262331 + 303B3C7374796C6520747970653D22746578742F6373732220786D6C3A737061 + 63653D227072657365727665223E2E5265647B66696C6C3A234431314331433B + 7D262331333B262331303B2623393B2E426C61636B7B66696C6C3A2337323732 + 37323B7D262331333B262331303B2623393B2E426C75657B66696C6C3A233131 + 373744373B7D262331333B262331303B2623393B2E477265656E7B66696C6C3A + 233033394332333B7D262331333B262331303B2623393B2E59656C6C6F777B66 + 696C6C3A234646423131353B7D262331333B262331303B2623393B2E57686974 + 657B66696C6C3A234646464646463B7D262331333B262331303B2623393B2E73 + 74307B6F7061636974793A302E353B7D262331333B262331303B2623393B2E73 + 74317B6F7061636974793A302E37353B7D262331333B262331303B2623393B2E + 7374327B6F7061636974793A302E32353B7D3C2F7374796C653E0D0A3C672069 + 643D225072696E745F315F223E0D0A09093C7061746820636C6173733D22426C + 61636B2220643D224D31302C346831327638683256324838763130683256347A + 204D32382C3130682D32763363302C302E362D302E342C312D312C314837632D + 302E362C302D312D302E342D312D31762D334834632D312E312C302D322C302E + 392D322C3276313220202623393B2623393B63302C312E312C302E392C322C32 + 2C3268347634683136762D34683463312E312C302C322D302E392C322D325631 + 324333302C31302E392C32392E312C31302C32382C31307A204D32322C323476 + 327632483130762D32762D32762D346831325632347A222F3E0D0A093C2F673E + 0D0A3C2F7376673E0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D224C + 617965725F312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267 + 2F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F77 + 77772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D + 22307078222076696577426F783D2230203020333220333222207374796C653D + 22656E61626C652D6261636B67726F756E643A6E657720302030203332203332 + 3B2220786D6C3A73706163653D227072657365727665223E262331333B262331 + 303B3C7374796C6520747970653D22746578742F637373223E2E426C61636B7B + 66696C6C3A233732373237323B7D3C2F7374796C653E0D0A3C672069643D2248 + 797065726C696E6B223E0D0A09093C673E0D0A0909093C7061746820636C6173 + 733D22426C61636B2220643D224D31302E332C32312E3763302E342C302E342C + 312C302E342C312E342C306C31302D313063302E342D302E342C302E342D312C + 302D312E34732D312D302E342D312E342C306C2D31302C313020202623393B26 + 23393B2623393B43392E392C32302E372C392E392C32312E332C31302E332C32 + 312E377A222F3E0D0A0909093C7061746820636C6173733D22426C61636B2220 + 643D224D31352E342C31392E3563302E352C312E312C302E332C322E352D302E + 362C332E346C2D342E322C342E32632D312E322C312E322D332E312C312E322D + 342E322C304C352C32352E37632D312E322D312E322D312E322D332E312C302D + 342E3220202623393B2623393B2623393B6C342E322D342E3263302E392D302E + 392C322E332D312E312C332E342D302E366C312E352D312E35632D312E392D31 + 2E332D342E362D312E312D362E332C302E364C332E362C3230632D322C322D32 + 2C352E312C302C372E314C352C32382E3563322C322C352E312C322C372E312C + 306C342E322D342E3220202623393B2623393B2623393B63312E372D312E372C + 312E392D342E332C302E362D362E334C31352E342C31392E357A222F3E0D0A09 + 09093C7061746820636C6173733D22426C61636B2220643D224D32382E352C34 + 2E396C2D312E342D312E34632D322D322D352E312D322D372E312C306C2D342E + 322C342E32632D312E372C312E372D312E392C342E332D302E362C362E336C31 + 2E352D312E35632D302E352D312E312D302E332D322E352C302E362D332E3420 + 202623393B2623393B2623393B6C342E322D342E3263312E322D312E322C332E + 312D312E322C342E322C306C312E342C312E3463312E322C312E322C312E322C + 332E312C302C342E326C2D342E322C342E32632D302E392C302E392D322E332C + 312E312D332E342C302E364C31382C31362E3820202623393B2623393B262339 + 3B63312E392C312E332C342E362C312E312C362E332D302E366C342E322D342E + 324333302E352C31302C33302E352C362E382C32382E352C342E397A222F3E0D + 0A09093C2F673E0D0A09093C673E0D0A0909093C7061746820636C6173733D22 + 426C61636B2220643D224D31302E332C32312E3763302E342C302E342C312C30 + 2E342C312E342C306C31302D313063302E342D302E342C302E342D312C302D31 + 2E34732D312D302E342D312E342C306C2D31302C313020202623393B2623393B + 2623393B43392E392C32302E372C392E392C32312E332C31302E332C32312E37 + 7A222F3E0D0A0909093C7061746820636C6173733D22426C61636B2220643D22 + 4D31352E342C31392E3563302E352C312E312C302E332C322E352D302E362C33 + 2E346C2D342E322C342E32632D312E322C312E322D332E312C312E322D342E32 + 2C304C352C32352E37632D312E322D312E322D312E322D332E312C302D342E32 + 20202623393B2623393B2623393B6C342E322D342E3263302E392D302E392C32 + 2E332D312E312C332E342D302E366C312E352D312E35632D312E392D312E332D + 342E362D312E312D362E332C302E364C332E362C3230632D322C322D322C352E + 312C302C372E314C352C32382E3563322C322C352E312C322C372E312C306C34 + 2E322D342E3220202623393B2623393B2623393B63312E372D312E372C312E39 + 2D342E332C302E362D362E334C31352E342C31392E357A222F3E0D0A0909093C + 7061746820636C6173733D22426C61636B2220643D224D32382E352C342E396C + 2D312E342D312E34632D322D322D352E312D322D372E312C306C2D342E322C34 + 2E32632D312E372C312E372D312E392C342E332D302E362C362E336C312E352D + 312E35632D302E352D312E312D302E332D322E352C302E362D332E3420202623 + 393B2623393B2623393B6C342E322D342E3263312E322D312E322C332E312D31 + 2E322C342E322C306C312E342C312E3463312E322C312E322C312E322C332E31 + 2C302C342E326C2D342E322C342E32632D302E392C302E392D322E332C312E31 + 2D332E342C302E364C31382C31362E3820202623393B2623393B2623393B6331 + 2E392C312E332C342E362C312E312C362E332D302E366C342E322D342E324333 + 302E352C31302C33302E352C362E382C32382E352C342E397A222F3E0D0A0909 + 3C2F673E0D0A093C2F673E0D0A3C2F7376673E0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D224C + 617965725F312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267 + 2F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F77 + 77772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D + 22307078222076696577426F783D2230203020333220333222207374796C653D + 22656E61626C652D6261636B67726F756E643A6E657720302030203332203332 + 3B2220786D6C3A73706163653D227072657365727665223E262331333B262331 + 303B3C7374796C6520747970653D22746578742F6373732220786D6C3A737061 + 63653D227072657365727665223E2E426C75657B66696C6C3A23313137374437 + 3B7D262331333B262331303B2623393B2E477265656E7B66696C6C3A23303339 + 4332333B7D262331333B262331303B2623393B2E59656C6C6F777B66696C6C3A + 234646423131353B7D262331333B262331303B2623393B2E426C61636B7B6669 + 6C6C3A233732373237323B7D262331333B262331303B2623393B2E5768697465 + 7B66696C6C3A234646464646463B7D262331333B262331303B2623393B2E5265 + 647B66696C6C3A234431314331433B7D262331333B262331303B2623393B2E73 + 74307B6F7061636974793A302E37353B7D3C2F7374796C653E0D0A3C67206964 + 3D22546172676574223E0D0A09093C7061746820636C6173733D22426C61636B + 2220643D224D31362C3130632D332E332C302D362C322E372D362C3673322E37 + 2C362C362C3673362D322E372C362D365331392E332C31302C31362C31307A20 + 4D31362C3138632D312E312C302D322D302E392D322D3263302D312E312C302E + 392D322C322D3220202623393B2623393B73322C302E392C322C324331382C31 + 372E312C31372E312C31382C31362C31387A222F3E0D0A09093C706174682063 + 6C6173733D22426C61636B2220643D224D31362C3243382E332C322C322C382E + 332C322C313673362E332C31342C31342C31347331342D362E332C31342D3134 + 5332332E372C322C31362C327A204D31362C3236632D352E352C302D31302D34 + 2E352D31302D313020202623393B2623393B63302D352E352C342E352D31302C + 31302D31307331302C342E352C31302C31304332362C32312E352C32312E352C + 32362C31362C32367A222F3E0D0A093C2F673E0D0A3C2F7376673E0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D224C + 617965725F312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267 + 2F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F77 + 77772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D + 22307078222076696577426F783D2230203020333220333222207374796C653D + 22656E61626C652D6261636B67726F756E643A6E657720302030203332203332 + 3B2220786D6C3A73706163653D227072657365727665223E262331333B262331 + 303B3C7374796C6520747970653D22746578742F637373223E2E426C75657B66 + 696C6C3A233131373744373B7D3C2F7374796C653E0D0A3C7061746820636C61 + 73733D22426C75652220643D224D31362C313256366C31362C31304C31362C32 + 36762D3643302C32302C302C32382C302C323853302C31322C31362C31327A22 + 2F3E0D0A3C2F7376673E0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D224C + 617965725F312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267 + 2F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F77 + 77772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D + 22307078222076696577426F783D2230203020333220333222207374796C653D + 22656E61626C652D6261636B67726F756E643A6E657720302030203332203332 + 3B2220786D6C3A73706163653D227072657365727665223E262331333B262331 + 303B3C7374796C6520747970653D22746578742F637373223E2E426C75657B66 + 696C6C3A233131373744373B7D3C2F7374796C653E0D0A3C7061746820636C61 + 73733D22426C75652220643D224D33302C3138762D346C2D342E342D302E3763 + 2D302E322D302E382D302E352D312E352D302E392D322E316C322E362D332E36 + 6C2D322E382D322E386C2D332E362C322E36632D302E372D302E342D312E342D + 302E372D322E312D302E394C31382C32682D3420202623393B6C2D302E372C34 + 2E34632D302E382C302E322D312E352C302E352D322E312C302E394C372E352C + 342E374C342E372C372E356C322E362C332E36632D302E342C302E372D302E37 + 2C312E342D302E392C322E314C322C313476346C342E342C302E3763302E322C + 302E382C302E352C312E352C302E392C322E3120202623393B6C2D322E362C33 + 2E366C322E382C322E386C332E362D322E3663302E372C302E342C312E342C30 + 2E372C322E312C302E394C31342C333068346C302E372D342E3463302E382D30 + 2E322C312E352D302E352C322E312D302E396C332E362C322E366C322E382D32 + 2E386C2D322E362D332E3620202623393B63302E342D302E372C302E372D312E + 342C302E392D322E314C33302C31387A204D31362C3230632D322E322C302D34 + 2D312E382D342D3473312E382D342C342D3473342C312E382C342C345331382E + 322C32302C31362C32307A222F3E0D0A3C2F7376673E0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D224C + 617965725F312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267 + 2F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F77 + 77772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D + 22307078222076696577426F783D2230203020333220333222207374796C653D + 22656E61626C652D6261636B67726F756E643A6E657720302030203332203332 + 3B2220786D6C3A73706163653D227072657365727665223E262331333B262331 + 303B3C7374796C6520747970653D22746578742F637373223E2E5265647B6669 + 6C6C3A234431314331433B7D3C2F7374796C653E0D0A3C7061746820636C6173 + 733D225265642220643D224D31362C3243382E332C322C322C382E332C322C31 + 3673362E332C31342C31342C31347331342D362E332C31342D31345332332E37 + 2C322C31362C327A204D32332C32306C2D332C336C2D342D346C2D342C346C2D + 332D336C342D346C2D342D346C332D336C342C3420202623393B6C342D346C33 + 2C336C2D342C344C32332C32307A222F3E0D0A3C2F7376673E0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D224C + 617965725F312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267 + 2F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F77 + 77772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D + 22307078222076696577426F783D2230203020333220333222207374796C653D + 22656E61626C652D6261636B67726F756E643A6E657720302030203332203332 + 3B2220786D6C3A73706163653D227072657365727665223E262331333B262331 + 303B3C7374796C6520747970653D22746578742F6373732220786D6C3A737061 + 63653D227072657365727665223E2E426C61636B7B66696C6C3A233732373237 + 323B7D262331333B262331303B2623393B2E426C75657B66696C6C3A23313137 + 3744373B7D3C2F7374796C653E0D0A3C7061746820636C6173733D22426C6163 + 6B2220643D224D382C3468313876366832563363302D302E352D302E352D312D + 312D31483743362E352C322C362C322E352C362C337637683256347A222F3E0D + 0A3C7061746820636C6173733D22426C61636B2220643D224D32362C32384838 + 563138483676313163302C302E352C302E352C312C312C3168323063302E352C + 302C312D302E352C312D31563138682D325632387A222F3E0D0A3C7061746820 + 636C6173733D22426C75652220643D224D32392C38682D31682D324838483648 + 3543342E342C382C342C382E342C342C3976313063302C302E362C302E342C31 + 2C312C31683168326831386832683163302E362C302C312D302E342C312D3156 + 394333302C382E342C32392E362C382C32392C387A20202623393B204D31322E + 392C3132632D302E352D302E332D312D302E352D312E362D302E35632D302E37 + 2C302D312E322C302E322D312E362C302E3743392E322C31322E362C392C3133 + 2E332C392C313463302C302E372C302E322C312E332C302E362C312E3873302E + 392C302E372C312E362C302E3720202623393B63302E362C302C312E322D302E + 322C312E372D302E3576312E36632D302E352C302E332D312E322C302E342D32 + 2C302E34632D312E312C302D322D302E332D322E362D31632D302E312D302E31 + 2D302E322D302E322D302E322D302E33632D302E352D302E362D302E372D312E + 352D302E372D322E3420202623393B63302D312C302E322D312E382C302E372D + 322E3563302E312D302E322C302E322D302E332C302E342D302E3543392E312C + 31302E342C31302C31302C31312E312C313063302E372C302C312E332C302E31 + 2C312E382C302E335631327A204D31392E322C31362E3820202623393B632D30 + 2E322C302E332D302E342C302E352D302E362C302E37632D302E332C302E322D + 302E362C302E332D302E392C302E344331372E342C31372E392C31372C31382C + 31362E362C3138632D302E342C302D302E382C302D312E312D302E31632D302E + 342D302E312D302E372D302E322D302E392D302E33762D312E3720202623393B + 63302E332C302E332C302E362C302E352C302E392C302E3663302E332C302E31 + 2C302E372C302E322C312C302E3263302E322C302C302E342C302C302E352D30 + 2E3163302E322C302C302E332D302E312C302E342D302E3263302E312D302E31 + 2C302E322D302E322C302E322D302E3220202623393B63302E312D302E312C30 + 2E312D302E322C302E312D302E3363302D302E322C302D302E332D302E312D30 + 2E34732D302E322D302E322D302E332D302E33732D302E332D302E322D302E35 + 2D302E33732D302E342D302E322D302E362D302E33632D302E362D302E332D31 + 2D302E362D312E322D302E3920202623393B732D302E342D302E382D302E342D + 312E3363302D302E342C302E312D302E372C302E322D3163302E312D302E332C + 302E342D302E352C302E362D302E3773302E362D302E332C302E392D302E3463 + 302E332D302E312C302E372D302E312C312E312D302E3163302E342C302C302E + 372C302C312C302E3120202623393B63302E332C302C302E362C302E312C302E + 382C302E3276312E36632D302E312D302E312D302E332D302E322D302E342D30 + 2E32632D302E312D302E312D302E332D302E312D302E342D302E32632D302E31 + 2C302D302E332D302E312D302E342D302E31632D302E312C302D302E332C302D + 302E342C3020202623393B632D302E322C302D302E332C302D302E352C302E31 + 632D302E312C302D302E332C302E312D302E342C302E32632D302E312C302E31 + 2D302E322C302E312D302E322C302E32632D302E312C302E312D302E312C302E + 322D302E312C302E3363302C302E312C302C302E322C302E312C302E33202026 + 23393B63302E312C302E312C302E322C302E322C302E332C302E3363302E312C + 302E312C302E332C302E322C302E342C302E3363302E322C302E312C302E342C + 302E322C302E362C302E3363302E332C302E312C302E352C302E332C302E382C + 302E3463302E322C302E312C302E342C302E332C302E362C302E352020262339 + 3B63302E322C302E322C302E332C302E342C302E342C302E3663302E312C302E + 322C302E312C302E352C302E312C302E384331392E352C31362E312C31392E34 + 2C31362E352C31392E322C31362E387A204D32362C31332E326C2D312E352C34 + 2E37682D312E384C32302E332C31304832326C312E352C352E3520202623393B + 63302E312C302E332C302E312C302E352C302E312C302E38683063302D302E32 + 2C302E312D302E352C302E322D302E386C312E352D352E3548323668314C3236 + 2C31332E327A222F3E0D0A3C2F7376673E0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D224C + 617965725F312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267 + 2F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F77 + 77772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D + 22307078222076696577426F783D2230203020333220333222207374796C653D + 22656E61626C652D6261636B67726F756E643A6E657720302030203332203332 + 3B2220786D6C3A73706163653D227072657365727665223E262331333B262331 + 303B3C7374796C6520747970653D22746578742F6373732220786D6C3A737061 + 63653D227072657365727665223E2E477265656E7B66696C6C3A233033394332 + 333B7D262331333B262331303B2623393B2E426C61636B7B66696C6C3A233732 + 373237323B7D3C2F7374796C653E0D0A3C7061746820636C6173733D22426C61 + 636B2220643D224D382C3468313876366832563363302D302E352D302E352D31 + 2D312D31483743362E352C322C362C322E352C362C337637683256347A222F3E + 0D0A3C7061746820636C6173733D22426C61636B2220643D224D32362C323848 + 38762D392E32483656323963302C302E352C302E352C312C312C316832306330 + 2E352C302C312D302E352C312D315631382E38682D325632387A222F3E0D0A3C + 7061746820636C6173733D22477265656E2220643D224D32392C38483543342E + 342C382C342C382E342C342C3976313063302C302E362C302E342C312C312C31 + 68323463302E362C302C312D302E342C312D3156394333302C382E342C32392E + 362C382C32392C387A204D31312E362C31386C2D312E322D322E362020262339 + 3B63302D302E312D302E312D302E332D302E312D302E356C302C3063302C302E + 312D302E312C302E332D302E322C302E364C382E382C313848362E396C322E33 + 2D346C2D322E312D3468326C312C322E3463302E312C302E322C302E322C302E + 342C302E322C302E376C302C3020202623393B63302D302E322C302E312D302E + 342C302E322D302E376C312E312D322E3468312E386C2D322E322C346C322E32 + 2C344831312E367A204D31392E382C3138682D342E33762D3868312E3676362E + 3568322E375631387A204D32352E382C31362E38632D302E322C302E332D302E + 342C302E352D302E362C302E3720202623393B732D302E362C302E332D302E39 + 2C302E344332332E392C31382C32332E352C31382C32332E312C3138732D302E + 382C302D312E312D302E31632D302E342D302E312D302E372D302E322D302E39 + 2D302E33762D312E3763302E332C302E332C302E362C302E352C312C302E3620 + 202623393B63302E332C302E312C302E372C302E322C312C302E3263302E322C + 302C302E342C302C302E352D302E3163302E322C302C302E332D302E312C302E + 342D302E3273302E322D302E322C302E322D302E3263302D302E312C302E312D + 302E322C302E312D302E3363302D302E322C302D302E332D302E312D302E3420 + 202623393B632D302E312D302E312D302E322D302E322D302E332D302E33732D + 302E332D302E322D302E352D302E33732D302E342D302E322D302E362D302E33 + 632D302E362D302E332D312D302E362D312E332D302E39632D302E332D302E34 + 2D302E342D302E382D302E342D312E3363302D302E342C302E312D302E372C30 + 2E322D3120202623393B63302E322D302E332C302E342D302E352C302E362D30 + 2E3763302E332D302E322C302E362D302E332C302E392D302E3473302E372D30 + 2E312C312E312D302E3173302E372C302C312C302E3163302E332C302C302E36 + 2C302E312C302E382C302E3276312E36632D302E312D302E312D302E332D302E + 322D302E342D302E3220202623393B732D302E332D302E312D302E342D302E32 + 632D302E322C302D302E332D302E312D302E352D302E31632D302E312C302D30 + 2E332C302D302E342C30632D302E322C302D302E342C302D302E352C302E3163 + 2D302E322C302D302E332C302E312D302E342C302E3220202623393B632D302E + 312C302E312D302E322C302E322D302E322C302E32632D302E312C302E312D30 + 2E312C302E322D302E312C302E3373302C302E322C302E312C302E3373302E32 + 2C302E322C302E332C302E3363302E312C302E312C302E332C302E322C302E34 + 2C302E3320202623393B63302E322C302E312C302E342C302E322C302E362C30 + 2E3363302E332C302E312C302E352C302E332C302E382C302E3463302E322C30 + 2E312C302E342C302E332C302E362C302E3573302E332C302E342C302E342C30 + 2E3663302E312C302E322C302E312C302E352C302E312C302E3820202623393B + 4332362C31362E312C32352E392C31362E352C32352E382C31362E387A222F3E + 0D0A3C2F7376673E0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D224C + 617965725F312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267 + 2F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F77 + 77772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D + 22307078222076696577426F783D2230203020333220333222207374796C653D + 22656E61626C652D6261636B67726F756E643A6E657720302030203332203332 + 3B2220786D6C3A73706163653D227072657365727665223E262331333B262331 + 303B3C7374796C6520747970653D22746578742F6373732220786D6C3A737061 + 63653D227072657365727665223E2E477265656E7B66696C6C3A233033394332 + 333B7D262331333B262331303B2623393B2E426C75657B66696C6C3A23313137 + 3744373B7D3C2F7374796C653E0D0A3C7061746820636C6173733D22426C7565 + 2220643D224D32392C31384837632D302E362C302D312C302E342D312C317631 + 3263302C302E362C302E342C312C312C3168323263302E362C302C312D302E34 + 2C312D315631394333302C31382E342C32392E362C31382C32392C31387A204D + 32382C3330483856323068323020202623393B5633307A222F3E0D0A3C706174 + 6820636C6173733D22426C75652220643D224D31332E332C32386C2D302E362D + 312E3663302D302E312D302E312D302E322D302E312D302E3373302D302E322C + 302D302E32683063302C302E312C302C302E322C302C302E3363302C302E312C + 302C302E322D302E312C302E334C31312E382C323848313020202623393B6C31 + 2E352D336C2D312E342D334831326C302E352C312E3663302C302E312C302E31 + 2C302E332C302E312C302E36683063302D302E332C302E312D302E352C302E31 + 2D302E366C302E362D312E364831356C2D312E342C336C312E352C334831332E + 337A222F3E0D0A3C7061746820636C6173733D22426C75652220643D224D3230 + 2E322C3238762D332E3363302D302E332C302D302E362C302D316C302D302E33 + 6830632D302E312C302E352D302E312C302E382D302E322C314C31392E332C32 + 38682D312E346C2D302E382D332E3663302D302E312D302E312D302E342D302E + 322D31683020202623393B63302C302E392C302C312E352C302C312E38563238 + 682D312E33762D3668322E336C302E372C332E3363302C302E312C302C302E32 + 2C302E312C302E3463302C302E322C302C302E342C302E312C302E3568306330 + 2D302E332C302E312D302E362C302E312D302E396C302E372D332E3268322E33 + 76364832302E327A222F3E0D0A3C7061746820636C6173733D22426C75652220 + 643D224D32322E372C3238762D3668312E3576342E364832365632384832322E + 377A222F3E0D0A3C7061746820636C6173733D22426C75652220643D224D3239 + 2C31384837632D302E362C302D312C302E342D312C3176313263302C302E362C + 302E342C312C312C3168323263302E362C302C312D302E342C312D3156313943 + 33302C31382E342C32392E362C31382C32392C31387A204D32382C3330483856 + 323068323020202623393B5633307A222F3E0D0A3C7061746820636C6173733D + 22477265656E2220643D224D322C323456313468323076326832762D3363302D + 302E362D302E342D312D312D314831632D302E362C302D312C302E342D312C31 + 76313263302C302E362C302E342C312C312C316833762D3248327A222F3E0D0A + 3C7061746820636C6173733D22477265656E2220643D224D31362C313063302C + 302C302E322D342C382D3476326C382D346C2D382D3476324331362E322C322C + 31362C31302C31362C31307A222F3E0D0A3C2F7376673E0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D224C + 617965725F312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267 + 2F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F77 + 77772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D + 22307078222076696577426F783D2230203020333220333222207374796C653D + 22656E61626C652D6261636B67726F756E643A6E657720302030203332203332 + 3B2220786D6C3A73706163653D227072657365727665223E262331333B262331 + 303B3C7374796C6520747970653D22746578742F6373732220786D6C3A737061 + 63653D227072657365727665223E2E426C61636B7B66696C6C3A233732373237 + 323B7D262331333B262331303B2623393B2E426C75657B66696C6C3A23313137 + 3744373B7D262331333B262331303B2623393B2E7374307B6F7061636974793A + 302E353B7D3C2F7374796C653E0D0A3C7061746820636C6173733D22426C6163 + 6B2220643D224D33302C31307631384836762D32762D32563130483476313448 + 32563468323476366832563363302D302E362D302E342D312D312D3148314330 + 2E342C322C302C322E342C302C3376323263302C302E362C302E342C312C312C + 316833763320202623393B63302C302E352C302E352C312C312C316832366330 + 2E352C302C312D302E352C312D315631304833307A222F3E0D0A3C7061746820 + 636C6173733D22426C75652220643D224D33322C3763302D302E362D302E342D + 312D312D31483543342E342C362C342C362E342C342C37763276317632683238 + 56377A222F3E0D0A3C6720636C6173733D22737430223E0D0A09093C72656374 + 20783D22382220793D2231362220636C6173733D22426C61636B222077696474 + 683D22313022206865696768743D2232222F3E0D0A09093C7061746820636C61 + 73733D22426C61636B2220643D224D32302C313476386838762D384832307A20 + 4D32362C3230682D34762D3468345632307A222F3E0D0A093C2F673E0D0A3C2F + 7376673E0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D224C + 617965725F312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267 + 2F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F77 + 77772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D + 22307078222076696577426F783D2230203020333220333222207374796C653D + 22656E61626C652D6261636B67726F756E643A6E657720302030203332203332 + 3B2220786D6C3A73706163653D227072657365727665223E262331333B262331 + 303B3C7374796C6520747970653D22746578742F637373223E2E5265647B6669 + 6C6C3A234431314331433B7D3C2F7374796C653E0D0A3C706F6C79676F6E2063 + 6C6173733D225265642220706F696E74733D2232362C342031302C323020362C + 313620322C323020362C32342031302C32382031342C32342033302C3820222F + 3E0D0A3C2F7376673E0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D2247 + 726F75705F53656C656374696F6E2220786D6C6E733D22687474703A2F2F7777 + 772E77332E6F72672F323030302F7376672220786D6C6E733A786C696E6B3D22 + 687474703A2F2F7777772E77332E6F72672F313939392F786C696E6B2220783D + 223070782220793D22307078222076696577426F783D22302030203332203332 + 22207374796C653D22656E61626C652D6261636B67726F756E643A6E65772030 + 20302033322033323B2220786D6C3A73706163653D227072657365727665223E + 262331333B262331303B3C7374796C6520747970653D22746578742F63737322 + 3E2E426C75657B66696C6C3A233131373744373B7D3C2F7374796C653E0D0A3C + 7061746820636C6173733D22426C75652220643D224D322C313868313276386C + 31362D31314C31342C34763848325631387A222F3E0D0A3C2F7376673E0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D224C + 617965725F312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267 + 2F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F77 + 77772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D + 22307078222076696577426F783D2230203020333220333222207374796C653D + 22656E61626C652D6261636B67726F756E643A6E657720302030203332203332 + 3B2220786D6C3A73706163653D227072657365727665223E262331333B262331 + 303B3C7374796C6520747970653D22746578742F6373732220786D6C3A737061 + 63653D227072657365727665223E2E59656C6C6F777B66696C6C3A2346464231 + 31353B7D262331333B262331303B2623393B2E5265647B66696C6C3A23443131 + 4331433B7D262331333B262331303B2623393B2E426C75657B66696C6C3A2331 + 31373744373B7D262331333B262331303B2623393B2E477265656E7B66696C6C + 3A233033394332333B7D262331333B262331303B2623393B2E426C61636B7B66 + 696C6C3A233732373237323B7D262331333B262331303B2623393B2E57686974 + 657B66696C6C3A234646464646463B7D262331333B262331303B2623393B2E73 + 74307B6F7061636974793A302E353B7D262331333B262331303B2623393B2E73 + 74317B646973706C61793A6E6F6E653B7D262331333B262331303B2623393B2E + 7374327B646973706C61793A696E6C696E653B66696C6C3A233033394332333B + 7D262331333B262331303B2623393B2E7374337B646973706C61793A696E6C69 + 6E653B66696C6C3A234431314331433B7D262331333B262331303B2623393B2E + 7374347B646973706C61793A696E6C696E653B66696C6C3A233732373237323B + 7D3C2F7374796C653E0D0A3C672069643D2248696768496D706F7274616E6365 + 223E0D0A09093C7061746820636C6173733D225265642220643D224D31362C32 + 43382E332C322C322C382E332C322C313673362E332C31342C31342C31347331 + 342D362E332C31342D31345332332E372C322C31362C327A204D31362C323463 + 2D312E312C302D322D302E392D322D3273302E392D322C322D3273322C302E39 + 2C322C3220202623393B2623393B5331372E312C32342C31362C32347A204D31 + 382C3138682D34563868345631387A222F3E0D0A093C2F673E0D0A3C2F737667 + 3E0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D224C + 617965725F312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267 + 2F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F77 + 77772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D + 22307078222076696577426F783D2230203020333220333222207374796C653D + 22656E61626C652D6261636B67726F756E643A6E657720302030203332203332 + 3B2220786D6C3A73706163653D227072657365727665223E262331333B262331 + 303B3C7374796C6520747970653D22746578742F6373732220786D6C3A737061 + 63653D227072657365727665223E2E426C61636B7B66696C6C3A233732373237 + 323B7D262331333B262331303B2623393B2E59656C6C6F777B66696C6C3A2346 + 46423131353B7D262331333B262331303B2623393B2E426C75657B66696C6C3A + 233131373744373B7D262331333B262331303B2623393B2E5265647B66696C6C + 3A234431314331433B7D262331333B262331303B2623393B2E57686974657B66 + 696C6C3A234646464646463B7D262331333B262331303B2623393B2E47726565 + 6E7B66696C6C3A233033394332333B7D262331333B262331303B2623393B2E73 + 74307B66696C6C3A233732373237323B7D262331333B262331303B2623393B2E + 7374317B6F7061636974793A302E353B7D262331333B262331303B2623393B2E + 7374327B6F7061636974793A302E37353B7D3C2F7374796C653E0D0A3C672069 + 643D2250726F64756374517569636B53686970706D656E7473223E0D0A09093C + 7061746820636C6173733D22426C61636B2220643D224D332C31384830763134 + 683363302E362C302C312D302E342C312D3156313943342C31382E342C332E36 + 2C31382C332C31387A222F3E0D0A09093C7061746820636C6173733D22426C75 + 652220643D224D31322C36563363302D302E352C302E352D312C312D31683136 + 63302E352C302C312C302E352C312C3176334831327A204D31342C313463312E + 372C302C362E312C312C392E362C312E3863312E342C302E332C322E342C312E + 362C322E342C3320202623393B2623393B63302C302E322C302C302E352D302E + 312C302E374332362E352C31392E332C33302C31382C33302C31385638483132 + 76362E344331322E362C31342E322C31332E332C31342C31342C31347A222F3E + 0D0A09093C7061746820636C6173733D2259656C6C6F772220643D224D362C32 + 3063322C302C342D322C342D3273322D322C342D3263312E362C302C372C312E + 332C392E312C312E3863302E352C302E312C302E392C302E362C302E392C312E + 31763063302C302E362D302E352C312E312D312E312C312E3120202623393B26 + 23393B63302C302D322E392C302D342E392C3063302C322C342C322C362C3273 + 352E312D312E372C362E342D3263302E342D302E312C312E322C302C312E352C + 302E356C302C3063302E332C302E362C302E312C312E322D302E352C312E3543 + 32392E342C32332E322C32352C32362C32302C323620202623393B2623393B63 + 2D342C302D362D322D382D32732D362C342D362C3453362C32332C362C32307A + 222F3E0D0A093C2F673E0D0A3C2F7376673E0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D224E + 6578742220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F3230 + 30302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F7777772E + 77332E6F72672F313939392F786C696E6B2220783D223070782220793D223070 + 78222076696577426F783D2230203020333220333222207374796C653D22656E + 61626C652D6261636B67726F756E643A6E6577203020302033322033323B2220 + 786D6C3A73706163653D227072657365727665223E262331333B262331303B3C + 7374796C6520747970653D22746578742F637373223E2E426C75657B66696C6C + 3A233131373744373B7D3C2F7374796C653E0D0A3C7061746820636C6173733D + 22426C75652220643D224D382E392C342E3143382E342C332E382C382C342E31 + 2C382C342E367632302E3763302C302E362C302E342C302E382C302E392C302E + 356C31362E382D31302E3363302E352D302E332C302E352D302E382C302D312E + 314C382E392C342E317A222F3E0D0A3C2F7376673E0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D2250 + 7265762220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F3230 + 30302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F7777772E + 77332E6F72672F313939392F786C696E6B2220783D223070782220793D223070 + 78222076696577426F783D2230203020333220333222207374796C653D22656E + 61626C652D6261636B67726F756E643A6E6577203020302033322033323B2220 + 786D6C3A73706163653D227072657365727665223E262331333B262331303B3C + 7374796C6520747970653D22746578742F637373223E2E426C75657B66696C6C + 3A233131373744373B7D3C2F7374796C653E0D0A3C7061746820636C6173733D + 22426C75652220643D224D32332E312C342E314332332E362C332E382C32342C + 342E312C32342C342E367632302E3763302C302E362D302E342C302E382D302E + 392C302E354C362E342C31352E35632D302E352D302E332D302E352D302E382C + 302D312E314C32332E312C342E317A222F3E0D0A3C2F7376673E0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D224C + 617965725F312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267 + 2F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F77 + 77772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D + 22307078222076696577426F783D2230203020333220333222207374796C653D + 22656E61626C652D6261636B67726F756E643A6E657720302030203332203332 + 3B2220786D6C3A73706163653D227072657365727665223E262331333B262331 + 303B3C7374796C6520747970653D22746578742F637373223E2E426C61636B7B + 66696C6C3A233732373237323B7D3C2F7374796C653E0D0A3C7061746820636C + 6173733D22426C61636B2220643D224D31362C3648387638683856367A204D31 + 322C3132682D32563868325631327A222F3E0D0A3C7061746820636C6173733D + 22426C61636B2220643D224D32322C3676313048365636483343322E342C362C + 322C362E342C322C3776323263302C302E362C302E342C312C312C3168323263 + 302E362C302C312D302E342C312D31563138762D32563763302D302E362D302E + 342D312D312D314832327A204D32322C3236483620202623393B762D36683136 + 5632367A222F3E0D0A3C7061746820636C6173733D22426C61636B2220643D22 + 4D32382C32483743362E342C322C362C322E342C362C33763168323276323268 + 3163302E362C302C312D302E342C312D315634563363302D302E362D302E342D + 312D312D314832387A222F3E0D0A3C2F7376673E0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D224C + 617965725F312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267 + 2F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F77 + 77772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D + 22307078222076696577426F783D2230203020333220333222207374796C653D + 22656E61626C652D6261636B67726F756E643A6E657720302030203332203332 + 3B2220786D6C3A73706163653D227072657365727665223E262331333B262331 + 303B3C7374796C6520747970653D22746578742F6373732220786D6C3A737061 + 63653D227072657365727665223E2E477265656E7B66696C6C3A233033394332 + 333B7D262331333B262331303B2623393B2E59656C6C6F777B66696C6C3A2346 + 46423131353B7D262331333B262331303B2623393B2E7374307B6F7061636974 + 793A302E353B7D3C2F7374796C653E0D0A3C6720636C6173733D22737430223E + 0D0A09093C7061746820636C6173733D2259656C6C6F772220643D224D322E32 + 2C32352E326C352E352D313043382C31342E352C382E372C31342C392E352C31 + 34483230762D34682D38563763302D302E362D302E342D312D312D3148334332 + 2E342C362C322C362E352C322C3776313820202623393B2623393B63302C302E + 322C302C302E332C302E312C302E3443322E312C32352E342C322E322C32352E + 332C322E322C32352E327A222F3E0D0A093C2F673E0D0A3C7061746820636C61 + 73733D2259656C6C6F772220643D224D32392E332C313648392E364C342C3236 + 6831392E3863302E352C302C312E312D302E322C312E332D302E366C342E392D + 382E394333302E312C31362E322C32392E382C31362C32392E332C31367A222F + 3E0D0A3C706F6C79676F6E20636C6173733D22477265656E2220706F696E7473 + 3D2232342C322031382C382032322C382032322C31342032362C31342032362C + 382033302C3820222F3E0D0A3C2F7376673E0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D224C + 617965725F312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267 + 2F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F77 + 77772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D + 22307078222076696577426F783D2230203020333220333222207374796C653D + 22656E61626C652D6261636B67726F756E643A6E657720302030203332203332 + 3B2220786D6C3A73706163653D227072657365727665223E262331333B262331 + 303B3C7374796C6520747970653D22746578742F637373223E2E426C75657B66 + 696C6C3A233131373744373B7D3C2F7374796C653E0D0A3C7061746820636C61 + 73733D22426C75652220643D224D31302E342C31342E35632D302E352C302E33 + 2D302E352C302E382C302C312E316C31362E382C31302E3363302E352C302E33 + 2C302E392C302E312C302E392D302E3556342E3663302D302E362D302E342D30 + 2E382D302E392D302E354C31302E342C31342E357A20202623393B204D342C32 + 35563563302D302E362C302E342D312C312D31683263302E362C302C312C302E + 342C312C3176323063302C302E352D302E342C312D312C31483543342E342C32 + 362C342C32352E352C342C32357A222F3E0D0A3C2F7376673E0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D224C + 6173742220786D6C6E733D22687474703A2F2F7777772E77332E6F72672F3230 + 30302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F7777772E + 77332E6F72672F313939392F786C696E6B2220783D223070782220793D223070 + 78222076696577426F783D2230203020333220333222207374796C653D22656E + 61626C652D6261636B67726F756E643A6E6577203020302033322033323B2220 + 786D6C3A73706163653D227072657365727665223E262331333B262331303B3C + 7374796C6520747970653D22746578742F637373223E2E426C75657B66696C6C + 3A233131373744373B7D3C2F7374796C653E0D0A3C7061746820636C6173733D + 22426C75652220643D224D32312E362C31342E3563302E352C302E332C302E35 + 2C302E382C302C312E314C342E392C32352E3943342E342C32362E322C342C32 + 352E392C342C32352E3456342E3663302D302E362C302E342D302E382C302E39 + 2D302E354C32312E362C31342E357A20202623393B204D32382C323556356330 + 2D302E362D302E352D312D312D31682D32632D302E352C302D312C302E342D31 + 2C3176323063302C302E352C302E352C312C312C3168324332372E352C32362C + 32382C32352E352C32382C32357A222F3E0D0A3C2F7376673E0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D224C + 617965725F312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267 + 2F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F77 + 77772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D + 22307078222076696577426F783D2230203020333220333222207374796C653D + 22656E61626C652D6261636B67726F756E643A6E657720302030203332203332 + 3B2220786D6C3A73706163653D227072657365727665223E262331333B262331 + 303B3C7374796C6520747970653D22746578742F637373223E2E426C75657B66 + 696C6C3A233131373744373B7D3C2F7374796C653E0D0A3C7061746820636C61 + 73733D22426C75652220643D224D32352C32364837632D302E362C302D312D30 + 2E352D312D31563763302D302E362C302E342D312C312D3168313863302E352C + 302C312C302E342C312C317631384332362C32352E352C32352E352C32362C32 + 352C32367A222F3E0D0A3C2F7376673E0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D224C + 617965725F312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267 + 2F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F77 + 77772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D + 22307078222076696577426F783D2230203020333220333222207374796C653D + 22656E61626C652D6261636B67726F756E643A6E657720302030203332203332 + 3B2220786D6C3A73706163653D227072657365727665223E262331333B262331 + 303B3C7374796C6520747970653D22746578742F637373223E2E426C75657B66 + 696C6C3A233131373744373B7D3C2F7374796C653E0D0A3C7061746820636C61 + 73733D22426C75652220643D224D31332C32364837632D302E362C302D312D30 + 2E352D312D31563763302D302E362C302E342D312C312D31683663302E362C30 + 2C312C302E342C312C317631384331342C32352E352C31332E362C32362C3133 + 2C32367A222F3E0D0A3C7061746820636C6173733D22426C75652220643D224D + 32352C3236682D36632D302E352C302D312D302E352D312D31563763302D302E + 362C302E352D312C312D31683663302E352C302C312C302E342C312C31763138 + 4332362C32352E352C32352E352C32362C32352C32367A222F3E0D0A3C2F7376 + 673E0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D224C + 617965725F312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267 + 2F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F77 + 77772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D + 22307078222076696577426F783D2230203020333220333222207374796C653D + 22656E61626C652D6261636B67726F756E643A6E657720302030203332203332 + 3B2220786D6C3A73706163653D227072657365727665223E262331333B262331 + 303B3C7374796C6520747970653D22746578742F6373732220786D6C3A737061 + 63653D227072657365727665223E2E426C75657B66696C6C3A23313137374437 + 3B7D262331333B262331303B2623393B2E59656C6C6F777B66696C6C3A234646 + 423131353B7D262331333B262331303B2623393B2E5265647B66696C6C3A2344 + 31314331433B7D262331333B262331303B2623393B2E477265656E7B66696C6C + 3A233033394332333B7D262331333B262331303B2623393B2E426C61636B7B66 + 696C6C3A233732373237323B7D262331333B262331303B2623393B2E57686974 + 657B66696C6C3A234646464646463B7D262331333B262331303B2623393B2E73 + 74307B6F7061636974793A302E353B7D262331333B262331303B2623393B2E73 + 74317B6F7061636974793A302E37353B7D262331333B262331303B2623393B2E + 7374327B646973706C61793A6E6F6E653B7D262331333B262331303B2623393B + 2E7374337B646973706C61793A696E6C696E653B66696C6C3A23464642313135 + 3B7D262331333B262331303B2623393B2E7374347B646973706C61793A696E6C + 696E653B7D262331333B262331303B2623393B2E7374357B646973706C61793A + 696E6C696E653B6F7061636974793A302E37353B7D262331333B262331303B26 + 23393B2E7374367B646973706C61793A696E6C696E653B6F7061636974793A30 + 2E353B7D262331333B262331303B2623393B2E7374377B646973706C61793A69 + 6E6C696E653B66696C6C3A233033394332333B7D262331333B262331303B2623 + 393B2E7374387B646973706C61793A696E6C696E653B66696C6C3A2344313143 + 31433B7D262331333B262331303B2623393B2E7374397B646973706C61793A69 + 6E6C696E653B66696C6C3A233131373744373B7D262331333B262331303B2623 + 393B2E737431307B646973706C61793A696E6C696E653B66696C6C3A23464646 + 4646463B7D3C2F7374796C653E0D0A3C672069643D22437573746F6D65725F31 + 5F223E0D0A09093C7061746820636C6173733D22426C75652220643D224D3130 + 2C392E39632D302E312C302E352C302E322C302E392C302E342C312E34732D30 + 2E312C312E372C302E392C312E3663302C302C302C302E312C302C302E326330 + 2E362C322E332C322C342E392C342E372C342E3973342E322D322E362C342E37 + 2D342E3920202623393B2623393B56313363312C302E312C302E362D312E312C + 302E392D312E3663302E322D302E352C302E342D302E392C302E332D312E3463 + 2D302E312D302E342D302E342D302E342D302E352D302E334332332E322C342E + 382C32302E332C352C32302E332C355332302C322C31342E382C322020262339 + 3B2623393B4331302C322C392E342C362C31302E352C392E364331302E342C39 + 2E362C31302E312C392E372C31302C392E397A204D32302C3138632D302E382C + 312E352D322E312C342D342C34732D332E322D322E352D342D34632D322E332C + 332E352D382C312D382C382E35563330683234762D332E3520202623393B2623 + 393B4332382C31392E312C32322E332C32312E342C32302C31387A222F3E0D0A + 093C2F673E0D0A3C2F7376673E0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D224C + 617965725F312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267 + 2F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F77 + 77772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D + 22307078222076696577426F783D2230203020333220333222207374796C653D + 22656E61626C652D6261636B67726F756E643A6E657720302030203332203332 + 3B2220786D6C3A73706163653D227072657365727665223E262331333B262331 + 303B3C7374796C6520747970653D22746578742F6373732220786D6C3A737061 + 63653D227072657365727665223E2E426C75657B66696C6C3A23313137374437 + 3B7D262331333B262331303B2623393B2E59656C6C6F777B66696C6C3A234646 + 423131353B7D262331333B262331303B2623393B2E5265647B66696C6C3A2344 + 31314331433B7D262331333B262331303B2623393B2E477265656E7B66696C6C + 3A233033394332333B7D262331333B262331303B2623393B2E426C61636B7B66 + 696C6C3A233732373237323B7D262331333B262331303B2623393B2E57686974 + 657B66696C6C3A234646464646463B7D262331333B262331303B2623393B2E73 + 74307B6F7061636974793A302E353B7D262331333B262331303B2623393B2E73 + 74317B6F7061636974793A302E37353B7D262331333B262331303B2623393B2E + 7374327B646973706C61793A6E6F6E653B7D262331333B262331303B2623393B + 2E7374337B646973706C61793A696E6C696E653B66696C6C3A23464642313135 + 3B7D262331333B262331303B2623393B2E7374347B646973706C61793A696E6C + 696E653B7D262331333B262331303B2623393B2E7374357B646973706C61793A + 696E6C696E653B6F7061636974793A302E37353B7D262331333B262331303B26 + 23393B2E7374367B646973706C61793A696E6C696E653B6F7061636974793A30 + 2E353B7D262331333B262331303B2623393B2E7374377B646973706C61793A69 + 6E6C696E653B66696C6C3A233033394332333B7D262331333B262331303B2623 + 393B2E7374387B646973706C61793A696E6C696E653B66696C6C3A2344313143 + 31433B7D262331333B262331303B2623393B2E7374397B646973706C61793A69 + 6E6C696E653B66696C6C3A233131373744373B7D262331333B262331303B2623 + 393B2E737431307B646973706C61793A696E6C696E653B66696C6C3A23464646 + 4646463B7D3C2F7374796C653E0D0A3C672069643D2241646472657373223E0D + 0A09093C706F6C79676F6E20636C6173733D22426C75652220706F696E74733D + 22382C323820382C313820322C31382031362C342033302C31382032342C3138 + 2032342C32382031382C32382031382C31382031342C31382031342C32382026 + 23393B222F3E0D0A093C2F673E0D0A3C2F7376673E0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D224C + 617965725F312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267 + 2F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F77 + 77772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D + 22307078222076696577426F783D2230203020333220333222207374796C653D + 22656E61626C652D6261636B67726F756E643A6E657720302030203332203332 + 3B2220786D6C3A73706163653D227072657365727665223E262331333B262331 + 303B3C7374796C6520747970653D22746578742F6373732220786D6C3A737061 + 63653D227072657365727665223E2E426C75657B66696C6C3A23313137374437 + 3B7D262331333B262331303B2623393B2E59656C6C6F777B66696C6C3A234646 + 423131353B7D262331333B262331303B2623393B2E426C61636B7B66696C6C3A + 233732373237323B7D262331333B262331303B2623393B2E477265656E7B6669 + 6C6C3A233033394332333B7D262331333B262331303B2623393B2E5265647B66 + 696C6C3A234431314331433B7D262331333B262331303B2623393B2E7374307B + 6F7061636974793A302E37353B7D262331333B262331303B2623393B2E737431 + 7B6F7061636974793A302E353B7D3C2F7374796C653E0D0A3C672069643D2249 + 6E666F223E0D0A09093C7061746820636C6173733D22426C75652220643D224D + 31362C3243382E332C322C322C382E332C322C313673362E332C31342C31342C + 31347331342D362E332C31342D31345332332E372C322C31362C327A204D3136 + 2C3663312E312C302C322C302E392C322C3263302C312E312D302E392C322D32 + 2C3220202623393B2623393B732D322D302E392D322D324331342C362E392C31 + 342E392C362C31362C367A204D32302C3234682D38762D326832762D38682D32 + 762D326832683476313068325632347A222F3E0D0A093C2F673E0D0A3C2F7376 + 673E0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D224C + 617965725F312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267 + 2F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F77 + 77772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D + 22307078222076696577426F783D2230203020333220333222207374796C653D + 22656E61626C652D6261636B67726F756E643A6E657720302030203332203332 + 3B2220786D6C3A73706163653D227072657365727665223E262331333B262331 + 303B3C7374796C6520747970653D22746578742F6373732220786D6C3A737061 + 63653D227072657365727665223E2E5265647B66696C6C3A234431314331433B + 7D262331333B262331303B2623393B2E426C61636B7B66696C6C3A2337323732 + 37323B7D262331333B262331303B2623393B2E426C75657B66696C6C3A233131 + 373744373B7D262331333B262331303B2623393B2E477265656E7B66696C6C3A + 233033394332333B7D262331333B262331303B2623393B2E59656C6C6F777B66 + 696C6C3A234646423131353B7D262331333B262331303B2623393B2E57686974 + 657B66696C6C3A234646464646463B7D262331333B262331303B2623393B2E73 + 74307B6F7061636974793A302E353B7D262331333B262331303B2623393B2E73 + 74317B6F7061636974793A302E37353B7D262331333B262331303B2623393B2E + 7374327B6F7061636974793A302E32353B7D3C2F7374796C653E0D0A3C672069 + 643D2250726976617465223E0D0A09093C7061746820636C6173733D2259656C + 6C6F772220643D224D32352C3132682D33762D3263302D332E332D322E372D36 + 2D362D36732D362C322E372D362C3676324837632D302E362C302D312C302E35 + 2D312C3176313463302C302E352C302E342C312C312C3168313863302E362C30 + 2C312D302E352C312D3156313320202623393B2623393B4332362C31322E352C + 32352E362C31322C32352C31327A204D31382C3234682D346C312E342D342E31 + 632D302E382D302E332D312E342D312D312E342D312E3963302D312E312C302E + 392D322C322D3273322C302E392C322C3263302C302E392D302E362C312E362D + 312E342C312E394C31382C32347A204D31322C313220202623393B2623393B76 + 2D3263302D322E322C312E382D342C342D3473342C312E382C342C3476324831 + 327A222F3E0D0A093C2F673E0D0A3C2F7376673E0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D224C + 617965725F312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267 + 2F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F77 + 77772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D + 22307078222076696577426F783D2230203020333220333222207374796C653D + 22656E61626C652D6261636B67726F756E643A6E657720302030203332203332 + 3B2220786D6C3A73706163653D227072657365727665223E262331333B262331 + 303B3C7374796C6520747970653D22746578742F6373732220786D6C3A737061 + 63653D227072657365727665223E2E5265647B66696C6C3A234431314331433B + 7D262331333B262331303B2623393B2E426C61636B7B66696C6C3A2337323732 + 37323B7D262331333B262331303B2623393B2E426C75657B66696C6C3A233131 + 373744373B7D262331333B262331303B2623393B2E477265656E7B66696C6C3A + 233033394332333B7D262331333B262331303B2623393B2E59656C6C6F777B66 + 696C6C3A234646423131353B7D262331333B262331303B2623393B2E57686974 + 657B66696C6C3A234646464646463B7D262331333B262331303B2623393B2E73 + 74307B6F7061636974793A302E353B7D262331333B262331303B2623393B2E73 + 74317B6F7061636974793A302E37353B7D262331333B262331303B2623393B2E + 7374327B6F7061636974793A302E32353B7D3C2F7374796C653E0D0A3C672069 + 643D22506167655365747570223E0D0A09093C7061746820636C6173733D2242 + 6C61636B2220643D224D31392E322C323648385636683130763563302C302E36 + 2C302E342C312C312C31683576392E326C322C325631316C2D372D3748374336 + 2E342C342C362C342E342C362C3576323263302C302E362C302E342C312C312C + 316831342E324C31392E322C32367A222F3E0D0A09093C7061746820636C6173 + 733D22426C75652220643D224D32372E362C32372E366C2D362E322D362E3263 + 302E342D302E372C302E362D312E352C302E362D322E3463302D322E382D322E + 322D352D352D35632D302E382C302D312E352C302E322D322E312C302E356C32 + 2E372C322E3720202623393B2623393B63302E362C302E362C302E362C312E37 + 2C302C322E34732D312E372C302E362D322E342C306C2D322E372D322E374331 + 322E322C31372E352C31322C31382E322C31322C313963302C322E382C322E32 + 2C352C352C3563302E392C302C312E372D302E322C322E342D302E366C362E32 + 2C362E3220202623393B2623393B63302E362C302E362C312E342C302E362C32 + 2C306C302C304332382E312C32392C32382E312C32382E312C32372E362C3237 + 2E367A222F3E0D0A093C2F673E0D0A3C2F7376673E0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D224C + 617965725F312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267 + 2F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F77 + 77772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D + 22307078222076696577426F783D2230203020333220333222207374796C653D + 22656E61626C652D6261636B67726F756E643A6E657720302030203332203332 + 3B2220786D6C3A73706163653D227072657365727665223E262331333B262331 + 303B3C7374796C6520747970653D22746578742F6373732220786D6C3A737061 + 63653D227072657365727665223E2E5265647B66696C6C3A234431314331433B + 7D262331333B262331303B2623393B2E426C61636B7B66696C6C3A2337323732 + 37323B7D262331333B262331303B2623393B2E426C75657B66696C6C3A233131 + 373744373B7D262331333B262331303B2623393B2E477265656E7B66696C6C3A + 233033394332333B7D262331333B262331303B2623393B2E59656C6C6F777B66 + 696C6C3A234646423131353B7D262331333B262331303B2623393B2E57686974 + 657B66696C6C3A234646464646463B7D262331333B262331303B2623393B2E73 + 74307B6F7061636974793A302E353B7D262331333B262331303B2623393B2E73 + 74317B6F7061636974793A302E37353B7D262331333B262331303B2623393B2E + 7374327B6F7061636974793A302E32353B7D3C2F7374796C653E0D0A3C672069 + 643D2252656D696E6465727357696E646F77223E0D0A09093C7061746820636C + 6173733D2259656C6C6F772220643D224D32322C3138762D3663302D322E362D + 312E372D342E382D342D352E3763302D302E312C302D302E322C302D302E3363 + 302D312E312D302E392D322D322D32732D322C302E392D322C3263302C302E31 + 2C302C302E322C302C302E3320202623393B2623393B632D322E332C302E382D + 342C332D342C352E3776366C2D342C347632683230762D324C32322C31387A20 + 4D31362C323863312E312C302C322D302E392C322D32682D344331342C32372E + 312C31342E392C32382C31362C32387A222F3E0D0A093C2F673E0D0A3C2F7376 + 673E0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D224C + 617965725F312220786D6C6E733D22687474703A2F2F7777772E77332E6F7267 + 2F323030302F7376672220786D6C6E733A786C696E6B3D22687474703A2F2F77 + 77772E77332E6F72672F313939392F786C696E6B2220783D223070782220793D + 22307078222076696577426F783D2230203020333220333222207374796C653D + 22656E61626C652D6261636B67726F756E643A6E657720302030203332203332 + 3B2220786D6C3A73706163653D227072657365727665223E262331333B262331 + 303B3C7374796C6520747970653D22746578742F6373732220786D6C3A737061 + 63653D227072657365727665223E2E426C61636B7B66696C6C3A233732373237 + 323B7D262331333B262331303B2623393B2E59656C6C6F777B66696C6C3A2346 + 46423131353B7D262331333B262331303B2623393B2E426C75657B66696C6C3A + 233131373744373B7D262331333B262331303B2623393B2E477265656E7B6669 + 6C6C3A233033394332333B7D262331333B262331303B2623393B2E5265647B66 + 696C6C3A234431314331433B7D262331333B262331303B2623393B2E57686974 + 657B66696C6C3A234646464646463B7D262331333B262331303B2623393B2E73 + 74307B6F7061636974793A302E37353B7D262331333B262331303B2623393B2E + 7374317B6F7061636974793A302E353B7D262331333B262331303B2623393B2E + 7374327B6F7061636974793A302E32353B7D3C2F7374796C653E0D0A3C672069 + 643D2241646447726F7570466F6F7465725F315F223E0D0A09093C7265637420 + 783D22342220793D2231382220636C6173733D22426C7565222077696474683D + 22313422206865696768743D2236222F3E0D0A09093C6720636C6173733D2273 + 7430223E0D0A0909093C7061746820636C6173733D22426C61636B2220643D22 + 4D31382C384834563668313456387A204D31382C313048347632683134563130 + 7A204D31382C3134483476326831345631347A222F3E0D0A09093C2F673E0D0A + 09093C7061746820636C6173733D22426C61636B2220643D224D32322C323668 + 2D32682D32483256346831387631346832762D34563363302D302E352D302E35 + 2D312D312D31483143302E352C322C302C322E352C302C3376323463302C302E + 352C302E352C312C312C3168323063302E352C302C312D302E352C312D315632 + 3620202623393B2623393B7A222F3E0D0A09093C706F6C79676F6E20636C6173 + 733D22477265656E2220706F696E74733D2233322C32302032382C3230203238 + 2C31362032342C31362032342C32302032302C32302032302C32342032342C32 + 342032342C32382032382C32382032382C32342033322C3234202623393B222F + 3E0D0A093C2F673E0D0A3C2F7376673E0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D225F + 7833335F5F53796D626F6C735F436972636C65642220783D223070782220793D + 22307078222076696577426F783D223020302031362031362220786D6C6E733D + 22687474703A2F2F7777772E77332E6F72672F323030302F737667223E0D0A09 + 3C7374796C6520747970653D22746578742F637373223E2E59656C6C6F777B66 + 696C6C3A234646423131353B7D3C2F7374796C653E0D0A093C7061746820636C + 6173733D2259656C6C6F772220643D224D20382E30313220312E303132204320 + 342E31313220312E30313220312E30313220342E31313220312E30313220382E + 303132204320312E3031322031312E39313220342E3131322031352E30313220 + 382E3031322031352E30313220432031312E3931322031352E3031322031352E + 3031322031312E3931322031352E30313220382E30313220432031352E303132 + 20342E3131322031312E39313220312E30313220382E30313220312E30313220 + 5A204D20392E3031322031332E303132204C20372E3031322031332E30313220 + 4C20372E3031322031312E303132204C20392E3031322031312E303132204C20 + 392E3031322031332E303132205A204D20392E30313220392E303132204C2037 + 2E30313220392E303132204C20372E30313220332E303132204C20392E303132 + 20332E303132204C20392E30313220392E303132205A222F3E0D0A3C2F737667 + 3E0D0A} + end + item + ImageClass = 'TdxSmartImage' + Image.Data = { + 3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554 + 462D38223F3E0D0A3C7376672076657273696F6E3D22312E31222069643D225F + 7833345F5F547261666669635F4C69676874732220786D6C6E733D2268747470 + 3A2F2F7777772E77332E6F72672F323030302F7376672220786D6C6E733A786C + 696E6B3D22687474703A2F2F7777772E77332E6F72672F313939392F786C696E + 6B2220783D223070782220793D22307078222076696577426F783D2230203020 + 31362031362220786D6C3A73706163653D227072657365727665223E26233133 + 3B262331303B3C7374796C6520747970653D22746578742F637373223E2E4772 + 65656E7B66696C6C3A233033394332333B7D3C2F7374796C653E0D0A3C636972 + 636C6520636C6173733D22477265656E222063783D2238222063793D22382220 + 723D2237222F3E0D0A3C2F7376673E0D0A} + end> + end +end diff --git a/T02贸易汇总仓库/U_TradeMarketListSEL.pas b/T02贸易汇总仓库/U_TradeMarketListSEL.pas new file mode 100644 index 0000000..81fbf34 --- /dev/null +++ b/T02贸易汇总仓库/U_TradeMarketListSEL.pas @@ -0,0 +1,206 @@ +unit U_TradeMarketListSEL; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage, + cxEdit, DB, cxDBData, ToolWin, ComCtrls, U_BaseHelp, cxGridCustomTableView, + cxGridTableView, cxGridDBTableView, cxGridLevel, cxClasses, cxControls, + cxGridCustomView, cxGrid, DBClient, ADODB, ImgList, StdCtrls, ExtCtrls, + cxTextEdit, cxGridCustomPopupMenu, cxGridPopupMenu, cxLookAndFeels, + cxLookAndFeelPainters, cxNavigator, dxDateRanges, dxBarBuiltInMenu, + System.ImageList, U_BaseInput, cxContainer, cxImageList, + dxScrollbarAnnotations, dxSkinsCore, dxSkinsDefaultPainters, cxCheckBox, + cxCalendar, FrameDateSel; + +type + TfrmTradeMarketListSEL = class(TfrmBaseHelp) + ToolBar1: TToolBar; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + DS_1: TDataSource; + CDS_1: TClientDataSet; + TBSave: TToolButton; + TBClose: TToolButton; + ToolButton1: TToolButton; + ADOConnection1: TADOConnection; + GPM_1: TcxGridPopupMenu; + ImageList1: TImageList; + ThreeColorBase: TcxStyleRepository; + SHuangSe: TcxStyle; + SkyBlue: TcxStyle; + Default: TcxStyle; + QHuangSe: TcxStyle; + Red: TcxStyle; + FontBlue: TcxStyle; + TextSHuangSe: TcxStyle; + FonePurple: TcxStyle; + FoneClMaroon: TcxStyle; + FoneRed: TcxStyle; + RowColor: TcxStyle; + handBlack: TcxStyle; + cxBlue: TcxStyle; + SHuangSeCu: TcxStyle; + cxImageList_bar: TcxImageList; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1Column16: TcxGridDBColumn; + Tv1Column7: TcxGridDBColumn; + v1OrdDate: TcxGridDBColumn; + Tv1Column4: TcxGridDBColumn; + Tv1Column8: TcxGridDBColumn; + Tv1Column9: TcxGridDBColumn; + Tv1Column17: TcxGridDBColumn; + Tv1Column12: TcxGridDBColumn; + Tv1Column11: TcxGridDBColumn; + Tv1Column13: TcxGridDBColumn; + Tv1Column2: TcxGridDBColumn; + Tv1Column23: TcxGridDBColumn; + Tv1Column24: TcxGridDBColumn; + v1DeliveryDate: TcxGridDBColumn; + Tv1Column20: TcxGridDBColumn; + Tv1Column6: TcxGridDBColumn; + Tv1Column1: TcxGridDBColumn; + Tv1Column16: TcxGridDBColumn; + Tv1Column5: TcxGridDBColumn; + Tv1Column3: TcxGridDBColumn; + Tv1Column27: TcxGridDBColumn; + Tv1Column21: TcxGridDBColumn; + Tv1Column26: TcxGridDBColumn; + Tv1Column25: TcxGridDBColumn; + Tv1Column10: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + Panel1: TPanel; + Label3: TLabel; + Label1: TLabel; + Label2: TLabel; + Label4: TLabel; + TMMNo: TcxTextEdit; + CustName: TcxTextEdit; + C_Name: TcxTextEdit; + ConNo: TcxTextEdit; + frmFrameDateSel1: TfrmFrameDateSel; + ToolButton2: TToolButton; + procedure FormCreate(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure FormDestroy(Sender: TObject); + procedure TBSaveClick(Sender: TObject); + procedure TV1DblClick(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + private + procedure InitGrid(); + //function SaveData(): Boolean; + { Private declarations } + public + FCoType, FAuthority, FStores, FSTKName: string; + { Public declarations } + end; + +var + frmTradeMarketListSEL: TfrmTradeMarketListSEL; + +implementation + +uses + U_DataLink, U_RTFun; + +{$R *.dfm} + +procedure TfrmTradeMarketListSEL.FormClose(Sender: TObject; var Action: TCloseAction); +begin + inherited; + Action := caFree; +end; + +procedure TfrmTradeMarketListSEL.FormCreate(Sender: TObject); +begin + inherited; + try + with ADOConnection1 do + begin + Connected := false; + ConnectionString := DConString; + Connected := true; + end; + ADOQueryBaseCmd.Connection := ADOConnection1; + ADOQueryBaseTemp.Connection := ADOConnection1; + except + application.MessageBox('ʧܣ', 'ʾϢ'); + end; +end; + +procedure TfrmTradeMarketListSEL.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Close; + sql.Clear; + sql.Add(' select * '); + sql.Add(' from Trade_Market_Main A inner join Trade_Market_sub b on a.tmmid=b.tmmid '); + sql.Add(' where CustNo= ''DQ0001'''); + sql.Add(' and A.Filltime>' + quotedstr(FormatDateTime('yyyy-MM-dd', frmFrameDateSel1.BegDate.Date))); + sql.Add(' and A.Filltime<=' + quotedstr(FormatDateTime('yyyy-MM-dd', frmFrameDateSel1.enddate.Date + 1))); + SQL.ADD('AND STATUS IN (''9'',''10'')'); + Open; + end; + + SCreateCDS(ADOQueryMain, CDS_1); + SInitCDSData(ADOQueryMain, CDS_1); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmTradeMarketListSEL.FormShow(Sender: TObject); +begin + inherited; + frmFrameDateSel1.BegDate.Date := SGetServerDate(ADOQueryTemp) - 180; + frmFrameDateSel1.EndDate.Date := SGetServerDate(ADOQueryTemp); + InitGrid(); + + ReadCxGrid('λ' + Trim(FCoType), TV1, 'Զ'); + +end; + +procedure TfrmTradeMarketListSEL.TBCloseClick(Sender: TObject); +begin + inherited; + Close; +end; + +procedure TfrmTradeMarketListSEL.TBSaveClick(Sender: TObject); +begin + WriteCxGrid('λ' + Trim(FCoType), TV1, 'Զ'); + +end; + +procedure TfrmTradeMarketListSEL.ToolButton1Click(Sender: TObject); +begin + ModalResult := 1; +end; + +procedure TfrmTradeMarketListSEL.ToolButton2Click(Sender: TObject); +begin + initgrid(); +end; + +procedure TfrmTradeMarketListSEL.TV1DblClick(Sender: TObject); +begin + ModalResult := 1; +end; + +procedure TfrmTradeMarketListSEL.FormDestroy(Sender: TObject); +begin + inherited; + frmTradeMarketListSEL := nil; +end; + +end. + diff --git a/T02贸易汇总仓库/U_TradeXinYuOutTHList.dfm b/T02贸易汇总仓库/U_TradeXinYuOutTHList.dfm new file mode 100644 index 0000000..357a46b --- /dev/null +++ b/T02贸易汇总仓库/U_TradeXinYuOutTHList.dfm @@ -0,0 +1,568 @@ +inherited frmTradeXinYuOutTHList: TfrmTradeXinYuOutTHList + Left = 165 + Top = 13 + Caption = #22823#36135#21333 + ClientHeight = 594 + ClientWidth = 1540 + Color = clBtnFace + Font.Height = -16 + FormStyle = fsMDIChild + Position = poScreenCenter + Visible = True + ExplicitWidth = 1556 + ExplicitHeight = 633 + PixelsPerInch = 96 + TextHeight = 21 + object ToolBar1: TToolBar [0] + Tag = 1 + Left = 0 + Top = 0 + Width = 1540 + Height = 30 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 99 + Caption = 'ToolBar1' + Images = DataLink_TradeTotalClothStk.cxImageList_bar + List = True + ShowCaptions = True + TabOrder = 4 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 1 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 71 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 0 + OnClick = TBFindClick + end + object ToolButton3: TToolButton + Left = 142 + Top = 0 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 21 + OnClick = ToolButton3Click + end + object TWC: TToolButton + Left = 213 + Top = 0 + AutoSize = True + Caption = #23436#25104 + ImageIndex = 12 + Visible = False + OnClick = TWCClick + end + object TNowc: TToolButton + Left = 284 + Top = 0 + AutoSize = True + Caption = #25764#38144#23436#25104 + ImageIndex = 11 + Visible = False + OnClick = TNowcClick + end + object ToolButton2: TToolButton + Left = 387 + Top = 0 + AutoSize = True + Caption = #20445#23384#26684#24335 + ImageIndex = 16 + OnClick = ToolButton2Click + end + object ToolButton1: TToolButton + Left = 490 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 28 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 561 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 7 + OnClick = TBCloseClick + end + end + object Panel1: TPanel [1] + Left = 0 + Top = 30 + Width = 1540 + Height = 91 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + ParentBackground = False + TabOrder = 5 + object Label3: TLabel + Left = 24 + Top = 51 + Width = 64 + Height = 21 + Caption = #21333#25454#32534#21495 + end + object Label1: TLabel + Left = 408 + Top = 51 + Width = 32 + Height = 21 + Caption = #23458#25143 + end + object Label2: TLabel + Left = 216 + Top = 51 + Width = 64 + Height = 21 + Caption = #33394#24067#21517#31216 + end + object Label4: TLabel + Left = 568 + Top = 51 + Width = 48 + Height = 21 + Caption = #21512#21516#21495 + end + object TMMNo: TcxTextEdit + Tag = 2 + Left = 92 + Top = 47 + TabOrder = 0 + OnKeyPress = TMMNoKeyPress + Width = 120 + end + object CustName: TcxTextEdit + Tag = 2 + Left = 444 + Top = 47 + TabOrder = 1 + OnKeyPress = TMMNoKeyPress + Width = 120 + end + object C_Name: TcxTextEdit + Tag = 2 + Left = 284 + Top = 47 + TabOrder = 2 + OnKeyPress = TMMNoKeyPress + Width = 120 + end + object ConNo: TcxTextEdit + Tag = 2 + Left = 620 + Top = 47 + TabOrder = 3 + OnKeyPress = TMMNoKeyPress + Width = 120 + end + inline frmFrameDateSel1: TfrmFrameDateSel + Left = 2 + Top = 2 + Width = 1536 + Height = 37 + Align = alTop + Color = clWhite + ParentBackground = False + ParentColor = False + TabOrder = 4 + ExplicitLeft = 2 + ExplicitTop = 2 + ExplicitWidth = 1536 + ExplicitHeight = 37 + inherited lbl2: TLabel + Width = 16 + Height = 21 + ExplicitWidth = 16 + ExplicitHeight = 21 + end + end + end + object cxGrid1: TcxGrid [2] + Left = 0 + Top = 152 + Width = 1540 + Height = 442 + Align = alClient + PopupMenu = PM_1 + TabOrder = 3 + object Tv1: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + ScrollbarAnnotations.CustomAnnotations = <> + OnCellDblClick = Tv1CellDblClick + DataController.DataSource = DataSource1 + DataController.Filter.AutoDataSetFilter = True + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + Column = Tv1Column14 + end + item + Kind = skSum + Column = Tv1Column15 + end + item + Kind = skSum + Column = Tv1Column11 + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.CellHints = True + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.IndicatorWidth = 30 + object v1Column16: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + HeaderAlignmentHorz = taCenter + Width = 77 + end + object Tv1Column7: TcxGridDBColumn + Caption = #21333#25454#32534#21495 + DataBinding.FieldName = 'TMMNo' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 77 + end + object v1OrdDate: TcxGridDBColumn + Caption = #21046#21333#26085#26399 + DataBinding.FieldName = 'TMMDate' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object Tv1Column2: TcxGridDBColumn + Caption = #32463#33829#21333#20301 + DataBinding.FieldName = 'OurCoName' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object Tv1Column4: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustName' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object v1DeliveryDate: TcxGridDBColumn + Caption = #20132#36135#26085#26399 + DataBinding.FieldName = 'DlyDate' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + OnCustomDrawCell = v1DeliveryDateCustomDrawCell + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object Tv1Column6: TcxGridDBColumn + Caption = #21046#21333#20154 + DataBinding.FieldName = 'FILLER' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object Tv1Column1: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'OrdNote' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object Tv1Column3: TcxGridDBColumn + Caption = #21457#36135#22320#22336 + DataBinding.FieldName = 'ShippingAddress' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 77 + end + object Tv1Column5: TcxGridDBColumn + Caption = #32852#31995#26041#24335 + DataBinding.FieldName = 'CONTACT' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object Tv1Column8: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'C_Code' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object Tv1Column9: TcxGridDBColumn + Caption = #33394#24067#21517#31216 + DataBinding.FieldName = 'C_Name' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object Tv1Column12: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'C_Color' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object Tv1Column17: TcxGridDBColumn + Caption = #33394#21495 + DataBinding.FieldName = 'C_ColorNo' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 58 + end + object Tv1Column11: TcxGridDBColumn + Caption = #25253#21333#25968#37327 + DataBinding.FieldName = 'OrderQty' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 104 + end + object Tv1Column13: TcxGridDBColumn + Caption = #25253#21333#21333#20301 + DataBinding.FieldName = 'OrderUnit' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 91 + end + object Tv1Column10: TcxGridDBColumn + Caption = #27004#23618 + DataBinding.FieldName = 'StkPosition' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 95 + end + object Tv1Column16: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'OrdSNote' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object Tv1Column20: TcxGridDBColumn + Caption = #32039#24613#31243#24230 + DataBinding.FieldName = 'Urgent' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 88 + end + object Tv1Column15: TcxGridDBColumn + Caption = #20986#24211#21305#25968 + DataBinding.FieldName = 'OutPiece' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 109 + end + object Tv1Column14: TcxGridDBColumn + Caption = #20986#24211#25968#37327 + DataBinding.FieldName = 'OutQty' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 108 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxTabControl1: TcxTabControl [3] + Left = 0 + Top = 121 + Width = 1540 + Height = 31 + Align = alTop + TabOrder = 2 + Visible = False + Properties.CustomButtons.Buttons = <> + Properties.Style = 9 + Properties.TabIndex = 0 + Properties.Tabs.Strings = ( + ' '#24453#21457#36135' ' + ' '#24050#23436#25104' ' + ' '#20840#37096' ') + OnChange = cxTabControl1Change + ExplicitTop = 127 + ClientRectBottom = 31 + ClientRectRight = 1540 + ClientRectTop = 28 + end + inherited loadProcess: TPanel + Left = 272 + Top = 346 + ExplicitLeft = 272 + ExplicitTop = 346 + end + inherited cxProgressBar2: TcxProgressBar + Left = 264 + Top = 256 + ExplicitLeft = 264 + ExplicitTop = 256 + ExplicitHeight = 29 + end + inherited ADOQueryBaseCmd: TADOQuery + Connection = DataLink_TradeTotalClothStk.ADOLink + Left = 814 + Top = 190 + end + inherited ADOQueryBaseTemp: TADOQuery + Connection = DataLink_TradeTotalClothStk.ADOLink + Left = 896 + Top = 190 + end + object cxgrdpmn1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 814 + Top = 314 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeTotalClothStk.ADOLink + Parameters = <> + Left = 978 + Top = 190 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeTotalClothStk.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1142 + Top = 190 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeTotalClothStk.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 896 + Top = 252 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 1060 + Top = 314 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 1060 + Top = 252 + end + object ADOQuerySub: TADOQuery + Connection = DataLink_TradeTotalClothStk.ADOLink + Parameters = <> + Left = 814 + Top = 252 + end + object DataSource2: TDataSource + DataSet = ORDER_SUB + Left = 1142 + Top = 314 + end + object ADOQueryImage: TADOQuery + Connection = DataLink_TradeTotalClothStk.ADOLink + EnableBCD = False + Parameters = <> + Left = 1060 + Top = 190 + end + object DSImage: TDataSource + DataSet = ADOQueryImage + Left = 814 + Top = 376 + end + object IdFTP1: TIdFTP + ConnectTimeout = 0 + NATKeepAlive.UseKeepAlive = False + NATKeepAlive.IdleTimeMS = 0 + NATKeepAlive.IntervalMS = 0 + ProxySettings.ProxyType = fpcmNone + ProxySettings.Port = 0 + ReadTimeout = 0 + Left = 896 + Top = 376 + end + object ORDER_SUB: TClientDataSet + Aggregates = <> + Params = <> + Left = 1142 + Top = 252 + end + object PopupMenu2: TPopupMenu + Left = 1060 + Top = 376 + object N3: TMenuItem + Caption = #20840#36873 + OnClick = N3Click + end + object N4: TMenuItem + Caption = #20840#24323 + OnClick = N4Click + end + object N2: TMenuItem + Caption = #22797#21046 + end + end + object cxgrdpmn2: TcxGridPopupMenu + PopupMenus = <> + Left = 896 + Top = 314 + end + object CDS_WXTS: TClientDataSet + Aggregates = <> + Params = <> + Left = 978 + Top = 252 + end + object PM_1: TPopupMenu + Left = 978 + Top = 376 + object N1: TMenuItem + Caption = #22797#21046 + OnClick = N1Click + end + object xxx1: TMenuItem + Caption = 'xxx' + end + end + object GPM_3: TcxGridPopupMenu + PopupMenus = <> + Left = 978 + Top = 314 + end +end diff --git a/T02贸易汇总仓库/U_TradeXinYuOutTHList.pas b/T02贸易汇总仓库/U_TradeXinYuOutTHList.pas new file mode 100644 index 0000000..2c2f5f6 --- /dev/null +++ b/T02贸易汇总仓库/U_TradeXinYuOutTHList.pas @@ -0,0 +1,501 @@ +unit U_TradeXinYuOutTHList; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage, + cxEdit, DB, cxDBData, cxGridLevel, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxClasses, cxControls, cxGridCustomView, cxGrid, cxMemo, + cxRichEdit, ComCtrls, cxContainer, cxTextEdit, cxMaskEdit, cxButtonEdit, + StdCtrls, ToolWin, DBClient, ADODB, ExtCtrls, BtnEdit, cxCalendar, StrUtils, + cxCurrencyEdit, cxImage, cxDBEdit, Menus, RM_Common, RM_Class, RM_e_Xls, + RM_Dataset, RM_System, RM_GridReport, cxGridCustomPopupMenu, cxGridPopupMenu, + cxPC, cxSplitter, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, + IdFTP, ShellAPI, cxDropDownEdit, cxCheckBox, RM_e_Graphic, RM_e_Jpeg, + cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, dxBarBuiltInMenu, Math, + dxDateRanges, IdExplicitTLSClientServerBase, U_BaseList, Vcl.Clipbrd, + dxScrollbarAnnotations, cxProgressBar, FrameDateSel, dxSkinsCore, + dxSkinsDefaultPainters, Vcl.DBCtrls; + +type + TfrmTradeXinYuOutTHList = class(TfrmBaseList) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + Tv1: TcxGridDBTableView; + cxGrid1Level1: TcxGridLevel; + cxGrid1: TcxGrid; + cxgrdpmn1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + TMMNo: TcxTextEdit; + v1OrdDate: TcxGridDBColumn; + v1DeliveryDate: TcxGridDBColumn; + Order_Main: TClientDataSet; + ADOQuerySub: TADOQuery; + DataSource2: TDataSource; + cxTabControl1: TcxTabControl; + TWC: TToolButton; + TNowc: TToolButton; + ADOQueryImage: TADOQuery; + DSImage: TDataSource; + IdFTP1: TIdFTP; + v1Column16: TcxGridDBColumn; + ORDER_SUB: TClientDataSet; + PopupMenu2: TPopupMenu; + N3: TMenuItem; + N4: TMenuItem; + Label1: TLabel; + CustName: TcxTextEdit; + Tv1Column6: TcxGridDBColumn; + cxgrdpmn2: TcxGridPopupMenu; + Tv1Column2: TcxGridDBColumn; + Tv1Column1: TcxGridDBColumn; + Label2: TLabel; + C_Name: TcxTextEdit; + CDS_WXTS: TClientDataSet; + Label4: TLabel; + ConNo: TcxTextEdit; + ToolButton2: TToolButton; + PM_1: TPopupMenu; + N1: TMenuItem; + N2: TMenuItem; + GPM_3: TcxGridPopupMenu; + Tv1Column4: TcxGridDBColumn; + Tv1Column3: TcxGridDBColumn; + Tv1Column5: TcxGridDBColumn; + frmFrameDateSel1: TfrmFrameDateSel; + Tv1Column7: TcxGridDBColumn; + Tv1Column8: TcxGridDBColumn; + Tv1Column9: TcxGridDBColumn; + Tv1Column12: TcxGridDBColumn; + Tv1Column16: TcxGridDBColumn; + Tv1Column10: TcxGridDBColumn; + ToolButton1: TToolButton; + Tv1Column11: TcxGridDBColumn; + Tv1Column13: TcxGridDBColumn; + Tv1Column17: TcxGridDBColumn; + Tv1Column20: TcxGridDBColumn; + TBFind: TToolButton; + xxx1: TMenuItem; + Tv1Column14: TcxGridDBColumn; + Tv1Column15: TcxGridDBColumn; + ToolButton3: TToolButton; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure OrderNoMChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBTPClick(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + procedure CheckBox2Click(Sender: TObject); + procedure Tv1StylesGetContentStyle(Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); + procedure v1DeliveryDateCustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); + procedure TMMNoKeyPress(Sender: TObject; var Key: Char); + procedure cxTabControl1Change(Sender: TObject); + procedure TWCClick(Sender: TObject); + procedure TNowcClick(Sender: TObject); + procedure N3Click(Sender: TObject); + procedure N4Click(Sender: TObject); + procedure ComboBox1Change(Sender: TObject); + procedure CustomerNoNameKeyPress(Sender: TObject; var Key: Char); + procedure ToolButton10Click(Sender: TObject); + procedure JGTypeChange(Sender: TObject); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); + procedure ToolButton2Click(Sender: TObject); + procedure N1Click(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + private + DQdate: TDateTime; + procedure InitGrid(); + procedure InitForm(); + procedure SetStatus(); + { Private declarations } + public + FFInt, FCloth: Integer; + canshu1, canshu2, canshu4: string; + fFlileFlag: string; + FNOTE: string; + FOrdType: string; + { Public declarations } + end; + +implementation + +uses + U_DataLink, U_RTFun, U_RPFun, U_ZDYHelp, U_LabelPrint; + +{$R *.dfm} + +procedure TfrmTradeXinYuOutTHList.SetStatus(); +begin + + case cxTabControl1.TabIndex of + 0: + begin + + end; + + end; + +end; + +procedure TfrmTradeXinYuOutTHList.JGTypeChange(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmTradeXinYuOutTHList.FormDestroy(Sender: TObject); +begin + inherited; +// frmProductOrderList:=nil; +end; + +procedure TfrmTradeXinYuOutTHList.FormClose(Sender: TObject; var Action: TCloseAction); +begin + inherited; + Action := caFree; +end; + +procedure TfrmTradeXinYuOutTHList.FormCreate(Sender: TObject); +begin + inherited; + cxgrid1.Align := alClient; + DQdate := SGetServerDate(ADOQueryTemp); + +end; + +procedure TfrmTradeXinYuOutTHList.TBCloseClick(Sender: TObject); +begin + + Close; + +end; + +procedure TfrmTradeXinYuOutTHList.InitGrid(); +var + SqlStr, FilterStr: string; +begin + FilterStr := SGetFilters(Panel1, 1, 2); + + SqlStr := ' exec P_BS_Cloth_Xinyu_Out_TH '; + SqlStr := SqlStr + ' @BegDate=' + quotedstr(Trim(FormatDateTime('yyyy-MM-dd', frmFrameDateSel1.BegDate.Date))); + SqlStr := SqlStr + ' ,@EndDate=' + quotedstr(Trim(FormatDateTime('yyyy-MM-dd', frmFrameDateSel1.enddate.Date + 1))); + + // case cxTabControl1.TabIndex of + // 0: + // begin + // SqlStr := SqlStr + ' , @Status=''9'' '; + // end; + // 1: + // begin + // SqlStr := SqlStr + ' , @Status=''10'' '; + // end; + // + // end; + + InitCDSData(ADOQueryMain, Order_Main, Tv1, SqlStr, FilterStr, 'TMMId'); +end; + +procedure TfrmTradeXinYuOutTHList.InitForm(); +begin + ReadCxGrid(trim(Self.Caption) + 'Tv1', Tv1, 'ó׻ֿܲ'); + frmFrameDateSel1.BegDate.Date := SGetServerDate(ADOQueryTemp) - 180; + frmFrameDateSel1.EndDate.Date := SGetServerDate(ADOQueryTemp); + + SetStatus(); + InitGrid(); +end; + +procedure TfrmTradeXinYuOutTHList.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmTradeXinYuOutTHList.OrderNoMChange(Sender: TObject); +begin + if ADOQueryMain.Active = False then + Exit; + SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2)); + SCreateCDS(ADOQueryMain, Order_Main); + SInitCDSData(ADOQueryMain, Order_Main); +end; + +procedure TfrmTradeXinYuOutTHList.FormShow(Sender: TObject); +begin + inherited; + canshu1 := trim(self.fParameters1); + canshu2 := trim(self.fParameters2); + canshu4 := trim(self.fParameters4); + fFlileFlag := UserDataFlag + 'HX'; + cxTabControl1.TabIndex := 0; + InitForm(); +end; + +procedure TfrmTradeXinYuOutTHList.TBTPClick(Sender: TObject); +var + FQty, FQty1, FMxQty, FPQty, FMxQtyS, FPQtyS: string; +begin +end; + +procedure TfrmTradeXinYuOutTHList.CheckBox1Click(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmTradeXinYuOutTHList.CheckBox2Click(Sender: TObject); +begin + TBRafresh.Click; +end; + +procedure TfrmTradeXinYuOutTHList.Tv1StylesGetContentStyle(Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); +var + id, id10: Integer; +begin + {try + if Tv1.GroupedItemCount=0 then + begin + Id:=Tv1.GetColumnByFieldName('DeliveryDate').Index-tv1.GroupedItemCount; + Id10:=Tv1.GetColumnByFieldName('SubStatus').Index-tv1.GroupedItemCount; + if Trim(VarToStr(ARecord.Values[id]))='' then Exit; + if Id<0 then Exit; + if ARecord.Values[id10]='' then exit; + if (ARecord.Values[id]-DQdate)>=4 then Exit; + if ((ARecord.Values[id]-DQdate)>=0) and ((ARecord.Values[id]-DQdate)<4) then + AStyle:=DataLink_.QHuangSe + else + if ARecord.Values[id]-DQdate<0 then + begin + AStyle:=DataLink_OrderManage.FenHongS; + end; + end else + begin + + end; + except + end; } +end; + +procedure TfrmTradeXinYuOutTHList.v1DeliveryDateCustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +begin + { Id:=TV1.GetColumnByFieldName('DeliveryDate').Index;//;-TV1.GroupedItemCount; + Id10:=TV1.GetColumnByFieldName('SubStatus').Index; + if Id<0 then Exit; + if AViewInfo.GridRecord.Values[Id10]='' then Exit; + if AViewInfo.GridRecord.Values[Id]-SGetServerDate(ADOQueryTemp)>=4 then Exit; + if ((AViewInfo.GridRecord.Values[id]-SGetServerDate(ADOQueryTemp))>=0) and ((AViewInfo.GridRecord.Values[id]-SGetServerDate(ADOQueryTemp))<4) then + ACanvas.Brush.Color:=clYellow + else + if (AViewInfo.GridRecord.Values[id])-(SGetServerDate(ADOQueryTemp)<0) then + begin + ACanvas.Brush.Color:=clRed; + end; + begin + ACanvas.Brush.Color:=clRed; + end else + if AViewInfo.GridRecord.Values[Id]='Purple' then + begin + ACanvas.Brush.Color:=clPurple; + end else + if AViewInfo.GridRecord.Values[Id]='Olive' then + begin + ACanvas.Brush.Color:=clOlive; + end else + if AViewInfo.GridRecord.Values[Id]='Teal' then + begin + ACanvas.Brush.Color:=clTeal; + end else + if AViewInfo.GridRecord.Values[Id]='Background' then + begin + ACanvas.Brush.Color:=clBackground; + end; } +end; + +procedure TfrmTradeXinYuOutTHList.TMMNoKeyPress(Sender: TObject; var Key: Char); +begin + + if Key = #13 then + begin + initgrid(); + end; +end; + +procedure TfrmTradeXinYuOutTHList.Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); +begin + Clipboard.SetTextBuf(PChar(Trim(Order_Main.fieldbyname(TV1.Controller.FocusedColumn.DataBinding.FilterFieldName).AsString))); +end; + +procedure TfrmTradeXinYuOutTHList.cxTabControl1Change(Sender: TObject); +begin + SetStatus(); + InitGrid(); +end; + +procedure TfrmTradeXinYuOutTHList.TWCClick(Sender: TObject); +begin + if Order_Main.IsEmpty then + exit; + + if Application.MessageBox('Ƿʵݣ', 'ʾ', 32 + 4) <> IDYES then + Exit; + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update Trade_Market_Main SET status=''10'' '); + sql.Add('where TMMId=' + quotedstr(trim(Order_Main.fieldbyname('TMMId').AsString))); + + sql.Add(' update Trade_Market_Sub SET OutQty=(select sum(qty) from Trade_Market_Sub_Qty x where x.TMSId = Trade_Market_Sub.TMSID) '); + sql.Add('where TMMId=' + quotedstr(trim(Order_Main.fieldbyname('TMMId').AsString))); + + sql.Add('insert into Finance_Need_Up(UType,UDataId,UOperation,UOperator,UModule,UDetails) '); + sql.Add('values(''óײ'' '); + sql.Add(',' + quotedstr(trim(Order_Main.fieldbyname('TMMId').AsString))); + sql.Add(','''' '); + sql.Add(',' + quotedstr(DName)); + sql.Add(',' + quotedstr(trim(self.Caption))); + sql.Add(',' + quotedstr(trim(Order_Main.fieldbyname('TMMId').AsString))); + sql.Add(') '); + + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); + sql.Add(' ' + quotedstr(trim(DName))); + sql.Add(',getdate() '); + sql.Add(',' + quotedstr(trim(self.Caption))); + sql.Add(',' + quotedstr(trim('ƻ'))); + sql.Add(',' + quotedstr(trim('ƻţ' + trim(Order_Main.FieldByName('TMMNO').AsString)))); + sql.Add(',' + quotedstr(trim('ɹ'))); + sql.Add(')'); + execsql; + end; + + application.MessageBox('ƻɳɹ', 'ʾϢ'); + TBRafresh.Click; + except + application.MessageBox('ƻʧܣ', 'ʾϢ', 0); + end; +end; + +procedure TfrmTradeXinYuOutTHList.TNowcClick(Sender: TObject); +begin + if Order_Main.IsEmpty then + exit; + + if Application.MessageBox('Ƿʵݣ', 'ʾ', 32 + 4) <> IDYES then + Exit; + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update Trade_Market_Main SET status=''9'' '); + sql.Add('where TMMId=' + quotedstr(trim(Order_Main.fieldbyname('TMMId').AsString))); + + sql.Add('insert into Finance_Need_Up(UType,UDataId,UOperation,UOperator,UModule,UDetails) '); + sql.Add('values(''óײ'' '); + sql.Add(',' + quotedstr(trim(Order_Main.fieldbyname('TMMId').AsString))); + sql.Add(','''' '); + sql.Add(',' + quotedstr(DName)); + sql.Add(',' + quotedstr(trim(self.Caption))); + sql.Add(',' + quotedstr(trim(Order_Main.fieldbyname('TMMId').AsString))); + sql.Add(') '); + + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); + sql.Add(' ' + quotedstr(trim(DName))); + sql.Add(',getdate() '); + sql.Add(',' + quotedstr(trim(self.Caption))); + sql.Add(',' + quotedstr(trim('ƻ'))); + sql.Add(',' + quotedstr(trim('ƻţ' + trim(Order_Main.FieldByName('TMMNO').AsString)))); + sql.Add(',' + quotedstr(trim('ɹ'))); + sql.Add(')'); + execsql; + end; + application.MessageBox('ƻɳɹ', 'ʾϢ'); + TBRafresh.Click; + except + application.MessageBox('ƻʧܣ', 'ʾϢ', 0); + end; +end; + +procedure TfrmTradeXinYuOutTHList.N1Click(Sender: TObject); +begin + Clipboard.SetTextBuf(PChar(Trim(Order_Main.fieldbyname(TV1.Controller.FocusedColumn.DataBinding.FilterFieldName).AsString))); +end; + +procedure TfrmTradeXinYuOutTHList.N3Click(Sender: TObject); +begin + SelOKNoFiler(Tv1, True); //ȫѡ +end; + +procedure TfrmTradeXinYuOutTHList.N4Click(Sender: TObject); +begin + SelOKNoFiler(Tv1, False); //ȫ +end; + +procedure TfrmTradeXinYuOutTHList.ComboBox1Change(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmTradeXinYuOutTHList.CustomerNoNameKeyPress(Sender: TObject; var Key: Char); +begin + if Key = #13 then + begin + InitGrid(); + end; +end; + +procedure TfrmTradeXinYuOutTHList.ToolButton10Click(Sender: TObject); +begin + + application.MessageBox('ɹ', 'ʾϢ', 0); +end; + +procedure TfrmTradeXinYuOutTHList.ToolButton1Click(Sender: TObject); +begin + TcxGridToExcel(Trim(Self.Caption), cxGrid1); +end; + +procedure TfrmTradeXinYuOutTHList.ToolButton2Click(Sender: TObject); +begin + WriteCxGrid(trim(Self.Caption) + 'Tv1', Tv1, 'ó׻ֿܲ'); +end; + +procedure TfrmTradeXinYuOutTHList.ToolButton3Click(Sender: TObject); +var + MFiltration: string; + MPrintJson: string; +begin + + if Order_Main.IsEmpty then + Exit; + + MFiltration := Trim(Order_Main.FieldByName('TMMNo').AsString); + MPrintJson := ' {"LMType": "TradeXinYuOut1" '; + MPrintJson := MPrintJson + ' ,"PreviewPrint": true '; + MPrintJson := MPrintJson + ' ,"PrtArgs": [ { "IsSql": false, "Filtration":" ' + MFiltration + '" }, '; + MPrintJson := MPrintJson + ' { "IsSql": false, "Filtration":" ' + MFiltration + '" }, '; + MPrintJson := MPrintJson + ' { "IsSql": false, "Filtration":" ' + MFiltration + '" }, '; + MPrintJson := MPrintJson + ' { "IsSql": false, "Filtration":" ' + MFiltration + '" }, '; + MPrintJson := MPrintJson + ' { "IsSql": false, "Filtration":" ' + MFiltration + '" } ] } '; + FromPrintFr3(Application, PChar(DConString), PChar(MPrintJson)); +end; + +procedure TfrmTradeXinYuOutTHList.TBFindClick(Sender: TObject); +begin + + CDSDataFilter(ADOQueryMain, Order_Main, Tv1, '{"FilterStr":"' + CommonFiltersByContainer(Panel1, ' {"EquTag": 1,"LikeTag": 2,"Fields": ""}') + '" }'); + +end; + +end. + diff --git a/T02贸易汇总仓库/U_TradeXinYuTHStkList.dfm b/T02贸易汇总仓库/U_TradeXinYuTHStkList.dfm new file mode 100644 index 0000000..50f4162 --- /dev/null +++ b/T02贸易汇总仓库/U_TradeXinYuTHStkList.dfm @@ -0,0 +1,365 @@ +inherited frmTradeXinYuthStkList: TfrmTradeXinYuthStkList + Left = 105 + Top = 131 + Caption = #26032#20313#38646#21806#24211#23384 + ClientHeight = 515 + ClientWidth = 1404 + Color = clBtnFace + Font.Height = -16 + FormStyle = fsMDIChild + Position = poDefault + Visible = True + ExplicitWidth = 1420 + ExplicitHeight = 554 + PixelsPerInch = 96 + TextHeight = 21 + object ToolBar1: TToolBar [0] + Tag = 1 + Left = 0 + Top = 0 + Width = 1404 + Height = 30 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeTotalClothStk.cxImageList_bar + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 2 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 1 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 0 + Visible = False + OnClick = TBFindClick + end + object ToolButton3: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #26631#31614#25171#21360 + ImageIndex = 21 + end + object ToolButton2: TToolButton + Left = 213 + Top = 0 + AutoSize = True + Caption = #20445#23384#26684#24335 + ImageIndex = 16 + OnClick = ToolButton2Click + end + object TBClose: TToolButton + Left = 300 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 7 + OnClick = TBCloseClick + end + end + object Panel1: TPanel [1] + Left = 0 + Top = 30 + Width = 1404 + Height = 59 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + ParentBackground = False + ParentColor = True + TabOrder = 3 + object Label3: TLabel + Left = 28 + Top = 18 + Width = 32 + Height = 21 + Caption = #21697#21517 + end + object Label4: TLabel + Left = 598 + Top = 18 + Width = 32 + Height = 21 + Caption = #32534#21495 + end + object Label2: TLabel + Left = 408 + Top = 18 + Width = 32 + Height = 21 + Caption = #39068#33394 + end + object Label6: TLabel + Left = 218 + Top = 18 + Width = 32 + Height = 21 + Caption = #33394#21495 + end + object C_name: TcxTextEdit + Tag = 2 + Left = 64 + Top = 14 + Properties.OnChange = FromCoNamePropertiesChange + TabOrder = 0 + OnKeyPress = C_CodeKeyPress + Width = 150 + end + object C_Code: TcxTextEdit + Tag = 2 + Left = 634 + Top = 14 + Properties.OnChange = FromCoNamePropertiesChange + TabOrder = 1 + OnKeyPress = C_CodeKeyPress + Width = 150 + end + object C_Color: TcxTextEdit + Tag = 2 + Left = 444 + Top = 14 + Properties.OnChange = FromCoNamePropertiesChange + TabOrder = 2 + OnKeyPress = C_CodeKeyPress + Width = 150 + end + object C_ColorNo: TcxTextEdit + Tag = 2 + Left = 254 + Top = 14 + Properties.OnChange = FromCoNamePropertiesChange + TabOrder = 3 + OnKeyPress = C_CodeKeyPress + Width = 150 + end + end + inherited cxProgressBar2: TcxProgressBar + Left = 461 + Top = 353 + ExplicitLeft = 461 + ExplicitTop = 353 + ExplicitHeight = 29 + end + object cxGrid2: TcxGrid [4] + Left = 0 + Top = 89 + Width = 1404 + Height = 426 + Align = alClient + PopupMenu = PopupMenu1 + TabOrder = 4 + object TV2: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + ScrollbarAnnotations.CustomAnnotations = <> + DataController.DataSource = DS_2 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Kind = skSum + Position = spFooter + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skCount + end + item + Kind = skSum + end + item + Kind = skSum + Column = cxGridDBColumn16 + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skCount + end + item + Kind = skSum + Column = cxGridDBColumn15 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.GroupFooters = gfAlwaysVisible + OptionsView.IndicatorWidth = 40 + object cxGridDBColumn14: TcxGridDBColumn + Caption = #32534#21495 + DataBinding.FieldName = 'C_Code' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object cxGridDBColumn9: TcxGridDBColumn + Tag = 2 + Caption = #21697#21517 + DataBinding.FieldName = 'C_Name' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object cxGridDBColumn24: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'C_Color' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object cxGridDBColumn26: TcxGridDBColumn + Caption = #33394#21495 + DataBinding.FieldName = 'C_ColorNo' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object cxGridDBColumn29: TcxGridDBColumn + Caption = #33457#22411 + DataBinding.FieldName = 'C_Pattern' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object cxGridDBColumn17: TcxGridDBColumn + Tag = 2 + Caption = #21333#20301 + DataBinding.FieldName = 'QtyUnit' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + Properties.Items.Strings = ( + 'Kg' + 'M' + 'Y') + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object cxGridDBColumn28: TcxGridDBColumn + Caption = #31867#22411 + DataBinding.FieldName = 'C_Degree' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object cxGridDBColumn15: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'StkPieceint' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object cxGridDBColumn16: TcxGridDBColumn + Tag = 2 + Caption = #25968#37327 + DataBinding.FieldName = 'StkQty' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + end + object cxGridLevel1: TcxGridLevel + GridView = TV2 + end + end + inherited ADOQueryBaseCmd: TADOQuery + Connection = DataLink_TradeTotalClothStk.ADOLink + Left = 524 + Top = 181 + end + inherited ADOQueryBaseTemp: TADOQuery + Connection = DataLink_TradeTotalClothStk.ADOLink + Left = 606 + Top = 181 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeTotalClothStk.ADOLink + Parameters = <> + Left = 688 + Top = 181 + end + object ADO_2: TADOQuery + Connection = DataLink_TradeTotalClothStk.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 524 + Top = 243 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeTotalClothStk.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 770 + Top = 181 + end + object PopupMenu1: TPopupMenu + Left = 688 + Top = 305 + object N1: TMenuItem + Caption = #20840#36873 + end + object N2: TMenuItem + Caption = #20840#24323 + end + end + object GPM_2: TcxGridPopupMenu + PopupMenus = <> + Left = 852 + Top = 243 + end + object CDS_2: TClientDataSet + Aggregates = <> + Params = <> + Left = 688 + Top = 243 + end + object DS_2: TDataSource + DataSet = CDS_2 + Left = 606 + Top = 305 + end +end diff --git a/T02贸易汇总仓库/U_TradeXinYuTHStkList.pas b/T02贸易汇总仓库/U_TradeXinYuTHStkList.pas new file mode 100644 index 0000000..793cb29 --- /dev/null +++ b/T02贸易汇总仓库/U_TradeXinYuTHStkList.pas @@ -0,0 +1,177 @@ +unit U_TradeXinYuTHStkList; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Vcl.Printers, Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, cxGridCustomTableView, cxGridTableView, + cxGridBandedTableView, cxGridDBBandedTableView, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridDBTableView, cxGrid, StdCtrls, ComCtrls, + ExtCtrls, ToolWin, cxGridCustomPopupMenu, cxGridPopupMenu, ADODB, DBClient, + cxDropDownEdit, cxCheckBox, RM_Common, RM_Class, RM_e_Xls, RM_Dataset, + RM_System, RM_GridReport, Menus, cxCalendar, cxButtonEdit, cxTextEdit, + cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, dxDateRanges, + dxBarBuiltInMenu, U_BaseList, dxScrollbarAnnotations, cxContainer, + cxProgressBar, cxButtons, cxMaskEdit, dxSkinsCore, dxSkinsDefaultPainters, + cxPC; + +type + TfrmTradeXinYuthStkList = class(TfrmBaseList) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + ADOQueryCmd: TADOQuery; + ADO_2: TADOQuery; + ADOQueryTemp: TADOQuery; + PopupMenu1: TPopupMenu; + Label3: TLabel; + Label4: TLabel; + Label2: TLabel; + C_name: TcxTextEdit; + C_Code: TcxTextEdit; + C_Color: TcxTextEdit; + ToolButton2: TToolButton; + Label6: TLabel; + C_ColorNo: TcxTextEdit; + N1: TMenuItem; + N2: TMenuItem; + ToolButton3: TToolButton; + GPM_2: TcxGridPopupMenu; + CDS_2: TClientDataSet; + DS_2: TDataSource; + cxGrid2: TcxGrid; + TV2: TcxGridDBTableView; + cxGridDBColumn14: TcxGridDBColumn; + cxGridDBColumn9: TcxGridDBColumn; + cxGridDBColumn15: TcxGridDBColumn; + cxGridDBColumn16: TcxGridDBColumn; + cxGridDBColumn24: TcxGridDBColumn; + cxGridDBColumn26: TcxGridDBColumn; + cxGridDBColumn28: TcxGridDBColumn; + cxGridDBColumn29: TcxGridDBColumn; + cxGridDBColumn17: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBRafreshClick(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure MPRTCodeNameChange(Sender: TObject); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); + procedure ToolButton2Click(Sender: TObject); + procedure FromCoNamePropertiesChange(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure C_CodeKeyPress(Sender: TObject; var Key: Char); + private + canshu1, FSTKName, canshu3, canshu4: string; + procedure InitGrid2(); + { Private declarations } + public + { Public declarations } + end; + +var + frmTradeXinYuthStkList: TfrmTradeXinYuthStkList; + +implementation + +uses + U_DataLink, U_RTFun, U_PrintLabFun, U_dynamicsDll, U_printPdf, + U_TradeClothSplit, U_LabelPrint; + +{$R *.dfm} + +procedure TfrmTradeXinYuthStkList.FormDestroy(Sender: TObject); +begin + inherited; + frmTradeXinYuTHStkList := nil; +end; + +procedure TfrmTradeXinYuthStkList.FormClose(Sender: TObject; var Action: TCloseAction); +begin + inherited; + Action := caFree; +end; + +procedure TfrmTradeXinYuthStkList.FormCreate(Sender: TObject); +begin + inherited; + canshu1 := Trim(self.fParameters1); + FSTKName := Trim(self.fParameters2); + canshu3 := Trim(self.fParameters3); + canshu4 := Trim(self.fParameters4); +end; + +procedure TfrmTradeXinYuthStkList.InitGrid2(); +var + SqlStr: string; +begin + + SqlStr := ' EXEC P_BS_Cloth_Xinyu_Stk_TH'; + +// ShowMessage(SqlStr); + InitCDSData(ADO_2, CDS_2, Tv2, SqlStr, SGetFilters(Panel1, 1, 2), 'C_Code'); + +end; + +procedure TfrmTradeXinYuthStkList.TBRafreshClick(Sender: TObject); +begin + InitGrid2(); +end; + +procedure TfrmTradeXinYuthStkList.TBCloseClick(Sender: TObject); +begin + + Close; +end; + +procedure TfrmTradeXinYuthStkList.FormShow(Sender: TObject); +begin + inherited; + + ReadCxGrid(trim(Self.Caption) + 'Tv2', Tv2, 'ó׻ֿܲ'); + canshu4 := Trim(self.fParameters4); + InitGrid2(); +end; + +procedure TfrmTradeXinYuthStkList.C_CodeKeyPress(Sender: TObject; var Key: Char); +begin + if Key = #13 then + TBFind.Click; +end; + +procedure TfrmTradeXinYuthStkList.FromCoNamePropertiesChange(Sender: TObject); +begin + if Length(Trim(TcxTextEdit(Sender).Text)) < 4 then + Exit; + TBFind.Click; +end; + +procedure TfrmTradeXinYuthStkList.TBFindClick(Sender: TObject); +begin + + CDSDataFilter(ADO_2, CDS_2, Tv2, '{"FilterStr":"' + CommonFiltersByContainer(Panel1, ' {"EquTag": 1,"LikeTag": 2,"Fields": "C_name|C_Color|C_ColorNo"}') + '" }'); + +end; + +procedure TfrmTradeXinYuthStkList.MPRTCodeNameChange(Sender: TObject); +begin + TBFind.Click; +end; + +procedure TfrmTradeXinYuthStkList.ToolButton2Click(Sender: TObject); +begin + WriteCxGrid(trim(Self.Caption) + 'Tv2', Tv2, 'ó׻ֿܲ'); +end; + +procedure TfrmTradeXinYuthStkList.Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); +begin + ModalResult := 1; +end; + +end. + diff --git a/T02贸易汇总仓库/testDll.res b/T02贸易汇总仓库/testDll.res index e116c48..2465ca0 100644 Binary files a/T02贸易汇总仓库/testDll.res and b/T02贸易汇总仓库/testDll.res differ diff --git a/T03贸易布匹检验/DjdMachineInsp.dproj b/T03贸易布匹检验/DjdMachineInsp.dproj index fc4e25f..a01f0f7 100644 --- a/T03贸易布匹检验/DjdMachineInsp.dproj +++ b/T03贸易布匹检验/DjdMachineInsp.dproj @@ -90,7 +90,7 @@ CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName) - E:\rtgit\trade\D10xhGemei\T03贸易布匹检验\testDll.exe + D:\D10V1W\项目代码\D10xhGemei\T03贸易布匹检验\testDll.exe diff --git a/T03贸易布匹检验/DjdMachineInsp.skincfg b/T03贸易布匹检验/DjdMachineInsp.skincfg index 20f27f2..0849faf 100644 --- a/T03贸易布匹检验/DjdMachineInsp.skincfg +++ b/T03贸易布匹检验/DjdMachineInsp.skincfg @@ -1,6 +1,6 @@ [ExpressSkins] Default=1 -ShowNotifications=0 +ShowNotifications=1 Enabled=1 dxSkinBasic=0 dxSkinBlack=0 @@ -51,7 +51,7 @@ dxSkinStardust=0 dxSkinSummer2008=0 dxSkinTheAsphaltWorld=0 dxSkinTheBezier=0 -dxSkinsDefaultPainters=0 +dxSkinsDefaultPainters=1 dxSkinValentine=0 dxSkinVisualStudio2013Blue=0 dxSkinVisualStudio2013Dark=0 diff --git a/T03贸易布匹检验/U_DataLink.pas b/T03贸易布匹检验/U_DataLink.pas index 23fbce4..5993239 100644 --- a/T03贸易布匹检验/U_DataLink.pas +++ b/T03贸易布匹检验/U_DataLink.pas @@ -7,7 +7,7 @@ uses Windows, Messages, forms, OleCtnrs, DateUtils, ExtCtrls, SyncObjs, cxClasses, System.ImageList,U_BaseDataLink, dxCore, cxLocalization, dxLayoutLookAndFeels, cxImageList, cxGraphics, cxEdit, - cxContainer, dxSkinsForm, dxSkinsCore, dxSkinWXI; + cxContainer, dxSkinsForm, dxSkinsCore, dxSkinWXI, dxSkinsDefaultPainters; type TMyThread = class(TThread) diff --git a/T03贸易布匹检验/U_DeviceJkTest.pas b/T03贸易布匹检验/U_DeviceJkTest.pas index 5c4f33d..5f271ab 100644 --- a/T03贸易布匹检验/U_DeviceJkTest.pas +++ b/T03贸易布匹检验/U_DeviceJkTest.pas @@ -12,7 +12,7 @@ uses cxClasses, cxGridCustomView, cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxGrid, cxDropDownEdit, Vcl.ComCtrls, Vcl.ToolWin, Datasnap.DBClient, cxMaskEdit, Vcl.Buttons, U_BaseList, cxProgressBar, - dxSkinsCore, Vcl.ExtCtrls; + dxSkinsCore, Vcl.ExtCtrls, dxSkinsDefaultPainters; type TfrmDeviceJkTest = class(TfrmBaseList) diff --git a/T03贸易布匹检验/U_KeyBoard.dfm b/T03贸易布匹检验/U_KeyBoard.dfm index 71c6c87..3f95114 100644 --- a/T03贸易布匹检验/U_KeyBoard.dfm +++ b/T03贸易布匹检验/U_KeyBoard.dfm @@ -12,27 +12,44 @@ object FrameKeyBoard: TFrameKeyBoard Align = alClient Frame.Visible = False TabOrder = 0 - ExplicitHeight = 192 object SpeedButton1: TSpeedButton Left = 1 Top = 2 Width = 60 Height = 60 Caption = '1' + Font.Charset = DEFAULT_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = 'Tahoma' + Font.Style = [fsBold] + ParentFont = False end object SpeedButton4: TSpeedButton Left = 1 - Top = 63 + Top = 64 Width = 60 Height = 60 Caption = '4' + Font.Charset = DEFAULT_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = 'Tahoma' + Font.Style = [fsBold] + ParentFont = False end object SpeedButton7: TSpeedButton Left = 1 - Top = 125 + Top = 126 Width = 60 Height = 60 Caption = '7' + Font.Charset = DEFAULT_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = 'Tahoma' + Font.Style = [fsBold] + ParentFont = False end object SpeedButton2: TSpeedButton Left = 62 @@ -40,13 +57,25 @@ object FrameKeyBoard: TFrameKeyBoard Width = 60 Height = 60 Caption = '2' + Font.Charset = DEFAULT_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = 'Tahoma' + Font.Style = [fsBold] + ParentFont = False end object SpeedButton5: TSpeedButton Left = 62 - Top = 63 + Top = 64 Width = 60 Height = 60 Caption = '5' + Font.Charset = DEFAULT_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = 'Tahoma' + Font.Style = [fsBold] + ParentFont = False end object SpeedButton8: TSpeedButton Left = 62 @@ -54,6 +83,12 @@ object FrameKeyBoard: TFrameKeyBoard Width = 60 Height = 60 Caption = '8' + Font.Charset = DEFAULT_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = 'Tahoma' + Font.Style = [fsBold] + ParentFont = False end object SpeedButton3: TSpeedButton Left = 124 @@ -61,6 +96,12 @@ object FrameKeyBoard: TFrameKeyBoard Width = 60 Height = 60 Caption = '3' + Font.Charset = DEFAULT_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = 'Tahoma' + Font.Style = [fsBold] + ParentFont = False end object SpeedButton6: TSpeedButton Left = 124 @@ -68,6 +109,12 @@ object FrameKeyBoard: TFrameKeyBoard Width = 60 Height = 60 Caption = '6' + Font.Charset = DEFAULT_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = 'Tahoma' + Font.Style = [fsBold] + ParentFont = False end object SpeedButton9: TSpeedButton Tag = 9 @@ -76,6 +123,12 @@ object FrameKeyBoard: TFrameKeyBoard Width = 60 Height = 60 Caption = '9' + Font.Charset = DEFAULT_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = 'Tahoma' + Font.Style = [fsBold] + ParentFont = False end object SpeedButton_back: TSpeedButton Left = 186 @@ -83,6 +136,12 @@ object FrameKeyBoard: TFrameKeyBoard Width = 60 Height = 60 Caption = #8592 + Font.Charset = DEFAULT_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = 'Tahoma' + Font.Style = [fsBold] + ParentFont = False end object SpeedButton0: TSpeedButton Left = 186 @@ -90,6 +149,12 @@ object FrameKeyBoard: TFrameKeyBoard Width = 60 Height = 60 Caption = '0' + Font.Charset = DEFAULT_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = 'Tahoma' + Font.Style = [fsBold] + ParentFont = False end object SpeedButton_dot: TSpeedButton Left = 186 @@ -97,6 +162,12 @@ object FrameKeyBoard: TFrameKeyBoard Width = 60 Height = 60 Caption = '.' + Font.Charset = DEFAULT_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = 'Tahoma' + Font.Style = [fsBold] + ParentFont = False end object SpeedButton_yc: TSpeedButton Tag = 9 @@ -105,6 +176,12 @@ object FrameKeyBoard: TFrameKeyBoard Width = 60 Height = 60 Caption = #38544#34255 + Font.Charset = DEFAULT_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = 'Tahoma' + Font.Style = [fsBold] + ParentFont = False end object SpeedButton_zdykey2: TSpeedButton Tag = 9 @@ -113,6 +190,12 @@ object FrameKeyBoard: TFrameKeyBoard Width = 60 Height = 60 Caption = 'C' + Font.Charset = DEFAULT_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = 'Tahoma' + Font.Style = [fsBold] + ParentFont = False end object SpeedButton_zdykey1: TSpeedButton Tag = 9 @@ -121,13 +204,51 @@ object FrameKeyBoard: TFrameKeyBoard Width = 60 Height = 60 Caption = 'A' + Font.Charset = DEFAULT_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = 'Tahoma' + Font.Style = [fsBold] + ParentFont = False end object SpeedButton10: TSpeedButton - Left = 2 - Top = 187 + Left = 248 + Top = 188 Width = 60 Height = 44 Caption = '-' + Font.Charset = DEFAULT_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = 'Tahoma' + Font.Style = [fsBold] + ParentFont = False + end + object SpeedButton11: TSpeedButton + Left = 1 + Top = 188 + Width = 60 + Height = 44 + Caption = #8593 + Font.Charset = DEFAULT_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = 'Tahoma' + Font.Style = [fsBold] + ParentFont = False + end + object SpeedButton12: TSpeedButton + Left = 62 + Top = 188 + Width = 60 + Height = 44 + Caption = #8595 + Font.Charset = DEFAULT_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = 'Tahoma' + Font.Style = [fsBold] + ParentFont = False end end end diff --git a/T03贸易布匹检验/U_KeyBoard.pas b/T03贸易布匹检验/U_KeyBoard.pas index 0ef953f..2f63eb0 100644 --- a/T03贸易布匹检验/U_KeyBoard.pas +++ b/T03贸易布匹检验/U_KeyBoard.pas @@ -7,7 +7,7 @@ uses Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, cxGraphics, cxControls, cxLookAndFeels, cxLookAndFeelPainters, dxLayoutContainer, cxClasses, Vcl.Buttons, dxLayoutControl, cxGeometry, - dxFramedControl, dxPanel, dxSkinsCore, dxSkinWXI; + dxFramedControl, dxPanel, dxSkinsCore, dxSkinWXI, dxSkinsDefaultPainters; type TFrameKeyBoard = class(TFrame) @@ -28,6 +28,8 @@ type SpeedButton_zdykey2: TSpeedButton; SpeedButton_zdykey1: TSpeedButton; SpeedButton10: TSpeedButton; + SpeedButton11: TSpeedButton; + SpeedButton12: TSpeedButton; private { Private declarations } public diff --git a/T03贸易布匹检验/U_MachRollMain.dfm b/T03贸易布匹检验/U_MachRollMain.dfm index 55c4c37..341cf7e 100644 --- a/T03贸易布匹检验/U_MachRollMain.dfm +++ b/T03贸易布匹检验/U_MachRollMain.dfm @@ -1,6 +1,6 @@ inherited frmMachRollMain: TfrmMachRollMain Caption = #26426#21488#26816#39564 - ClientHeight = 756 + ClientHeight = 768 ClientWidth = 1443 Color = clBtnFace Font.Charset = ANSI_CHARSET @@ -8,16 +8,17 @@ inherited frmMachRollMain: TfrmMachRollMain FormStyle = fsMDIChild Visible = True ExplicitWidth = 1459 - ExplicitHeight = 795 + ExplicitHeight = 807 PixelsPerInch = 96 TextHeight = 21 object Panel1: TPanel [0] Left = 0 Top = 0 - Width = 499 - Height = 756 + Width = 490 + Height = 768 Align = alLeft TabOrder = 4 + OnClick = Panel1Click object Label1: TLabel Left = 15 Top = 30 @@ -32,8 +33,8 @@ inherited frmMachRollMain: TfrmMachRollMain ParentFont = False end object Label2: TLabel - Left = 31 - Top = 85 + Left = 360 + Top = 699 Width = 48 Height = 21 Caption = #25351#31034#21333 @@ -43,13 +44,14 @@ inherited frmMachRollMain: TfrmMachRollMain Font.Name = #24494#36719#38597#40657 Font.Style = [] ParentFont = False + Visible = False end object Label3: TLabel - Left = 47 - Top = 119 - Width = 32 + Left = 249 + Top = 67 + Width = 64 Height = 21 - Caption = #33394#21495 + Caption = #33394#21495#39068#33394 Font.Charset = ANSI_CHARSET Font.Color = clBlack Font.Height = -16 @@ -58,8 +60,8 @@ inherited frmMachRollMain: TfrmMachRollMain ParentFont = False end object Label4: TLabel - Left = 15 - Top = 154 + Left = 13 + Top = 104 Width = 64 Height = 21 Caption = #26579#21378#32568#21495 @@ -72,7 +74,7 @@ inherited frmMachRollMain: TfrmMachRollMain end object Label5: TLabel Left = 47 - Top = 188 + Top = 143 Width = 32 Height = 21 Caption = #25968#37327 @@ -84,8 +86,8 @@ inherited frmMachRollMain: TfrmMachRollMain ParentFont = False end object Label6: TLabel - Left = 271 - Top = 85 + Left = 52 + Top = 69 Width = 32 Height = 21 Caption = #21697#21517 @@ -97,8 +99,8 @@ inherited frmMachRollMain: TfrmMachRollMain ParentFont = False end object Label7: TLabel - Left = 271 - Top = 119 + Left = 381 + Top = 730 Width = 32 Height = 21 Caption = #39068#33394 @@ -108,10 +110,11 @@ inherited frmMachRollMain: TfrmMachRollMain Font.Name = #24494#36719#38597#40657 Font.Style = [] ParentFont = False + Visible = False end object Label8: TLabel - Left = 271 - Top = 154 + Left = 276 + Top = 100 Width = 32 Height = 21 Caption = #21345#21495 @@ -124,7 +127,7 @@ inherited frmMachRollMain: TfrmMachRollMain end object Label9: TLabel Left = 33 - Top = 259 + Top = 196 Width = 42 Height = 28 Caption = #38271#24230 @@ -137,7 +140,7 @@ inherited frmMachRollMain: TfrmMachRollMain end object lblLenUnit: TLabel Left = 250 - Top = 262 + Top = 199 Width = 16 Height = 21 Caption = 'M' @@ -150,7 +153,7 @@ inherited frmMachRollMain: TfrmMachRollMain end object Label10: TLabel Left = 33 - Top = 318 + Top = 255 Width = 42 Height = 28 Caption = #37325#37327 @@ -163,7 +166,7 @@ inherited frmMachRollMain: TfrmMachRollMain end object Label11: TLabel Left = 250 - Top = 321 + Top = 258 Width = 22 Height = 21 Caption = 'KG' @@ -176,7 +179,7 @@ inherited frmMachRollMain: TfrmMachRollMain end object Label12: TLabel Left = 41 - Top = 388 + Top = 325 Width = 32 Height = 21 Caption = #31995#25968 @@ -187,6 +190,19 @@ inherited frmMachRollMain: TfrmMachRollMain Font.Style = [] ParentFont = False end + object Label18: TLabel + Left = 244 + Top = 143 + Width = 64 + Height = 21 + Caption = #35745#20215#21333#20301 + Font.Charset = ANSI_CHARSET + Font.Color = clBlack + Font.Height = -16 + Font.Name = #24494#36719#38597#40657 + Font.Style = [] + ParentFont = False + end object edtScan: TcxTextEdit Tag = 999 Left = 85 @@ -202,35 +218,35 @@ inherited frmMachRollMain: TfrmMachRollMain StyleFocused.LookAndFeel.SkinName = 'WXI' StyleHot.LookAndFeel.Kind = lfUltraFlat StyleHot.LookAndFeel.SkinName = 'WXI' - StyleReadOnly.LookAndFeel.Kind = lfUltraFlat - StyleReadOnly.LookAndFeel.SkinName = 'WXI' TabOrder = 0 OnClick = edtScanEnter OnDblClick = edtScanDblClick OnKeyPress = edtScanKeyPress - Width = 384 + Width = 223 end object OrderNo: TcxTextEdit - Left = 85 - Top = 81 + Left = 414 + Top = 695 Properties.ReadOnly = True Style.HotTrack = False Style.TransparentBorder = False TabOrder = 1 + Visible = False Width = 160 end object ColorNo: TcxTextEdit - Left = 85 - Top = 115 + Left = 319 + Top = 61 Properties.ReadOnly = True Style.HotTrack = False Style.TransparentBorder = False TabOrder = 2 + OnClick = ColorNoClick Width = 160 end object FtyPCId: TcxTextEdit - Left = 85 - Top = 150 + Left = 83 + Top = 102 Properties.ReadOnly = False Style.HotTrack = False Style.TransparentBorder = False @@ -240,7 +256,7 @@ inherited frmMachRollMain: TfrmMachRollMain end object Qty: TcxTextEdit Left = 85 - Top = 184 + Top = 139 Properties.ReadOnly = True Style.HotTrack = False Style.TransparentBorder = False @@ -248,8 +264,8 @@ inherited frmMachRollMain: TfrmMachRollMain Width = 160 end object BCIOID: TcxTextEdit - Left = 309 - Top = 150 + Left = 319 + Top = 100 Properties.ReadOnly = True Style.HotTrack = False Style.TransparentBorder = False @@ -257,17 +273,18 @@ inherited frmMachRollMain: TfrmMachRollMain Width = 160 end object Color: TcxTextEdit - Left = 309 - Top = 115 + Left = 414 + Top = 726 Properties.ReadOnly = True Style.HotTrack = False Style.TransparentBorder = False TabOrder = 6 + Visible = False Width = 160 end object CodeName: TcxTextEdit - Left = 309 - Top = 81 + Left = 85 + Top = 65 Properties.ReadOnly = True Style.HotTrack = False Style.TransparentBorder = False @@ -277,7 +294,7 @@ inherited frmMachRollMain: TfrmMachRollMain object InputLen: TcxTextEdit Tag = 999 Left = 85 - Top = 255 + Top = 192 AutoSize = False Properties.ReadOnly = False Properties.OnChange = InputLenPropertiesChange @@ -292,7 +309,7 @@ inherited frmMachRollMain: TfrmMachRollMain object InputWeight: TcxTextEdit Tag = 999 Left = 85 - Top = 314 + Top = 251 AutoSize = False Properties.OnChange = InputLenPropertiesChange Style.HotTrack = False @@ -306,12 +323,13 @@ inherited frmMachRollMain: TfrmMachRollMain object Tare: TcxTextEdit Tag = 999 Left = 187 - Top = 314 + Top = 251 AutoSize = False Properties.OnChange = InputLenPropertiesChange Style.HotTrack = False Style.TransparentBorder = False TabOrder = 10 + Text = '0.3' OnClick = edtScanEnter OnKeyPress = InputLenKeyPress Height = 35 @@ -319,17 +337,17 @@ inherited frmMachRollMain: TfrmMachRollMain end object BTPrint: TButton Left = 309 - Top = 314 + Top = 251 Width = 150 Height = 59 - Caption = #24320' '#35009 + Caption = #24320#35009#20986#24211 TabOrder = 11 OnClick = BTPrintClick end object Coefficient: TcxTextEdit Tag = 999 Left = 83 - Top = 381 + Top = 318 AutoSize = False Properties.ReadOnly = False Style.HotTrack = False @@ -342,8 +360,8 @@ inherited frmMachRollMain: TfrmMachRollMain end object lblRuleConversion: TcxComboBox Tag = 2 - Left = 187 - Top = 381 + Left = 175 + Top = 318 AutoSize = False Properties.DropDownListStyle = lsEditFixedList Properties.Items.Strings = ( @@ -358,32 +376,33 @@ inherited frmMachRollMain: TfrmMachRollMain StyleDisabled.LookAndFeel.SkinName = 'WXI' StyleFocused.LookAndFeel.SkinName = 'WXI' StyleHot.LookAndFeel.SkinName = 'WXI' - StyleReadOnly.LookAndFeel.SkinName = 'WXI' TabOrder = 13 Text = #26080#38656#36716#25442 Height = 35 Width = 102 end object AOrdDefNote1: TcxRichEdit - Left = 33 + Left = 427 Top = 483 Properties.ReadOnly = True Properties.ScrollBars = ssBoth Style.HotTrack = False Style.TransparentBorder = False TabOrder = 14 + Visible = False Height = 206 Width = 181 end object packnote: TcxMemo Tag = 999 - Left = 259 + Left = 427 Top = 483 Properties.ReadOnly = True Properties.ScrollBars = ssVertical Style.HotTrack = False Style.TransparentBorder = False TabOrder = 15 + Visible = False Height = 206 Width = 199 end @@ -555,28 +574,439 @@ inherited frmMachRollMain: TfrmMachRollMain end object Button1: TButton Left = 309 - Top = 249 + Top = 186 Width = 150 Height = 59 - Caption = #20986' '#24211 + Caption = #25972#20214#20986#24211 TabOrder = 31 OnClick = Button1Click end object ToolButton2: TButton - Left = 309 - Top = 388 - Width = 150 + Left = 288 + Top = 325 + Width = 120 Height = 68 Caption = #25171#21360#24211#23384#26631#31614 TabOrder = 32 OnClick = ToolButton2Click end + object GroupBox1: TGroupBox + Left = 13 + Top = 433 + Width = 380 + Height = 235 + Caption = #23458#25143#36864#20179 + TabOrder = 33 + Visible = False + OnClick = GroupBox1Click + object Label13: TLabel + Left = 18 + Top = 36 + Width = 32 + Height = 21 + Caption = #21697#21517 + Font.Charset = ANSI_CHARSET + Font.Color = clBlack + Font.Height = -16 + Font.Name = #24494#36719#38597#40657 + Font.Style = [] + ParentFont = False + end + object Label14: TLabel + Left = 18 + Top = 78 + Width = 32 + Height = 21 + Caption = #33394#21495 + Font.Charset = ANSI_CHARSET + Font.Color = clBlack + Font.Height = -16 + Font.Name = #24494#36719#38597#40657 + Font.Style = [] + ParentFont = False + end + object Label15: TLabel + Left = 18 + Top = 229 + Width = 32 + Height = 21 + Caption = #32534#21495 + Font.Charset = ANSI_CHARSET + Font.Color = clBlack + Font.Height = -16 + Font.Name = #24494#36719#38597#40657 + Font.Style = [] + ParentFont = False + Visible = False + end + object Label16: TLabel + Left = 18 + Top = 153 + Width = 32 + Height = 21 + Caption = #21333#20301 + Font.Charset = ANSI_CHARSET + Font.Color = clBlack + Font.Height = -16 + Font.Name = #24494#36719#38597#40657 + Font.Style = [] + ParentFont = False + end + object Label17: TLabel + Left = 18 + Top = 114 + Width = 32 + Height = 21 + Caption = #39068#33394 + Font.Charset = ANSI_CHARSET + Font.Color = clBlack + Font.Height = -16 + Font.Name = #24494#36719#38597#40657 + Font.Style = [] + ParentFont = False + end + object C_CODE: TcxTextEdit + Left = 56 + Top = 227 + Properties.ReadOnly = False + Style.HotTrack = False + Style.TransparentBorder = False + TabOrder = 0 + Visible = False + Width = 160 + end + object C_NAME2: TcxComboBox + Tag = 2 + Left = 42 + Top = 228 + AutoSize = False + Properties.Items.Strings = ( + #26080#38656#36716#25442 + #38271#24230#36716#20844#26020 + #20928#37325#36716#38271#24230 + '') + Style.HotTrack = False + Style.LookAndFeel.SkinName = 'WXI' + Style.TransparentBorder = False + StyleDisabled.LookAndFeel.SkinName = 'WXI' + StyleFocused.LookAndFeel.SkinName = 'WXI' + StyleHot.LookAndFeel.SkinName = 'WXI' + TabOrder = 1 + Visible = False + OnClick = C_NAME2Click + OnEnter = C_NAME2Enter + Height = 35 + Width = 162 + end + object DUNIT: TcxTextEdit + Left = 56 + Top = 153 + Properties.ReadOnly = False + Style.HotTrack = False + Style.TransparentBorder = False + TabOrder = 2 + OnClick = edtScanEnter + Width = 160 + end + object C_COLOR: TcxTextEdit + Left = 56 + Top = 114 + Properties.ReadOnly = False + Style.HotTrack = False + Style.TransparentBorder = False + TabOrder = 3 + OnClick = edtScanEnter + Width = 160 + end + object C_NAME: TcxTextEdit + Left = 56 + Top = 33 + Properties.ReadOnly = False + Properties.OnChange = C_NAMEPropertiesChange + Style.HotTrack = False + Style.TransparentBorder = False + TabOrder = 4 + OnClick = C_NAMEClick + Width = 160 + end + object CRTYPE: TcxComboBox + Tag = 2 + Left = 56 + Top = 186 + AutoSize = False + Properties.DropDownListStyle = lsEditFixedList + Properties.Items.Strings = ( + #36864#36135#22238#20179 + #30424#28857#22238#20179) + Properties.OnChange = lblRuleConversionPropertiesChange + Style.HotTrack = False + Style.LookAndFeel.SkinName = 'WXI' + Style.TransparentBorder = False + StyleDisabled.LookAndFeel.SkinName = 'WXI' + StyleFocused.LookAndFeel.SkinName = 'WXI' + StyleHot.LookAndFeel.SkinName = 'WXI' + TabOrder = 5 + Text = #36864#36135#22238#20179 + Height = 35 + Width = 102 + end + object Button2: TButton + Left = 222 + Top = 40 + Width = 150 + Height = 68 + Caption = #36864#36135#22238#20179#25171#21360 + TabOrder = 6 + Visible = False + OnClick = Button2Click + end + object C_COLORNO: TcxTextEdit + Left = 56 + Top = 74 + Properties.ReadOnly = False + Properties.OnChange = c_colornoPropertiesChange + Style.HotTrack = False + Style.TransparentBorder = False + TabOrder = 7 + OnClick = C_COLORNOClick + Width = 160 + end + end + object Button3: TButton + Left = 15 + Top = 359 + Width = 120 + Height = 68 + Caption = #22238#20179#25171#21360 + TabOrder = 34 + OnClick = Button3Click + end + object CICUNIT: TcxTextEdit + Left = 319 + Top = 139 + Properties.ReadOnly = True + Style.HotTrack = False + Style.TransparentBorder = False + TabOrder = 35 + Width = 160 + end + object Panel3: TPanel + Left = 69 + Top = 496 + Width = 252 + Height = 400 + Caption = 'Panel3' + TabOrder = 36 + Visible = False + object cxGrid1: TcxGrid + Tag = 9999 + Left = 1 + Top = 1 + Width = 250 + Height = 398 + Align = alClient + TabOrder = 0 + object TV1: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + ScrollbarAnnotations.CustomAnnotations = <> + OnCellClick = TV1CellClick + DataController.DataSource = DS_4 + DataController.Filter.AutoDataSetFilter = True + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Format = #21367#25968':0' + Kind = skCount + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.GroupByBox = False + object cxGridDBColumn2: TcxGridDBColumn + Caption = #21697#21517 + DataBinding.FieldName = 'C_Name' + DataBinding.IsNullValueType = True + FixedKind = fkLeftDynamic + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 248 + end + end + object cxGridLevel3: TcxGridLevel + GridView = TV1 + end + end + end + object cxTextEdit1: TcxTextEdit + Tag = 999 + Left = 414 + Top = 334 + AutoSize = False + ParentFont = False + Properties.ReadOnly = False + Style.Font.Charset = ANSI_CHARSET + Style.Font.Color = clWindowText + Style.Font.Height = -40 + Style.Font.Name = #24494#36719#38597#40657 + Style.Font.Style = [] + Style.HotTrack = False + Style.TransparentBorder = False + Style.IsFontAssigned = True + TabOrder = 37 + Text = #8730 + OnClick = cxTextEdit1Click + OnKeyPress = InputLenKeyPress + Height = 59 + Width = 50 + end + object Button4: TButton + Left = 162 + Top = 359 + Width = 120 + Height = 68 + Caption = #21512#21305 + TabOrder = 38 + OnClick = Button4Click + end + object CheckBox1: TCheckBox + Left = 319 + Top = 34 + Width = 140 + Height = 17 + Caption = #36830#32493#25972#20214#20986#24211 + TabOrder = 39 + end + object Panel5: TPanel + Left = 69 + Top = 535 + Width = 252 + Height = 400 + Caption = 'Panel3' + TabOrder = 40 + Visible = False + object cxGrid5: TcxGrid + Tag = 9999 + Left = 1 + Top = 1 + Width = 250 + Height = 398 + Align = alClient + TabOrder = 0 + object TV5: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + ScrollbarAnnotations.CustomAnnotations = <> + OnCellClick = TV5CellClick + DataController.DataSource = DS_5 + DataController.Filter.AutoDataSetFilter = True + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Format = #21367#25968':0' + Kind = skCount + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.GroupByBox = False + object cxGridDBColumn4: TcxGridDBColumn + Caption = #33394#21495 + DataBinding.FieldName = 'C_colorno' + DataBinding.IsNullValueType = True + FixedKind = fkLeftDynamic + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 248 + end + end + object cxGridLevel5: TcxGridLevel + GridView = TV5 + end + end + end end object Panel_right: TPanel [1] - Left = 499 + Left = 490 Top = 0 - Width = 944 - Height = 756 + Width = 953 + Height = 768 Align = alClient Caption = 'Panel_right' DoubleBuffered = False @@ -585,8 +1015,8 @@ inherited frmMachRollMain: TfrmMachRollMain object cxGrid2: TcxGrid Left = 1 Top = 1 - Width = 942 - Height = 421 + Width = 951 + Height = 433 Align = alClient TabOrder = 0 object TV2: TcxGridDBTableView @@ -623,9 +1053,11 @@ inherited frmMachRollMain: TfrmMachRollMain OptionsBehavior.FocusCellOnCycle = True OptionsCustomize.ColumnFiltering = False OptionsData.Deleting = False - OptionsSelection.CheckBoxVisibility = [cbvDataRow] OptionsView.Footer = True OptionsView.GroupByBox = False + Styles.Content = cxStyle1 + Styles.IncSearch = cxStyle1 + Styles.Header = cxStyle1 object cxGridDBColumn1: TcxGridDBColumn Tag = 99 Caption = #36873#25321 @@ -640,6 +1072,16 @@ inherited frmMachRollMain: TfrmMachRollMain Options.Sorting = False Width = 66 end + object TV2Column11: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'ssel' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Width = 59 + end object TV2Column3: TcxGridDBColumn Caption = #35746#21333#21495 DataBinding.FieldName = 'TMMNo' @@ -712,7 +1154,7 @@ inherited frmMachRollMain: TfrmMachRollMain end object v1PRTOrderQty: TcxGridDBColumn Caption = #27424#21333#25968 - DataBinding.FieldName = 'OrderOweQty' + DataBinding.FieldName = 'OweQty' DataBinding.IsNullValueType = True PropertiesClassName = 'TcxTextEditProperties' HeaderAlignmentHorz = taCenter @@ -765,8 +1207,8 @@ inherited frmMachRollMain: TfrmMachRollMain end object Panel2: TPanel Left = 1 - Top = 422 - Width = 942 + Top = 434 + Width = 951 Height = 333 Align = alBottom TabOrder = 1 @@ -774,7 +1216,7 @@ inherited frmMachRollMain: TfrmMachRollMain Tag = 9999 Left = 1 Top = 31 - Width = 940 + Width = 949 Height = 301 Align = alClient TabOrder = 0 @@ -910,6 +1352,13 @@ inherited frmMachRollMain: TfrmMachRollMain HeaderAlignmentHorz = taCenter Width = 60 end + object Tv3Column2: TcxGridDBColumn + Caption = #20986#21040#37197#36135#21333 + DataBinding.FieldName = 'tmmno' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 100 + end end object cxGridLevel2: TcxGridLevel GridView = Tv3 @@ -919,7 +1368,7 @@ inherited frmMachRollMain: TfrmMachRollMain Tag = 1000 Left = 1 Top = 1 - Width = 940 + Width = 949 Height = 30 AutoSize = True ButtonHeight = 30 @@ -964,10 +1413,18 @@ inherited frmMachRollMain: TfrmMachRollMain Caption = #26085#24535 ImageIndex = 30 end - object ToolButton8: TToolButton + object ToolButton4: TToolButton Left = 316 Top = 0 AutoSize = True + Caption = #20445#23384#26684#24335 + ImageIndex = 37 + OnClick = ToolButton4Click + end + object ToolButton8: TToolButton + Left = 419 + Top = 0 + AutoSize = True Caption = #20851#38381 ImageIndex = 7 OnClick = ToolButton8Click @@ -987,88 +1444,154 @@ inherited frmMachRollMain: TfrmMachRollMain Height = 285 Width = 327 inline FrameKeyBoard1: TFrameKeyBoard - Left = 4 - Top = 23 - Width = 319 - Height = 246 + Left = 2 + Top = 26 + Width = 323 + Height = 257 Align = alClient TabOrder = 0 - ExplicitLeft = 4 - ExplicitTop = 23 - ExplicitWidth = 319 - ExplicitHeight = 246 + ExplicitLeft = 2 + ExplicitTop = 26 + ExplicitWidth = 323 + ExplicitHeight = 257 inherited dxPanel1: TdxPanel - Width = 319 - Height = 246 - ExplicitWidth = 319 - ExplicitHeight = 246 + Width = 323 + Height = 257 + ExplicitWidth = 323 + ExplicitHeight = 257 inherited SpeedButton1: TSpeedButton + Font.Charset = ANSI_CHARSET + Font.Height = -16 + Font.Name = #24494#36719#38597#40657 OnClick = FrameKeyBoard1SpeedButton1Click end inherited SpeedButton4: TSpeedButton + Font.Charset = ANSI_CHARSET + Font.Height = -16 + Font.Name = #24494#36719#38597#40657 OnClick = FrameKeyBoard1SpeedButton1Click end inherited SpeedButton7: TSpeedButton + Font.Charset = ANSI_CHARSET + Font.Height = -16 + Font.Name = #24494#36719#38597#40657 OnClick = FrameKeyBoard1SpeedButton1Click end inherited SpeedButton2: TSpeedButton + Font.Charset = ANSI_CHARSET + Font.Height = -16 + Font.Name = #24494#36719#38597#40657 OnClick = FrameKeyBoard1SpeedButton1Click end inherited SpeedButton5: TSpeedButton + Font.Charset = ANSI_CHARSET + Font.Height = -16 + Font.Name = #24494#36719#38597#40657 OnClick = FrameKeyBoard1SpeedButton1Click end inherited SpeedButton8: TSpeedButton + Top = 126 + Font.Charset = ANSI_CHARSET + Font.Height = -16 + Font.Name = #24494#36719#38597#40657 OnClick = FrameKeyBoard1SpeedButton1Click + ExplicitTop = 126 end inherited SpeedButton3: TSpeedButton + Font.Charset = ANSI_CHARSET + Font.Height = -16 + Font.Name = #24494#36719#38597#40657 OnClick = FrameKeyBoard1SpeedButton1Click end inherited SpeedButton6: TSpeedButton + Font.Charset = ANSI_CHARSET + Font.Height = -16 + Font.Name = #24494#36719#38597#40657 OnClick = FrameKeyBoard1SpeedButton1Click end inherited SpeedButton9: TSpeedButton + Font.Charset = ANSI_CHARSET + Font.Height = -16 + Font.Name = #24494#36719#38597#40657 OnClick = FrameKeyBoard1SpeedButton1Click end inherited SpeedButton_back: TSpeedButton + Font.Charset = ANSI_CHARSET + Font.Height = -16 + Font.Name = #24494#36719#38597#40657 OnClick = FrameKeyBoard1SpeedButton_backClick end inherited SpeedButton0: TSpeedButton + Font.Charset = ANSI_CHARSET + Font.Height = -16 + Font.Name = #24494#36719#38597#40657 OnClick = FrameKeyBoard1SpeedButton1Click end inherited SpeedButton_dot: TSpeedButton + Font.Charset = ANSI_CHARSET + Font.Height = -16 + Font.Name = #24494#36719#38597#40657 OnClick = FrameKeyBoard1SpeedButton1Click end inherited SpeedButton_yc: TSpeedButton + Font.Charset = ANSI_CHARSET + Font.Height = -16 + Font.Name = #24494#36719#38597#40657 OnClick = FrameKeyBoard1SpeedButton_ycClick end inherited SpeedButton_zdykey2: TSpeedButton + Font.Charset = ANSI_CHARSET + Font.Height = -16 + Font.Name = #24494#36719#38597#40657 OnClick = FrameKeyBoard1SpeedButton1Click end inherited SpeedButton_zdykey1: TSpeedButton + Left = 247 + Top = 126 + Font.Charset = ANSI_CHARSET + Font.Height = -16 + Font.Name = #24494#36719#38597#40657 OnClick = FrameKeyBoard1SpeedButton1Click + ExplicitLeft = 247 + ExplicitTop = 126 end inherited SpeedButton10: TSpeedButton + Left = 252 + Top = 191 + Font.Charset = ANSI_CHARSET + Font.Height = -16 + Font.Name = #24494#36719#38597#40657 OnClick = FrameKeyBoard1SpeedButton1Click + ExplicitLeft = 252 + ExplicitTop = 191 + end + inherited SpeedButton11: TSpeedButton + Top = 192 + Font.Charset = ANSI_CHARSET + Font.Height = -16 + Font.Name = #24494#36719#38597#40657 + OnClick = FrameKeyBoard1SpeedButton1Click + ExplicitTop = 192 + end + inherited SpeedButton12: TSpeedButton + Left = 64 + Top = 191 + Font.Charset = ANSI_CHARSET + Font.Height = -16 + Font.Name = #24494#36719#38597#40657 + OnClick = FrameKeyBoard1SpeedButton1Click + ExplicitLeft = 64 + ExplicitTop = 191 end end end - object MovePanel1: TMovePanel - Left = 170 - Top = -12 - Width = 237 - Height = 45 - BevelOuter = bvNone - DockSite = True - ParentBackground = False - TabOrder = 1 - end end inherited loadProcess: TPanel - Left = 560 - Top = 326 + Left = 524 + Top = 535 Width = 177 - ExplicitLeft = 560 - ExplicitTop = 326 + ExplicitLeft = 524 + ExplicitTop = 535 ExplicitWidth = 177 end inherited cxProgressBar2: TcxProgressBar @@ -1078,21 +1601,184 @@ inherited frmMachRollMain: TfrmMachRollMain ExplicitTop = 238 ExplicitHeight = 29 end + object Panel4: TPanel [5] + Left = 69 + Top = 433 + Width = 283 + Height = 400 + TabOrder = 5 + Visible = False + object Label19: TLabel + Left = 5 + Top = 80 + Width = 64 + Height = 21 + Caption = #25195#25551#20837#21475 + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -16 + Font.Name = #24494#36719#38597#40657 + Font.Style = [] + ParentFont = False + Visible = False + end + object Label20: TLabel + Left = 5 + Top = 35 + Width = 80 + Height = 21 + Caption = #21512#21040#26465#30721#65306 + Font.Charset = ANSI_CHARSET + Font.Color = clRed + Font.Height = -16 + Font.Name = #24494#36719#38597#40657 + Font.Style = [] + ParentFont = False + end + object SCAN2: TcxTextEdit + Tag = 999 + Left = 75 + Top = 75 + Properties.CharCase = ecUpperCase + Style.HotTrack = False + Style.LookAndFeel.Kind = lfUltraFlat + Style.LookAndFeel.SkinName = 'WXI' + Style.TransparentBorder = False + StyleDisabled.LookAndFeel.Kind = lfUltraFlat + StyleDisabled.LookAndFeel.SkinName = 'WXI' + StyleFocused.LookAndFeel.Kind = lfUltraFlat + StyleFocused.LookAndFeel.SkinName = 'WXI' + StyleHot.LookAndFeel.Kind = lfUltraFlat + StyleHot.LookAndFeel.SkinName = 'WXI' + TabOrder = 0 + Visible = False + OnKeyPress = SCAN2KeyPress + Width = 200 + end + object cxGrid4: TcxGrid + Tag = 9999 + Left = 1 + Top = 144 + Width = 281 + Height = 255 + Align = alBottom + TabOrder = 1 + object TV4: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + ScrollbarAnnotations.CustomAnnotations = <> + DataController.DataSource = DS_HP + DataController.Filter.AutoDataSetFilter = True + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Format = #21367#25968':0' + Kind = skCount + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.GroupByBox = False + object TV4Column2: TcxGridDBColumn + Caption = #26465#30721 + DataBinding.FieldName = 'bCIoid' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 91 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'stkqty' + DataBinding.IsNullValueType = True + FixedKind = fkLeftDynamic + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 89 + end + object TV4Column1: TcxGridDBColumn + Caption = #21333#20301 + DataBinding.FieldName = 'qtyunit' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 83 + end + end + object cxGridLevel4: TcxGridLevel + GridView = TV4 + end + end + object Button5: TButton + Left = 5 + Top = 69 + Width = 120 + Height = 68 + Caption = #30830#35748#21512#21305 + TabOrder = 2 + OnClick = Button5Click + end + object Button6: TButton + Left = 154 + Top = 67 + Width = 120 + Height = 68 + Caption = #20851#38381 + TabOrder = 3 + OnClick = Button6Click + end + end inherited ADOQueryBaseCmd: TADOQuery Connection = DataLink_TradeInsp.ADOLink - Left = 456 - Top = 311 + Left = 386 + Top = 640 end inherited ADOQueryBaseTemp: TADOQuery Connection = DataLink_TradeInsp.ADOLink - Left = 539 - Top = 311 + Left = 721 + Top = 654 end object cds_params: TClientDataSet Aggregates = <> Params = <> - Left = 788 - Top = 361 + Left = 864 + Top = 61 object cds_paramsdabao: TStringField FieldName = 'dabao' Size = 10 @@ -1190,82 +1876,83 @@ inherited frmMachRollMain: TfrmMachRollMain object CDS_2: TClientDataSet Aggregates = <> Params = <> - Left = 622 - Top = 361 + Left = 620 + Top = 658 end object DS_2: TDataSource DataSet = CDS_2 - Left = 622 - Top = 411 + Left = 584 + Top = 63 end object cds_1: TClientDataSet Aggregates = <> Params = <> - Left = 539 - Top = 361 + Left = 678 + Top = 643 end object cds_3: TClientDataSet Aggregates = <> Params = <> - Left = 705 - Top = 361 + Left = 673 + Top = 83 end object ds_3: TDataSource DataSet = cds_3 - Left = 705 - Top = 411 + Left = 938 + Top = 76 end object ds_1: TDataSource DataSet = cds_1 - Left = 539 - Top = 411 + Left = 504 + Top = 662 end object ADOQueryMain: TADOQuery Connection = DataLink_TradeInsp.ADOLink LockType = ltReadOnly Parameters = <> - Left = 705 - Top = 311 + Left = 851 + Top = 654 end object ADOQueryPrint: TADOQuery Connection = DataLink_TradeInsp.ADOLink LockType = ltReadOnly Parameters = <> - Left = 788 - Top = 311 + Left = 808 + Top = 63 end object GPM_3: TcxGridPopupMenu + Grid = cxGrid3 PopupMenus = <> - Left = 456 - Top = 411 + Left = 1063 + Top = 518 end object ADOQueryImage: TADOQuery Connection = DataLink_TradeInsp.ADOLink LockType = ltReadOnly CommandTimeout = 300 Parameters = <> - Left = 622 - Top = 303 + Left = 787 + Top = 640 end object DS_IMAGE: TDataSource DataSet = ADOQueryImage - Left = 788 - Top = 411 + Left = 1078 + Top = 258 end object ADO_CJ: TADOQuery Connection = DataLink_TradeInsp.ADOLink LockType = ltReadOnly Parameters = <> - Left = 456 - Top = 361 + Left = 434 + Top = 632 end object fRMDB_1: TfrxDBDataset UserName = 'fRMDB_1' CloseDataSource = False DataSet = ADOQueryPrint BCDToCurrency = False - Left = 539 - Top = 461 + Left = 530 + Top = 647 end object frxReport1: TfrxReport Version = '6.9.12' @@ -1285,8 +1972,8 @@ inherited frmMachRollMain: TfrmMachRollMain '' 'end.') ShowProgress = False - Left = 788 - Top = 461 + Left = 1113 + Top = 409 Datasets = <> Variables = <> Style = <> @@ -1313,8 +2000,8 @@ inherited frmMachRollMain: TfrmMachRollMain DataOnly = False OpenAfterExport = False PictureType = gpPNG - Left = 705 - Top = 461 + Left = 748 + Top = 57 end object frxXLSXExport1: TfrxXLSXExport UseFileCache = True @@ -1324,30 +2011,113 @@ inherited frmMachRollMain: TfrmMachRollMain ChunkSize = 0 OpenAfterExport = False PictureType = gpPNG - Left = 622 - Top = 511 + Left = 675 + Top = 47 end object frxReportTableObject1: TfrxReportTableObject - Left = 456 - Top = 511 + Left = 447 + Top = 677 end object frxOLEObject1: TfrxOLEObject - Left = 622 - Top = 461 + Left = 626 + Top = 69 end object frxRichObject1: TfrxRichObject - Left = 539 - Top = 511 + Left = 549 + Top = 647 end object frxBarCodeObject1: TfrxBarCodeObject - Left = 456 - Top = 461 + Left = 473 + Top = 669 end object ADO_2: TADOQuery Connection = DataLink_TradeInsp.ADOLink LockType = ltReadOnly Parameters = <> - Left = 884 - Top = 383 + Left = 1087 + Top = 362 + end + object ADO_PM: TADOQuery + Connection = DataLink_TradeInsp.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 348 + Top = 649 + end + object ADO_YS: TADOQuery + Connection = DataLink_TradeInsp.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 414 + Top = 670 + end + object CDS_4: TClientDataSet + Aggregates = <> + Params = <> + Left = 573 + Top = 496 + end + object DS_4: TDataSource + DataSet = CDS_4 + Left = 667 + Top = 497 + end + object ADO_4: TADOQuery + Connection = DataLink_TradeInsp.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 782 + Top = 543 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 1064 + Top = 297 + end + object cxStyleRepository1: TcxStyleRepository + PixelsPerInch = 96 + object cxStyle1: TcxStyle + AssignedValues = [svFont] + Font.Charset = ANSI_CHARSET + Font.Color = clWindowText + Font.Height = -20 + Font.Name = #23435#20307 + Font.Style = [fsBold] + end + end + object DS_YS: TDataSource + DataSet = ADO_YS + Left = 460 + Top = 481 + end + object DS_HP: TDataSource + DataSet = CDS_HP + Left = 735 + Top = 451 + end + object CDS_HP: TClientDataSet + Aggregates = <> + Params = <> + Left = 642 + Top = 451 + end + object CDS_5: TClientDataSet + Aggregates = <> + Params = <> + Left = 573 + Top = 576 + end + object DS_5: TDataSource + DataSet = CDS_5 + Left = 659 + Top = 577 + end + object ADO_5: TADOQuery + Connection = DataLink_TradeInsp.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 726 + Top = 575 end end diff --git a/T03贸易布匹检验/U_MachRollMain.pas b/T03贸易布匹检验/U_MachRollMain.pas index b22d65d..418aa7a 100644 --- a/T03贸易布匹检验/U_MachRollMain.pas +++ b/T03贸易布匹检验/U_MachRollMain.pas @@ -18,7 +18,8 @@ uses U_KeyBoard, cxGroupBox, cxGridCustomPopupMenu, cxGridPopupMenu, MovePanel, RM_RichEdit, cxProgressBar, cxCurrencyEdit, dxSkinsCore, frxBarcode, frxRich, frxOLE, frxTableObject, frxExportXLSX, frxClass, frxExportBaseDialog, - frxExportPPTX, frxDBSet, dxSkinWXI, dxSkinsDefaultPainters, System.StrUtils; + frxExportPPTX, frxDBSet, dxSkinWXI, dxSkinsDefaultPainters, System.StrUtils, + imm, cxLookupEdit, cxDBLookupEdit, cxDBLookupComboBox; type TfrmMachRollMain = class(TfrmBaseList) @@ -61,7 +62,6 @@ type cds_paramsAddwetPresent: TFloatField; cds_paramsAddLenPresent: TFloatField; GPM_3: TcxGridPopupMenu; - MovePanel1: TMovePanel; ADOQueryImage: TADOQuery; DS_IMAGE: TDataSource; cds_paramspackPrintPreview: TBooleanField; @@ -160,6 +160,65 @@ type TV2Column6: TcxGridDBColumn; TV2Column9: TcxGridDBColumn; TV2Column10: TcxGridDBColumn; + ToolButton4: TToolButton; + GroupBox1: TGroupBox; + Button3: TButton; + Label13: TLabel; + Label14: TLabel; + Label15: TLabel; + C_CODE: TcxTextEdit; + C_NAME2: TcxComboBox; + ADO_PM: TADOQuery; + Label16: TLabel; + DUNIT: TcxTextEdit; + ADO_YS: TADOQuery; + Label17: TLabel; + C_COLOR: TcxTextEdit; + Label18: TLabel; + CICUNIT: TcxTextEdit; + Panel3: TPanel; + cxGrid1: TcxGrid; + TV1: TcxGridDBTableView; + cxGridDBColumn2: TcxGridDBColumn; + cxGridLevel3: TcxGridLevel; + CDS_4: TClientDataSet; + DS_4: TDataSource; + ADO_4: TADOQuery; + C_NAME: TcxTextEdit; + Tv3Column2: TcxGridDBColumn; + cxGridPopupMenu1: TcxGridPopupMenu; + cxTextEdit1: TcxTextEdit; + cxStyleRepository1: TcxStyleRepository; + cxStyle1: TcxStyle; + DS_YS: TDataSource; + Button4: TButton; + Panel4: TPanel; + Label19: TLabel; + SCAN2: TcxTextEdit; + cxGrid4: TcxGrid; + TV4: TcxGridDBTableView; + cxGridDBColumn3: TcxGridDBColumn; + cxGridLevel4: TcxGridLevel; + Label20: TLabel; + TV4Column1: TcxGridDBColumn; + TV4Column2: TcxGridDBColumn; + DS_HP: TDataSource; + CDS_HP: TClientDataSet; + Button5: TButton; + Button6: TButton; + CheckBox1: TCheckBox; + TV2Column11: TcxGridDBColumn; + CRTYPE: TcxComboBox; + Button2: TButton; + C_COLORNO: TcxTextEdit; + Panel5: TPanel; + cxGrid5: TcxGrid; + TV5: TcxGridDBTableView; + cxGridDBColumn4: TcxGridDBColumn; + cxGridLevel5: TcxGridLevel; + CDS_5: TClientDataSet; + DS_5: TDataSource; + ADO_5: TADOQuery; procedure FormCreate(Sender: TObject); procedure FormShow(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); @@ -184,9 +243,31 @@ type procedure ToolButton2Click(Sender: TObject); procedure Button1Click(Sender: TObject); procedure FrameKeyBoard1SpeedButton_backClick(Sender: TObject); + procedure ToolButton4Click(Sender: TObject); + procedure Button3Click(Sender: TObject); + procedure Button2Click(Sender: TObject); + procedure C_NAMEExit(Sender: TObject); + procedure C_NAMEPropertiesChange(Sender: TObject); + procedure c_colornoPropertiesChange(Sender: TObject); + procedure C_NAME2Click(Sender: TObject); + procedure C_NAME2Enter(Sender: TObject); + procedure c_colornoExit(Sender: TObject); + procedure c_colornoEnter(Sender: TObject); + procedure TV1CellClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); + procedure C_NAMEClick(Sender: TObject); + procedure Panel1Click(Sender: TObject); + procedure cxTextEdit1Click(Sender: TObject); + procedure Button4Click(Sender: TObject); + procedure SCAN2KeyPress(Sender: TObject; var Key: Char); + procedure Button6Click(Sender: TObject); + procedure Button5Click(Sender: TObject); + procedure ColorNoClick(Sender: TObject); + procedure C_COLORNOClick(Sender: TObject); + procedure TV5CellClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); + procedure GroupBox1Click(Sender: TObject); private FCIID, FCIFName, FWorkshop: string; - FBCIOID, FC_Code, FC_ColorNo, FQtyUnit, FLenUnit, FTMSId, FTMMId: string; + FBCIOID, FC_Code, FC_ColorNo, FC_Color, FQtyUnit, FLenUnit, FTMSId, FTMMId: string; Faddwet, faddlen: double; FFtyPCId, FGangNo, FRulePieceNo, FCDUnit: string; FPieceNo: Integer; @@ -209,11 +290,16 @@ type procedure GetINIFile(); procedure InitJYGrid(); procedure InitGrid2(); + procedure InitGridCP(); + + procedure InitGridys(); + procedure OpenCom(DllName: string); procedure CloseCom(DllName: string); procedure clearCom(DllName: string); function SaveData(): Boolean; procedure PrtData(MCIID: string; againPring: Boolean = false); + procedure PrtData2(MCIID: string; againPring: Boolean = false); procedure BadSpeedButtonClick(Sender: TObject); procedure setFormCtrol(); procedure On1201(var Message: Tmessage); message 1201; // ӳ @@ -222,8 +308,9 @@ type function deletePack(packId: string): boolean; type + public - fmanage: string; + fmanage, fzt, FZT2: string; fFlileFlag, FCKLX: string; //FCKLX վ end; @@ -291,6 +378,31 @@ begin InitCDSData(ADO_2, CDS_2, Tv2, SqlStr, '', ''); end; +procedure TfrmMachRollMain.InitGridCP(); +var + SqlStr: string; +begin + + SqlStr := ' select distinct C_CODE,c_name from bs_cloth_info where c_name like ' + quotedstr('%' + trim(C_NAME.Text) + '%'); + + SqlStr := SqlStr + 'order by C_CODE,c_name'; +// showmessage(SqlStr); + InitCDSData(ADO_4, CDS_4, Tv1, SqlStr, '', ''); +end; + +procedure TfrmMachRollMain.InitGridys(); +var + SqlStr: string; +begin + + SqlStr := ' select distinct A.C_Code,B.C_Color,B.C_ColorNo,B.referencePrice AS Price from bs_cloth_info A inner join BS_Cloth_Info_Sub B on A.BCIID=B.BCIID where c_name = ' + quotedstr(trim(C_NAME.Text)); + SqlStr := SqlStr + ' AND B.C_ColorNO LIKE ' + quotedstr('%' + trim(C_ColorNO.Text) + '%'); + SqlStr := SqlStr + 'order by B.C_Color,B.C_ColorNo'; +// showmessage(SqlStr); + InitCDSData(ADO_5, CDS_5, Tv5, SqlStr, '', ''); + +end; + function TfrmMachRollMain.CheckData(CKType: string): Boolean; var mvalue: double; @@ -327,17 +439,31 @@ begin if strtofloatdef(trim(InputLen.Text), 0) > cds_params.fieldbyName('maxLen').AsInteger then raise Exception.create('Ȳܴ' + cds_params.fieldbyName('maxLen').AsString + '!'); end; - - if FQtyUnit = 'Kg' then + if UpperCase(CICUNIT.Text) = 'KG' then begin if (strtofloatdef(trim(InputWeight.Text), 0) = 0) then raise Exception.create('Ϊ0!!'); end - else + else if (UpperCase(CICUNIT.Text) = 'M') or (UpperCase(CICUNIT.Text) = 'Y') then begin if (strtofloatdef(trim(InputLen.Text), 0) = 0) then raise Exception.create('ȲΪ0!!'); + end + else + begin + if (strtofloatdef(trim(InputLen.Text), 0) = 0) and (strtofloatdef(trim(InputWeight.Text), 0) = 0) then + raise Exception.create('ܶΪ0!!'); end; +// if UpperCase(FQtyUnit) = 'KG' then +// begin +// if (strtofloatdef(trim(InputWeight.Text), 0) = 0) then +// raise Exception.create('Ϊ0!!'); +// end +// else +// begin +// if (strtofloatdef(trim(InputLen.Text), 0) = 0) then +// raise Exception.create('ȲΪ0!!'); +// end; end; Result := true; @@ -352,6 +478,12 @@ var mvalue: double; i: Integer; begin + if CDS_2.IsEmpty then + begin + Application.MessageBox('', 'ʾϢ', 0); + exit; + end; + try BTPrint.Enabled := false; @@ -382,6 +514,7 @@ begin setFocusCtrol(InputLen.Name); InitJYGrid(); InitGrid2(); + FCIID := ''; finally BTPrint.Enabled := true; @@ -390,6 +523,7 @@ begin begin ClearCom(MBDYDllName); end; + edtScan.SetFocus(); end; procedure TfrmMachRollMain.bt_printmdClick(Sender: TObject); @@ -465,7 +599,8 @@ begin try ADOQueryBaseCmd.Connection.BeginTrans; - + if trim(MTMSId) = '' then + raise Exception.create('ѡ'); if trim(FBCIOID) = '' then raise Exception.create('ɨ̿'); with ADOQueryBaseCmd do @@ -510,6 +645,313 @@ begin begin ClearCom(MBDYDllName); end; + edtScan.SetFocus(); +end; + +procedure TfrmMachRollMain.Button2Click(Sender: TObject); +var + Maxno, MBCIOID: string; + MInputLen, MMeter, MYardage: double; + MInputWeight, MGrossWeight, MNetWeight, MTare, Maddwet, maddLen: double; + mYardStick: double; + mPresentLen, mpresentWeight: double; +begin + if C_name.Text = '' then + begin + application.MessageBox('ƲΪ', 'ʾϢ', 0); + exit; + end; + if C_COlor.Text = '' then + begin + application.MessageBox('ɫΪ', 'ʾϢ', 0); + exit; + end; + if DUNIT.Text = '' then + begin + application.MessageBox('λΪ', 'ʾϢ', 0); + exit; + end; + + if ((DUNIT.Text = 'M') or (DUNIT.Text = 'Y')) and (StrToFloatDef(InputLen.Text, 0) = 0) then + begin + application.MessageBox('ȲΪ0', 'ʾϢ', 0); + exit; + end; + if (UpperCase(DUNIT.Text) = 'KG') and (StrToFloatDef(InputWEIGHT.Text, 0) = 0) then + begin + application.MessageBox('Ϊ0', 'ʾϢ', 0); + exit; + end; + with ADOQueryBaseTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Bs_Cloth_Info A INNER JOIN BS_Cloth_Info_Sub B ON A.BCIID=B.BCIID '); + SQL.Add(' where c_name=' + QuotedStr(C_NAME.Text)); + SQL.Add(' AND B.c_COLOR=' + QuotedStr(c_COLOR.Text)); + SQL.Add(' AND B.C_ColorNo=' + QuotedStr(C_ColorNo.Text)); + open; + end; + if ADOQueryBaseTemp.IsEmpty then + begin + application.MessageBox('δҵòƷɫɫȷϺд', 'ʾϢ', 0); + exit; + end; + + try + ADOQueryBaseCmd.Connection.BeginTrans; + Maddwet := strTofloatDef(trim(addwet.text), 0); // Faddwet; + maddLen := strTofloatDef(trim(addlen.text), 0); // faddlen; + mYardStick := strtofloatdef(trim(RuleYardstick.Text), 100); + mPresentLen := strTofloatDef(trim(presentlen.text), 0); + mpresentWeight := strTofloatDef(trim(presentWeight.text), 0); + with ADOQueryBaseTemp do + begin + Close; + sql.Clear; + sql.Add('select * from BS_Cloth_IO where 1<>1 '); + open; + end; + + if not GetLSNo(ADOQueryBaseCmd, Maxno, 'TC', 'BS_Cloth_IO', 4, 1) then + raise Exception.Create('ȡʧܣ'); + + if (strtoIntdef(Trim(unitPieces.Text), 0) > 0) and (strtoIntdef(trim(InputLen.Text), 0) > 0) then + begin + if strtoIntdef(trim(InputLen.Text), 0) > strtoIntdef(Trim(unitPieces.Text), 0) then + funitPiecesStr := intTostr((strtoIntdef(trim(InputLen.Text), 0)) - strtoIntdef(Trim(unitPieces.Text), 0)) + '+' + Trim(unitPieces.Text); + end; + //0:䣻1ȥ + if gPresentNumFlag = 1 then + begin + mPresentLen := -1 * mPresentLen; + mpresentWeight := -1 * mpresentWeight; + end; + + MTare := strtofloatdef(trim(Tare.Text), 0); // Ƥ + MInputWeight := RoundFloat(strtofloatdef(trim(InputWeight.Text), 0), cds_params.fieldbyName('KgPlace').AsInteger); // + MGrossWeight := MInputWeight + Maddwet + mpresentWeight; // ë + MNetWeight := MInputWeight + Maddwet + mpresentWeight - MTare; // + + + MInputLen := RoundFloat(strtofloatdef(trim(InputLen.Text), 0), 4); + // +mAddLen + if (uppercase(lblLenUnit.Caption) = 'M') or (lblLenUnit.Caption = '') then + begin + MMeter := RoundFloat((MInputLen + maddLen + mPresentLen) / (mYardStick / 100), cds_params.fieldbyName('MPlace').AsInteger); + MYardage := RoundFloat(MMeter / 0.9144, cds_params.fieldbyName('YPlace').AsInteger); + end + else + begin + MYardage := RoundFloat((MInputLen + maddLen + mPresentLen) / (mYardStick / 100), cds_params.fieldbyName('YPlace').AsInteger); + MMeter := RoundFloat(MYardage * 0.9144, cds_params.fieldbyName('MPlace').AsInteger); + end; + with ADOQueryBaseCmd do + begin + Close; + sql.Clear; + sql.Add('select * from BS_Cloth_IO where BCIOID=''' + Trim(Maxno) + ''''); + Open; + end; + with ADOQueryBaseCmd do + begin + if ADOQueryBaseCmd.ISEMPTY then + begin + Append; + FieldByName('Fillid').Value := Trim(Dcode); + FieldByName('Filler').Value := Trim(DName); + FieldByName('BCIONO').Value := Trim(Maxno); + FieldByName('BCIOID').Value := Trim(Maxno); + FieldByName('BCIONO').Value := Trim(Maxno); + FieldByName('STKID').Value := Trim(Maxno); + FieldByName('CIID').Value := Trim(Maxno); + end + else + begin + Edit; + FieldByName('Editid').Value := Trim(Dcode); + FieldByName('Editer').Value := Trim(DName); + FieldByName('EditTime').Value := SGetServerDate(ADOQueryBaseTemp); + FieldByName('status').value := '1'; + end; + FieldByName('C_NAME').Value := C_NAME.Text; + FieldByName('C_CODE').Value := C_CODE.Text; + FieldByName('C_COLORNO').Value := C_COLORNO.Text; + FieldByName('C_COLOR').Value := C_COLOR.Text; + + FieldByName('IOTime').Value := StrToDate(FormatDateTime('yyyy-mm-dd', SGetServerDate(ADOQueryBaseTemp))); + + FieldByName('STKName').Value := 'óײƥ'; + FieldByName('IOFlag').Value := ''; + + FieldByName('IOTYPE').Value := CRTYPE.Text; + + FieldByName('IOQtyFlag').Value := 1; + + FieldByName('piece').Value := 1; + FieldByName('stkpiece').Value := 1; + + FieldByName('GrossWeight').Value := MGrossWeight; + FieldByName('NetWeight').Value := MNetWeight; + FieldByName('Meter').Value := MMeter; + FieldByName('Yardage').Value := MYardage; + + FieldByName('QTYUNIT').Value := DUNIT.Text; + if DUNIT.Text = 'M' then + begin + FieldByName('qty').Value := MMeter; + FieldByName('STKqty').Value := MMeter; + end + else if DUNIT.Text = 'Y' then + begin + FieldByName('qty').Value := MYardage; + FieldByName('STKqty').Value := MYardage; + end + else + begin + FieldByName('qty').Value := MGrossWeight; + FieldByName('STKqty').Value := MGrossWeight; + end; + + Post; + end; + with ADOQueryBaseCmd do + begin + Close; + sql.Clear; + sql.Add('Update BS_Cloth_IO Set StkPiece=(select Sum(isnull(Piece,0)*IOQtyFlag) from BS_Cloth_IO A where A.STKID=BS_Cloth_IO.BCIOID )'); + sql.Add(',StkQty=(select Sum(isnull(Qty,0)*IOQtyFlag) from BS_Cloth_IO A where A.STKID=BS_Cloth_IO.BCIOID )'); + sql.Add(' where BCIOID=''' + Trim(Maxno) + ''''); + ExecSQL; + end; + + with ADOQueryBaseCmd do + begin + Close; + sql.Clear; + sql.Add('Update BS_Cloth_IO Set status = 1'); + + sql.Add(' where BCIOID=''' + Trim(Maxno) + ''''); + ExecSQL; + end; + + with ADOQueryBaseCmd do + begin + Close; + sql.Clear; + sql.Add('insert into Finance_Need_Up(UType,UDataId,UOperation,UOperator,UModule,UDetails) '); + sql.Add('values(''ó״첼'' '); + sql.Add(',' + quotedstr(Maxno)); + sql.Add(','''' '); + sql.Add(',' + quotedstr(DName)); + sql.Add(',' + quotedstr(trim(self.Caption))); + sql.Add(',' + quotedstr(Maxno)); + sql.Add(') '); + ExecSQL; + end; + PrtData2(Maxno); + ADOQueryBaseCmd.Connection.CommitTrans; + InputLen.Text := ''; + presentLen.Text := ''; + funitPiecesStr := ''; + presentWeight.Text := ''; + except + + ADOQueryBaseCmd.Connection.RollbackTrans; + application.MessageBox(PChar(Exception(ExceptObject).Message), 'ʾϢ', 0); + end; + +end; + +procedure TfrmMachRollMain.Button3Click(Sender: TObject); +begin + if GroupBox1.Visible = FALSE then + begin + GroupBox1.Visible := True; + button2.Visible := True; + CRTYPE.Visible := True; + end + else + begin + GroupBox1.Visible := false; + button2.Visible := false; + CRTYPE.Visible := false; + end; +end; + +procedure TfrmMachRollMain.Button4Click(Sender: TObject); +begin + if BCIOID.text = '' then + begin + application.MessageBox('ɨҪƴ', 'ʾϢ', 0); + exit; + end + else + begin + Label20.Caption := 'ϵΪ' + BCIOID.text; + Panel4.Visible := true; + with ADOQueryBaseTemp do + begin + Close; + sql.Clear; + sql.Add('select * From bs_cloth_io where 1<>1'); + + open; + end; + SCreateCDS(ADOQueryBaseTemp, cds_hp); + SInitCDSData(ADOQueryBaseTemp, cds_hp); + end; + +end; + +procedure TfrmMachRollMain.Button5Click(Sender: TObject); +begin + if CDS_HP.IsEmpty then + begin + application.MessageBox('ϸΪ', 'ʾϢ', 0); + exit; + end; + with CDS_HP do + begin + First; + while not Eof do + begin + try + ADOQueryBaseCmd.Connection.BeginTrans; + + with ADOQueryBaseCmd do + begin + Close; + sql.Clear; + Sql.Add('exec P_BS_Cloth_Out_DistributionAll_hp '); + Sql.Add(' @StkID=' + quotedstr(Trim(CDS_HP.FieldByName('bcioid').AsString))); + Sql.Add(' ,@tostkid =' + quotedstr(bcioid.Text)); + Sql.Add(' ,@Dcode=' + quotedstr(Trim(Dcode))); + Sql.Add(' ,@DName=' + quotedstr(Trim(DName))); +// showmessage(sql.Text); + open; + end; + + if ADOQueryBaseCmd.fieldbyName('intReturn').AsInteger = -1 then + begin + raise Exception.create(pchar(trim(ADOQueryBaseCmd.fieldbyName('ShowMsg').AsString))); + end; + + ADOQueryBaseCmd.Connection.CommitTrans; + Application.MessageBox(pchar('ɹ'), 'ʾϢ', 0); + InitPlan(BCIOID.Text); + except + ADOQueryBaseCmd.Connection.RollbackTrans; + Application.MessageBox(pchar(Exception(ExceptObject).Message), 'ʾϢ', 0); + + end; + Next; + end; + end; +end; + +procedure TfrmMachRollMain.Button6Click(Sender: TObject); +begin + Panel4.Visible := false; end; procedure TfrmMachRollMain.FormClose(Sender: TObject; var Action: TCloseAction); @@ -547,7 +989,7 @@ begin gGridNativeSet := true; ReadCxGrid(trim(Self.Caption) + 'Tv3', Tv3, gDllFileCaption); - + ReadCxGrid(trim(Self.Caption) + 'Tv21', Tv2, gDllFileCaption); if IsINIFile() then ReadINIFile() else @@ -573,6 +1015,38 @@ begin // cxGroupBox_keys.ClientHeight := round(cxGrid3.ClientHeight * 0.55); frameKeyBoard1.SpeedButton10.Visible := false; end; + with ADO_PM do + begin + Close; + sql.Clear; + sql.Add(' SELECT distinct A.C_Name,A.C_CODE,TMSUnit=QTYUNIT '); + SQL.ADD(' FROM Bs_Cloth_Info A '); + + SQL.ADD('order by A.C_Code '); +// showmessage(SQL.text); + Open; +// c_name.Properties.LookupItems.Clear; +// while not Eof do +// begin +// c_name.Properties.LookupItems.Add(Trim(ADO_PM.fieldByName('c_name').AsString)); +// Next; +// end; + end; + with ADO_YS do + begin + Close; + sql.Clear; + sql.Add(' SELECT DISTINCT A.C_Code,B.C_Color,B.C_ColorNo,B.referencePrice AS Price FROM Bs_Cloth_Info A inner join BS_Cloth_Info_Sub B on A.BCIID=B.BCIID '); + sql.Add(' where 1<>1'); + SQL.ADD(' order by B.C_ColorNo'); + //ShowMessage(sql.text); + Open; + + end; + // ֧ +// C_NAME.Properties.DropDownListStyle := lsEditList; +// C_NAME.Properties.ImeMode := imChinese; + end; procedure TfrmMachRollMain.FrameKeyBoard1SpeedButton1Click(Sender: TObject); @@ -580,6 +1054,7 @@ var fsj: string; mComponent: TComponent; mkey: Char; + NewText: string; begin fsj := trim(TSpeedButton(Sender).Hint); if trim(fsj) = '' then @@ -590,27 +1065,52 @@ begin exit; if TcxTextEdit(mComponent).Name = 'KuangHao' then exit; - if (TcxTextEdit(mComponent).Name = 'edtScan') and (trim(TSpeedButton(Sender).Caption) = 'س') then + + if (trim(TSpeedButton(Sender).Caption) = '') then begin - mkey := #13; - edtScanKeyPress(edtScan, mkey); - exit; - end; - fsj := trim(TcxTextEdit(mComponent).Text); - if mComponent is TcxCurrencyEdit then - begin - TcxCurrencyEdit(mComponent).text := fsj + trim(TSpeedButton(Sender).Caption); - TcxCurrencyEdit(mComponent).SelectAll; + Tare.Text := FloatToStr(strtofloatdef(Tare.Text, 0) + 0.1); end - else if mComponent is TcxTextEdit then + else if (trim(TSpeedButton(Sender).Caption) = '') then begin - TcxTextEdit(mComponent).Text := fsj + trim(TSpeedButton(Sender).Caption); - TcxTextEdit(mComponent).SelectAll; + Tare.Text := FloatToStr(strtofloatdef(Tare.Text, 0) - 0.1); end - else if mComponent is TcxComboBox then + else begin - TcxComboBox(mComponent).Text := fsj + trim(TSpeedButton(Sender).Caption); - TcxComboBox(mComponent).SelectAll; + if (TcxTextEdit(mComponent).Name = 'edtScan') and (trim(TSpeedButton(Sender).Caption) = 'س') then + begin + mkey := #13; + edtScanKeyPress(edtScan, mkey); + exit; + end; + fsj := trim(TcxTextEdit(mComponent).Text); + if mComponent is TcxCurrencyEdit then + begin + TcxCurrencyEdit(mComponent).text := fsj + trim(TSpeedButton(Sender).Caption); + TcxCurrencyEdit(mComponent).SelectAll; + end + else if mComponent is TcxTextEdit then + begin + TcxTextEdit(mComponent).Text := fsj + trim(TSpeedButton(Sender).Caption); + TcxTextEdit(mComponent).SelectAll; + end + else if mComponent is TcxComboBox then + begin + + NewText := fsj + trim(TSpeedButton(Sender).Caption); + ; + + +// C_NAME.Properties.OnChange := nil; + if TcxComboBox(mComponent).Properties.Items.IndexOf(NewText) = -1 then + TcxComboBox(mComponent).Properties.Items.Add(NewText); + TcxComboBox(mComponent).ItemIndex := TcxComboBox(mComponent).Properties.Items.IndexOf(NewText); + + TcxComboBox(mComponent).DroppedDown := True; +// C_NAME.Text := C_NAME.Text + '1'; + +// TcxComboBox(mComponent).Text := fsj + trim(TSpeedButton(Sender).Caption); +// TcxComboBox(mComponent).SelectAll; + end; end; end; @@ -644,7 +1144,7 @@ begin InputLen.Text := ''; Coefficient.Text := ''; AOrdDefNote1.Text := ''; - Tare.Text := ''; + Tare.Text := '0.3'; InputWeight.Text := ''; FLenUnit := ''; Faddwet := 0; @@ -755,6 +1255,8 @@ begin SetUnit(FLenUnit); FCDUnit := lblLenUnit.Caption; + + CICUNIT.Text := trim(fieldbyName('CICUNIT').AsString); FTMSId := trim(fieldbyName('TMSId').AsString); FTMMId := trim(fieldbyName('TMMId').AsString); FBCIOID := trim(fieldbyName('BCIOID').AsString); @@ -763,12 +1265,13 @@ begin CodeName.Text := trim(fieldbyName('C_Name').AsString); C_width.Text := trim(fieldbyName('C_width').AsString); C_GramWeight.Text := trim(fieldbyName('C_GramWeight').AsString); - ColorNo.Text := trim(fieldbyName('C_ColorNo').AsString); + ColorNo.Text := trim(fieldbyName('C_ColorNo').AsString) + ' ' + trim(fieldbyName('C_Color').AsString); Color.Text := trim(fieldbyName('C_Color').AsString); C_Pattern.Text := trim(fieldbyName('C_Pattern').AsString); FFtyPCId := trim(fieldbyName('FtyPCId').AsString); FC_Code := trim(fieldbyName('C_Code').AsString); FC_ColorNo := trim(fieldbyName('C_ColorNo').AsString); + FC_Color := trim(fieldbyName('C_Color').AsString); cds_params.Edit; cds_params.fieldbyName('outPage').value := ''; cds_params.Post; @@ -879,6 +1382,16 @@ var Makebar: TMakebar; Mixtext: TMixtext; begin + if CDS_2.IsEmpty then + begin + Application.MessageBox('', 'ʾϢ', 0); + exit; + end; + if cxTextEdit1.Text <> '' then + begin + BTPrint.Click(); + end; + with ADOQueryPrint do begin Close; @@ -920,6 +1433,14 @@ begin end; +procedure TfrmMachRollMain.ToolButton4Click(Sender: TObject); +begin + + writeCxGrid(trim(Self.Caption) + 'Tv3', Tv3, gDllFileCaption); + writeCxGrid(trim(Self.Caption) + 'Tv21', Tv2, gDllFileCaption); + +end; + procedure TfrmMachRollMain.TrolldelClick(Sender: TObject); var MBCIOID: string; @@ -952,6 +1473,8 @@ begin cds_3.Delete; Application.MessageBox('ɾɹ', 'ʾϢ'); + InitGrid2(); + InitJYGrid(); except ADOQueryBaseCmd.Connection.RollbackTrans; Application.MessageBox(pchar(Exception(ExceptObject).Message), 'ʾϢ', 0); @@ -959,12 +1482,51 @@ begin end; +procedure TfrmMachRollMain.TV1CellClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); +begin + + fzt := '0'; + + C_NAME.Text := CDS_4.FieldByName('c_name').AsString; + + ADO_PM.Locate('C_Name', C_NAME.Text, []); + + C_Code.Text := ADO_PM.FieldByName('C_Code').Value; + DUnit.TEXT := ADO_PM.FieldByName('TMSUnit').Value; + with ADO_YS do + begin + Close; + sql.Clear; + sql.Add(' SELECT DISTINCT A.C_Code,B.C_Color,B.C_ColorNo,B.referencePrice AS Price,DBO.GETNUM(B.C_ColorNo) FROM Bs_Cloth_Info A inner join BS_Cloth_Info_Sub B on A.BCIID=B.BCIID '); + sql.Add(' where A.C_Code= ' + QuotedStr(C_CODE.TEXT)); + SQL.ADD(' order by DBO.GETNUM(B.C_ColorNo)'); +// ShowMessage(sql.text); + Open; + + end; + C_CoLOR.Text := ''; + C_CoLORNO.Text := ''; + Panel3.Visible := false; + fzt := '1'; +end; + procedure TfrmMachRollMain.Tv3CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); begin if AViewInfo.GridRecord.Values[TcxGridDBTableView(Sender).GetColumnByFieldName('Grade').Index] = 'Ʒ' then ACanvas.Brush.Color := clRed; end; +procedure TfrmMachRollMain.TV5CellClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); +begin + FZT2 := '0'; + + C_COLOR.Text := CDS_5.FieldByName('C_COLOR').AsString; + C_COLORNO.Text := CDS_5.FieldByName('C_COLORNO').AsString; + + Panel5.Visible := false; + FZT2 := '1'; +end; + procedure TfrmMachRollMain.ToolButton8Click(Sender: TObject); begin inherited; @@ -1070,6 +1632,12 @@ begin end; +procedure TfrmMachRollMain.GroupBox1Click(Sender: TObject); +begin + PANEL3.Visible := FALSE; + PANEL5.Visible := FALSE; +end; + procedure TfrmMachRollMain.InitJYGrid(); var MNetWeight, MJYLen: double; @@ -1082,7 +1650,7 @@ begin begin Close; SQL.Clear; - SQL.Add('select A.*'); + SQL.Add('select A.*,tmmno=(select tmmno from Trade_Market_Main e where e.tmmid=a.tmmid)'); SQL.Add('from Bs_Cloth_IO A where IOType=''۳'' and TMSId=''' + trim(FTMSId) + ''''); SQL.Add('order by filltime desc'); Open; @@ -1094,7 +1662,19 @@ begin begin Close; SQL.Clear; - SQL.Add('select A.*'); + SQL.Add('select A.*,tmmno=(select tmmno from Trade_Market_Main e where e.tmmid=a.tmmid)'); + SQL.Add('from Bs_Cloth_IO A where IOflag='''' and STKID=''' + trim(FBCIOID) + ''''); + SQL.Add('order by filltime desc'); + Open; + end; + Qty.Text := trim(ADOQueryMain.fieldbyName('StkQty').AsString) + trim(trim(ADOQueryMain.fieldbyName('QtyUnit').AsString)); + +// InitPlan(FBCIOID); + with ADOQueryMain do + begin + Close; + SQL.Clear; + SQL.Add('select A.*,tmmno=(select tmmno from Trade_Market_Main e where e.tmmid=a.tmmid)'); SQL.Add('from Bs_Cloth_IO A where IOType=''۳'' and STKID=''' + trim(FBCIOID) + ''''); SQL.Add('order by filltime desc'); Open; @@ -1181,6 +1761,173 @@ begin end; end; +procedure TfrmMachRollMain.ColorNoClick(Sender: TObject); +var + i: Integer; +begin + with FrameKeyBoard1.dxPanel1 do + begin + for i := 0 to ControlCount - 1 do + begin + if Controls[i] is TSpeedButton then + begin + TSpeedButton(Controls[i]).Hint := trim('ColorNo'); + + end; + end; + end; + cxGroupBox_keys.Left := Panel_right.Left + 5; + cxGroupBox_keys.Visible := true; +end; + +procedure TfrmMachRollMain.cxTextEdit1Click(Sender: TObject); +begin + if Trim(cxTextEdit1.Text) = '' then + begin + cxTextEdit1.Text := ''; + + end + else + begin + cxTextEdit1.Text := ''; + + end; +end; + +procedure TfrmMachRollMain.C_COLORNOClick(Sender: TObject); +begin + if C_NAME.Text <> '' then + begin + FZT2 := '1'; + Panel5.Visible := true; + Panel3.Visible := false; + InitGridys(); + setFocusCtrol(TWinControl(Sender).Name); + end; + +end; + +procedure TfrmMachRollMain.c_colornoEnter(Sender: TObject); +var + i: Integer; +begin + with FrameKeyBoard1.dxPanel1 do + begin + for i := 0 to ControlCount - 1 do + begin + if Controls[i] is TSpeedButton then + begin + TSpeedButton(Controls[i]).Hint := trim('C_COLORNO'); + + end; + end; + end; + cxGroupBox_keys.Left := Panel_right.Left + 5; + cxGroupBox_keys.Visible := true; +end; + +procedure TfrmMachRollMain.c_colornoExit(Sender: TObject); +var + i: Integer; +begin + with FrameKeyBoard1.dxPanel1 do + begin + for i := 0 to ControlCount - 1 do + begin + if Controls[i] is TSpeedButton then + begin + TSpeedButton(Controls[i]).Hint := trim('C_NAME'); + + end; + end; + end; + cxGroupBox_keys.Left := Panel_right.Left + 5; + cxGroupBox_keys.Visible := true; +end; + +procedure TfrmMachRollMain.c_colornoPropertiesChange(Sender: TObject); +begin +// ADO_YS.Locate('C_ColorNo', C_ColorNo.Text, []); +// +// C_Color.Text := ADO_YS.FieldByName('C_Color').ASSTRING; +// + if FZT2 = '1' then + begin + Panel5.Visible := true; + InitGridYS(); + end; + +end; + +procedure TfrmMachRollMain.C_NAME2Click(Sender: TObject); +var + i: Integer; +begin + with FrameKeyBoard1.dxPanel1 do + begin + for i := 0 to ControlCount - 1 do + begin + if Controls[i] is TSpeedButton then + begin + TSpeedButton(Controls[i]).Hint := trim('C_NAME'); + + end; + end; + end; + cxGroupBox_keys.Left := Panel_right.Left + 5; + cxGroupBox_keys.Visible := true; +end; + +procedure TfrmMachRollMain.C_NAME2Enter(Sender: TObject); +var + i: Integer; +begin + with FrameKeyBoard1.dxPanel1 do + begin + for i := 0 to ControlCount - 1 do + begin + if Controls[i] is TSpeedButton then + begin + TSpeedButton(Controls[i]).Hint := trim('C_NAME'); + + end; + end; + end; + cxGroupBox_keys.Left := Panel_right.Left + 5; + cxGroupBox_keys.Visible := true; +end; + +procedure TfrmMachRollMain.C_NAMEClick(Sender: TObject); +begin + fzt := '1'; + Panel3.Visible := true; + PANEL5.Visible := FALSE; + InitGridCP(); + setFocusCtrol(TWinControl(Sender).Name); +end; + +procedure TfrmMachRollMain.C_NAMEExit(Sender: TObject); +begin + panel3.Visible := False; +end; + +procedure TfrmMachRollMain.C_NAMEPropertiesChange(Sender: TObject); +var + I: Integer; + S: string; +begin + + if fzt = '1' then + begin + C_CoLOR.Text := ''; + C_CoLORNO.Text := ''; + Panel3.Visible := true; + PANEL5.Visible := FALSE; + InitGridCP(); + end; + +end; + procedure TfrmMachRollMain.dxLayoutControl_packDblClick(Sender: TObject); begin if gIsCanDesign then @@ -1229,25 +1976,122 @@ end; procedure TfrmMachRollMain.edtScanEnter(Sender: TObject); begin inherited; + setFocusCtrol(TWinControl(Sender).Name); end; procedure TfrmMachRollMain.edtScanKeyPress(Sender: TObject; var Key: Char); +var + strKeyID: string; begin inherited; + if Key = #13 then begin - if trim(edtScan.Text) = '' then - exit; - if trim(edtScan.Text) = FBCIOID then - exit; - ClearGlobal(); + if panel4.Visible = true then + begin + if trim(edtScan.Text) = FBCIOID then + begin + Application.MessageBox('ԭ벻ٴɨ裡', 'ʾϢ', MB_ICONERROR); + edtScan.Text := ''; + exit; + end; + if cds_hp.Locate('BCIOID', edtScan.Text, []) then + begin + Application.MessageBox('ظɨ裡', 'ʾϢ', MB_ICONERROR); + edtScan.Text := ''; + exit; + // ҵ߼ + end; + + with ADOQueryBaseTemp do + begin + Close; + SQL.Clear; + SQL.Add('EXEC P_Trade_Insp_Get_plan @BCIOID=''' + trim(edtScan.Text) + ''''); + Open; + end; + if ADOQueryBaseTemp.IsEmpty = false then + begin + if ADOQueryBaseTemp.fieldbyname('C_NAME').AsString <> CodeName.Text then + begin + Application.MessageBox('Ʒһ£', 'ʾϢ', MB_ICONERROR); + edtScan.Text := ''; + exit; + end; + if ADOQueryBaseTemp.fieldbyname('C_COLOR').AsString <> FC_Color then + begin + Application.MessageBox('ɫһ£', 'ʾϢ', MB_ICONERROR); + edtScan.Text := ''; + exit; + end; + if ADOQueryBaseTemp.fieldbyname('C_COLORno').AsString <> FC_Colorno then + begin + Application.MessageBox('ɫŲһ£', 'ʾϢ', MB_ICONERROR); + edtScan.Text := ''; + exit; + end; + with CDS_HP do + begin + Append; + + CDS_HP.FieldByName('BCIOID').AsString := ADOQueryBaseTemp.FieldByName('BCIOID').AsString; + + CDS_HP.FieldByName('stkqty').VALUE := ADOQueryBaseTemp.FieldByName('stkqty').ASFLOAT; + + CDS_HP.FieldByName('qtyunit').VALUE := ADOQueryBaseTemp.FieldByName('qtyunit').AsString; + + Post; + end; + end; + edtScan.Text := ''; + edtScan.SetFocus(); + end + else + begin + if trim(edtScan.Text) = '' then + exit; + if trim(edtScan.Text) = FBCIOID then + exit; + + if checkbox1.Checked then + begin + if not cds_2.Locate('ssel', True, []) then + begin + Application.MessageBox('ѡݣ', 'ʾϢ', MB_OK); + Exit; + end; + + strKeyID := cds_2.FieldByName('TMMID').AsString; + + end; + ClearGlobal(); + + InitPlan(edtScan.Text); + InitGrid2(); + if trim(OrderNo.Text) <> '' then + InputLen.SetFocus; + cxGroupBox_keys.Visible := false; + if checkbox1.Checked then + begin + + Button1.Click(); + + if Trim(strKeyID) <> '' then + begin + cds_2.DisableControls; + try + cds_2.Locate('TMMID', strKeyID, []); + cds_2.Edit; + cds_2.FieldByName('ssel').AsBoolean := True; + cds_2.Post; + finally + cds_2.EnableControls; + end; + end; + end; + end; - InitPlan(edtScan.Text); - InitGrid2(); - if trim(OrderNo.Text) <> '' then - InputLen.SetFocus; - cxGroupBox_keys.Visible := false; end; end; @@ -1282,8 +2126,8 @@ begin ADOQueryBaseCmd.Connection.BeginTrans; MTare := strtofloatdef(trim(Tare.Text), 0); // Ƥ MInputWeight := RoundFloat(strtofloatdef(trim(InputWeight.Text), 0), cds_params.fieldbyName('KgPlace').AsInteger); // - MGrossWeight := MInputWeight + MTare + Maddwet + mpresentWeight; // ë - MNetWeight := MInputWeight + Maddwet + mpresentWeight; // + + MGrossWeight := MInputWeight + Maddwet + mpresentWeight; // ë + MNetWeight := MInputWeight + Maddwet + mpresentWeight - MTare; // + MInputLen := RoundFloat(strtofloatdef(trim(InputLen.Text), 0), 4); // +mAddLen @@ -1335,7 +2179,7 @@ begin Sql.Add(' ,@TMSId =' + quotedstr(MTMSId)); Sql.Add(' ,@Dcode=' + quotedstr(Trim(Dcode))); Sql.Add(' ,@DName=' + quotedstr(Trim(DName))); -// ShowMessage(sql.Text); + ShowMessage(sql.Text); open; end; end; @@ -1357,6 +2201,60 @@ begin end; end; +procedure TfrmMachRollMain.SCAN2KeyPress(Sender: TObject; var Key: Char); +begin + if Key = #13 then + begin + with ADOQueryBaseTemp do + begin + Close; + SQL.Clear; + SQL.Add('EXEC P_Trade_Insp_Get_plan @BCIOID=''' + trim(SCAN2.Text) + ''''); + Open; + end; + if ADOQueryBaseTemp.IsEmpty = false then + begin + if ADOQueryBaseTemp.fieldbyname('C_NAME').AsString <> CodeName.Text then + begin + Application.MessageBox('Ʒһ£', 'ʾϢ', MB_ICONERROR); + SCAN2.Text := ''; + exit; + end; + if ADOQueryBaseTemp.fieldbyname('C_COLOR').AsString <> FC_Color then + begin + Application.MessageBox('ɫһ£', 'ʾϢ', MB_ICONERROR); + SCAN2.Text := ''; + exit; + end; + if ADOQueryBaseTemp.fieldbyname('C_COLORno').AsString <> FC_Colorno then + begin + Application.MessageBox('ɫŲһ£', 'ʾϢ', MB_ICONERROR); + SCAN2.Text := ''; + exit; + end; + with CDS_HP do + begin + Append; + + CDS_HP.FieldByName('BCIOID').AsString := ADOQueryBaseTemp.FieldByName('BCIOID').AsString; + + CDS_HP.FieldByName('stkqty').VALUE := ADOQueryBaseTemp.FieldByName('stkqty').ASFLOAT; + + CDS_HP.FieldByName('qtyunit').VALUE := ADOQueryBaseTemp.FieldByName('qtyunit').AsString; + + Post; + end; + end; + SCAN2.Text := ''; + end; +end; + +procedure TfrmMachRollMain.Panel1Click(Sender: TObject); +begin + Panel3.Visible := false; + Panel5.Visible := false; +end; + procedure TfrmMachRollMain.PrtData(MCIID: string; againPring: Boolean = false); var fPrintFile: string; @@ -1409,6 +2307,58 @@ begin end; end; +procedure TfrmMachRollMain.PrtData2(MCIID: string; againPring: Boolean = false); +var + fPrintFile: string; + Txt, fImagePath, Txt2, fImagePath2: string; + Moudle: Thandle; + Makebar: TMakebar; + Mixtext: TMixtext; +begin + with ADOQueryPrint do + begin + Close; + SQL.Clear; + SQL.Add(' EXEC P_BS_Cloth_Prt2 '); + SQL.Add(' @Filtration=''' + trim(MCIID) + ''''); + Open; + end; + if ADOQueryPrint.IsEmpty then + begin + Application.MessageBox('ǩδҵ', 'ʾϢ', MB_ICONERROR); + exit; + end; + +// if trim(ADOQueryPrint.fieldbyName('SLabVolume').AsString) <> '' then +// fLabVolume := trim(ADOQueryPrint.fieldbyName('SLabVolume').AsString) +// else +// fLabVolume := trim(ADOQueryPrint.fieldbyName('LabVolume').AsString); +// if fLabVolume = '' then +// begin +// Application.MessageBox('δñǩ', 'ʾϢ', MB_ICONERROR); +// exit; +// end; +// +// ExportFtErpFile(fLabVolume + '.fr3', ADOQueryBaseTemp); +// fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\' + fLabVolume + '.fr3'; + ExportFtErpFile('ͻ˲ֱǩ.fr3', ADOQueryBaseTemp); + fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\ͻ˲ֱǩ.fr3'; + if FileExists(fPrintFile) then + begin + + frxReport1.LoadFromFile(fPrintFile); + frxReport1.PrintOptions.Copies := cds_params.fieldbyName('labNumber').AsInteger; + frxReport1.PrintOptions.ShowDialog := false; + frxReport1.PrepareReport(True); + frxReport1.Print(); + + end + else + begin + Application.MessageBox(PChar('ûҵ' + fPrintFile), 'ʾ', 0); + end; +end; + procedure TfrmMachRollMain.BadSpeedButtonClick(Sender: TObject); begin diff --git a/T03贸易布匹检验/U_ParamSet.dfm b/T03贸易布匹检验/U_ParamSet.dfm index 6c65393..860ed2e 100644 --- a/T03贸易布匹检验/U_ParamSet.dfm +++ b/T03贸易布匹检验/U_ParamSet.dfm @@ -21,15 +21,9 @@ object frmParamSet: TfrmParamSet object Label33: TLabel Left = 13 Top = 69 - Width = 60 - Height = 20 + Width = 64 + Height = 21 Caption = #37325#37327#20445#30041 - Font.Charset = GB2312_CHARSET - Font.Color = clBlack - Font.Height = -15 - Font.Name = #24494#36719#38597#40657 - Font.Style = [] - ParentFont = True end inline FrameParam1: TFrameParam Left = 0 @@ -37,57 +31,127 @@ object frmParamSet: TfrmParamSet Width = 775 Height = 519 Align = alTop - Font.Charset = ANSI_CHARSET - Font.Color = clWindowText - Font.Height = -19 - Font.Name = #24494#36719#38597#40657 - Font.Style = [] - ParentFont = True TabOrder = 0 ExplicitTop = 50 ExplicitWidth = 775 ExplicitHeight = 519 + inherited Label4: TLabel + Width = 64 + Height = 21 + ExplicitWidth = 64 + ExplicitHeight = 21 + end inherited pnlSet: TPanel Width = 775 Height = 519 ExplicitWidth = 775 ExplicitHeight = 519 inherited cxGroupBox1: TcxGroupBox - Style.Font.Charset = GB2312_CHARSET - Style.IsFontAssigned = True ExplicitTop = 2 ExplicitWidth = 771 Width = 771 + inherited Label16: TLabel + Width = 32 + Height = 21 + ExplicitWidth = 32 + ExplicitHeight = 21 + end + inherited Label7: TLabel + Width = 32 + Height = 21 + ExplicitWidth = 32 + ExplicitHeight = 21 + end + inherited Label35: TLabel + Width = 16 + Height = 21 + ExplicitWidth = 16 + ExplicitHeight = 21 + end inherited Label34: TLabel + Width = 32 + Height = 21 Visible = True + ExplicitWidth = 32 + ExplicitHeight = 21 + end + inherited Label26: TLabel + Width = 32 + Height = 21 + ExplicitWidth = 32 + ExplicitHeight = 21 + end + inherited Label6: TLabel + Width = 32 + Height = 21 + ExplicitWidth = 32 + ExplicitHeight = 21 + end + inherited Label8: TLabel + Width = 64 + Height = 21 + ExplicitWidth = 64 + ExplicitHeight = 21 + end + inherited Label10: TLabel + Width = 64 + Height = 21 + ExplicitWidth = 64 + ExplicitHeight = 21 end inherited edtMaBiao: TcxTextEdit - ExplicitHeight = 38 + ExplicitHeight = 29 end inherited edtMBDW: TcxTextEdit - ExplicitHeight = 38 + ExplicitHeight = 29 end inherited edtChen: TcxTextEdit - ExplicitHeight = 38 + ExplicitHeight = 29 end inherited outPage: TcxTextEdit - ExplicitHeight = 38 + ExplicitHeight = 29 + end + inherited labNumber: TComboBox + Height = 29 + ExplicitHeight = 29 end inherited AddwetPresent: TcxTextEdit - ExplicitHeight = 31 + ExplicitHeight = 29 end inherited AddLenPresent: TcxTextEdit - ExplicitHeight = 31 + ExplicitHeight = 29 end inherited presentNumFlag: TcxComboBox - ExplicitHeight = 31 + ExplicitHeight = 29 end end inherited cxGroupBox2: TcxGroupBox - Style.Font.Charset = GB2312_CHARSET - Style.IsFontAssigned = True ExplicitWidth = 771 Width = 771 + inherited Label9: TLabel + Width = 32 + Height = 21 + ExplicitWidth = 32 + ExplicitHeight = 21 + end + inherited Label15: TLabel + Width = 32 + Height = 21 + ExplicitWidth = 32 + ExplicitHeight = 21 + end + inherited Label1: TLabel + Width = 64 + Height = 21 + ExplicitWidth = 64 + ExplicitHeight = 21 + end + inherited Label2: TLabel + Width = 64 + Height = 21 + ExplicitWidth = 64 + ExplicitHeight = 21 + end inherited MinLen: TcxTextEdit Left = 53 Top = 27 @@ -95,39 +159,75 @@ object frmParamSet: TfrmParamSet Touch.TabletOptions = [] ExplicitLeft = 53 ExplicitTop = 27 - ExplicitHeight = 31 + ExplicitHeight = 29 end inherited MaxLen: TcxTextEdit - ExplicitHeight = 31 + ExplicitHeight = 29 end inherited MinWeight: TcxTextEdit - ExplicitHeight = 31 + ExplicitHeight = 29 end inherited MaxWeight: TcxTextEdit - ExplicitHeight = 31 + ExplicitHeight = 29 end inherited BeginPieceNo: TcxTextEdit Top = 64 Properties.OnChange = FrameParam1BeginPieceNoPropertiesChange ExplicitTop = 64 - ExplicitHeight = 31 + ExplicitHeight = 29 end inherited EndPieceNo: TcxTextEdit Properties.OnChange = FrameParam1EndPieceNoPropertiesChange - ExplicitHeight = 31 + ExplicitHeight = 29 end end inherited cxGroupBox3: TcxGroupBox ExplicitWidth = 771 Width = 771 + inherited Label19: TLabel + Width = 64 + Height = 21 + ExplicitWidth = 64 + ExplicitHeight = 21 + end + inherited Label20: TLabel + Width = 16 + Height = 21 + ExplicitWidth = 16 + ExplicitHeight = 21 + end + inherited Label21: TLabel + Width = 64 + Height = 21 + ExplicitWidth = 64 + ExplicitHeight = 21 + end + inherited Label3: TLabel + Width = 16 + Height = 21 + ExplicitWidth = 16 + ExplicitHeight = 21 + end + inherited Label30: TLabel + Width = 16 + Height = 21 + ExplicitWidth = 16 + ExplicitHeight = 21 + end + inherited Label33: TLabel + Width = 64 + Height = 21 + ExplicitWidth = 64 + ExplicitHeight = 21 + end inherited MPlace: TcxTextEdit - ExplicitHeight = 31 + ExplicitHeight = 29 end inherited YPlace: TcxTextEdit - ExplicitHeight = 31 + ExplicitHeight = 29 end inherited KgPlace: TcxTextEdit - ExplicitHeight = 31 + ExplicitHeight = 29 end end inherited cxGroupBox4: TcxGroupBox @@ -135,22 +235,48 @@ object frmParamSet: TfrmParamSet ExplicitHeight = 133 Height = 133 Width = 771 + inherited Label31: TLabel + Width = 64 + Height = 21 + ExplicitWidth = 64 + ExplicitHeight = 21 + end + inherited Label41: TLabel + Width = 32 + Height = 21 + ExplicitWidth = 32 + ExplicitHeight = 21 + end + inherited Label5: TLabel + Width = 64 + Height = 21 + ExplicitWidth = 64 + ExplicitHeight = 21 + end + inherited Label11: TLabel + Width = 80 + Height = 21 + ExplicitWidth = 80 + ExplicitHeight = 21 + end + inherited Label12: TLabel + Width = 80 + Height = 21 + ExplicitWidth = 80 + ExplicitHeight = 21 + end inherited edtdabao: TcxTextEdit - Style.Font.Height = -16 - Style.IsFontAssigned = True - ExplicitHeight = 34 + ExplicitHeight = 29 end inherited packRolls: TcxTextEdit - ExplicitHeight = 31 + ExplicitHeight = 29 end inherited rollnoMake: TcxComboBox Properties.DropDownListStyle = lsEditFixedList - Style.Font.Charset = GB2312_CHARSET - Style.IsFontAssigned = True - ExplicitHeight = 31 + ExplicitHeight = 29 end inherited packNoMake: TcxComboBox - ExplicitHeight = 31 + ExplicitHeight = 29 end inherited packPrintPreview: TCheckBox Top = 74 @@ -159,17 +285,15 @@ object frmParamSet: TfrmParamSet ExplicitWidth = 128 end inherited packlabNumber: TcxComboBox - Style.Font.Charset = GB2312_CHARSET - Style.IsFontAssigned = True - ExplicitHeight = 25 + ExplicitHeight = 29 end inherited packPrintAction: TcxComboBox - ExplicitHeight = 31 + ExplicitHeight = 29 end end end inherited weightRule: TcxComboBox - ExplicitHeight = 34 + ExplicitHeight = 29 end end object dxPanel1: TdxPanel @@ -186,12 +310,6 @@ object frmParamSet: TfrmParamSet Height = 38 Caption = #30830#23450 TabOrder = 0 - Font.Charset = ANSI_CHARSET - Font.Color = clWindowText - Font.Height = -16 - Font.Name = #24494#36719#38597#40657 - Font.Style = [fsBold] - ParentFont = True OnClick = cxButton1Click end object cxButton2: TcxButton @@ -201,12 +319,6 @@ object frmParamSet: TfrmParamSet Height = 38 Caption = #20851#38381 TabOrder = 1 - Font.Charset = ANSI_CHARSET - Font.Color = clWindowText - Font.Height = -16 - Font.Name = #24494#36719#38597#40657 - Font.Style = [fsBold] - ParentFont = True OnClick = cxButton2Click end end @@ -215,12 +327,10 @@ object frmParamSet: TfrmParamSet Top = 135 Width = 200 Height = 218 - Color = clBtnFace DrawingStyle = dsGradient GradientEnd = clSilver GradientStart = clGray Layout = 'NumPad' - ParentColor = True end object cds_params: TClientDataSet Aggregates = <> diff --git a/T03贸易布匹检验/U_ParamSet.pas b/T03贸易布匹检验/U_ParamSet.pas index b92a744..ba89244 100644 --- a/T03贸易布匹检验/U_ParamSet.pas +++ b/T03贸易布匹检验/U_ParamSet.pas @@ -8,7 +8,8 @@ uses Vcl.Controls, Vcl.Forms, Vcl.Dialogs, U_frameParam, cxGraphics, cxControls, cxLookAndFeels, cxLookAndFeelPainters, cxGeometry, dxFramedControl, Vcl.Menus, Vcl.StdCtrls, cxButtons, dxPanel, - Vcl.Touch.Keyboard, Vcl.ExtCtrls, Data.DB, Datasnap.DBClient; + Vcl.Touch.Keyboard, Vcl.ExtCtrls, Data.DB, Datasnap.DBClient, dxSkinsCore, + dxSkinsDefaultPainters; type TfrmParamSet = class(TForm) diff --git a/T03贸易布匹检验/U_frameParam.dfm b/T03贸易布匹检验/U_frameParam.dfm index 63cf163..52a8dd1 100644 --- a/T03贸易布匹检验/U_frameParam.dfm +++ b/T03贸易布匹检验/U_frameParam.dfm @@ -3,25 +3,13 @@ object FrameParam: TFrameParam Top = 0 Width = 666 Height = 509 - Font.Charset = ANSI_CHARSET - Font.Color = clWindowText - Font.Height = -13 - Font.Name = #24494#36719#38597#40657 - Font.Style = [] - ParentFont = True TabOrder = 0 object Label4: TLabel Left = 192 Top = 57 - Width = 76 - Height = 25 + Width = 48 + Height = 13 Caption = #21367#21495#29983#25104 - Font.Charset = ANSI_CHARSET - Font.Color = clBlack - Font.Height = -19 - Font.Name = #24494#36719#38597#40657 - Font.Style = [] - ParentFont = True end object pnlSet: TPanel Left = 0 @@ -31,14 +19,7 @@ object FrameParam: TFrameParam Align = alClient BevelInner = bvRaised BevelOuter = bvLowered - Color = clBtnFace - Font.Charset = GB2312_CHARSET - Font.Color = clWindowText - Font.Height = -16 - Font.Name = #24494#36719#38597#40657 - Font.Style = [] ParentBackground = False - ParentFont = True TabOrder = 0 ExplicitWidth = 605 object cxGroupBox1: TcxGroupBox @@ -46,133 +27,70 @@ object FrameParam: TFrameParam Top = 2 Align = alTop Caption = #35774#22791#35774#32622 - ParentFont = True - Style.Font.Charset = ANSI_CHARSET - Style.Font.Color = clWindowText - Style.Font.Height = -13 - Style.Font.Name = #24494#36719#38597#40657 - Style.Font.Style = [fsBold] - Style.IsFontAssigned = True TabOrder = 0 ExplicitTop = -4 - ExplicitWidth = 601 Height = 122 Width = 662 object Label16: TLabel Left = 10 Top = 28 - Width = 30 - Height = 20 + Width = 24 + Height = 13 Caption = #30721#34920 - Font.Charset = ANSI_CHARSET - Font.Color = clWindowText - Font.Height = -15 - Font.Name = #24494#36719#38597#40657 - Font.Style = [] - ParentFont = True end object Label7: TLabel Left = 106 Top = 29 - Width = 30 - Height = 20 + Width = 24 + Height = 13 Caption = #21333#20301 - Font.Charset = ANSI_CHARSET - Font.Color = clWindowText - Font.Height = -15 - Font.Name = #24494#36719#38597#40657 - Font.Style = [] - ParentFont = True end object Label35: TLabel Left = 32 Top = 71 - Width = 15 - Height = 20 + Width = 12 + Height = 13 Caption = #31204 - Font.Charset = ANSI_CHARSET - Font.Color = clWindowText - Font.Height = -15 - Font.Name = #24494#36719#38597#40657 - Font.Style = [] - ParentFont = True end object Label34: TLabel Left = 106 Top = 71 - Width = 30 - Height = 20 + Width = 24 + Height = 13 Caption = #31216#37325 - Font.Charset = ANSI_CHARSET - Font.Color = clWindowText - Font.Height = -15 - Font.Name = #24494#36719#38597#40657 - Font.Style = [] - ParentFont = True Visible = False end object Label26: TLabel Left = 262 Top = 68 - Width = 30 - Height = 20 + Width = 24 + Height = 13 Caption = #20986#32440 - Font.Charset = ANSI_CHARSET - Font.Color = clWindowText - Font.Height = -15 - Font.Name = #24494#36719#38597#40657 - Font.Style = [] - ParentFont = True end object Label6: TLabel Left = 350 Top = 65 - Width = 30 - Height = 20 + Width = 24 + Height = 13 Caption = #20221#25968 - Font.Charset = ANSI_CHARSET - Font.Color = clWindowText - Font.Height = -15 - Font.Name = #24494#36719#38597#40657 - Font.Style = [] - ParentFont = True end object Label8: TLabel Left = 260 Top = 28 - Width = 60 - Height = 20 + Width = 48 + Height = 13 Caption = #36192#36865#37325#37327 - Font.Charset = GB2312_CHARSET - Font.Color = clBlack - Font.Height = -15 - Font.Name = #24494#36719#38597#40657 - Font.Style = [] - ParentFont = True end object Label10: TLabel Left = 420 Top = 26 - Width = 60 - Height = 20 + Width = 48 + Height = 13 Caption = #36192#36865#38271#24230 - Font.Charset = GB2312_CHARSET - Font.Color = clBlack - Font.Height = -15 - Font.Name = #24494#36719#38597#40657 - Font.Style = [] - ParentFont = True end object edtMaBiao: TcxTextEdit Left = 59 Top = 24 - ParentFont = True - Style.Font.Charset = ANSI_CHARSET - Style.Font.Color = clWindowText - Style.Font.Height = -19 - Style.Font.Name = #24494#36719#38597#40657 - Style.Font.Style = [fsBold] - Style.IsFontAssigned = True TabOrder = 0 Text = #8730 OnClick = edtMaBiaoClick @@ -181,13 +99,6 @@ object FrameParam: TFrameParam object edtMBDW: TcxTextEdit Left = 154 Top = 24 - ParentFont = True - Style.Font.Charset = ANSI_CHARSET - Style.Font.Color = clWindowText - Style.Font.Height = -19 - Style.Font.Name = #24494#36719#38597#40657 - Style.Font.Style = [fsBold] - Style.IsFontAssigned = True TabOrder = 1 Text = #8730 OnClick = edtMaBiaoClick @@ -196,13 +107,6 @@ object FrameParam: TFrameParam object edtChen: TcxTextEdit Left = 59 Top = 65 - ParentFont = True - Style.Font.Charset = ANSI_CHARSET - Style.Font.Color = clWindowText - Style.Font.Height = -19 - Style.Font.Name = #24494#36719#38597#40657 - Style.Font.Style = [fsBold] - Style.IsFontAssigned = True TabOrder = 2 Text = #8730 OnClick = edtMaBiaoClick @@ -211,14 +115,7 @@ object FrameParam: TFrameParam object outPage: TcxTextEdit Left = 310 Top = 59 - ParentFont = True Properties.ReadOnly = True - Style.Font.Charset = ANSI_CHARSET - Style.Font.Color = clWindowText - Style.Font.Height = -19 - Style.Font.Name = #24494#36719#38597#40657 - Style.Font.Style = [fsBold] - Style.IsFontAssigned = True TabOrder = 3 Text = #8730 OnClick = edtMaBiaoClick @@ -228,15 +125,9 @@ object FrameParam: TFrameParam Left = 398 Top = 63 Width = 51 - Height = 28 + Height = 21 Style = csDropDownList - Font.Charset = ANSI_CHARSET - Font.Color = clWindowText - Font.Height = -20 - Font.Name = #23435#20307 - Font.Style = [fsBold] ItemIndex = 1 - ParentFont = True TabOrder = 4 Text = '2' Items.Strings = ( @@ -248,26 +139,12 @@ object FrameParam: TFrameParam object AddwetPresent: TcxTextEdit Left = 330 Top = 22 - ParentFont = True - Style.Font.Charset = ANSI_CHARSET - Style.Font.Color = clWindowText - Style.Font.Height = -15 - Style.Font.Name = #24494#36719#38597#40657 - Style.Font.Style = [fsBold] - Style.IsFontAssigned = True TabOrder = 5 Width = 74 end object AddLenPresent: TcxTextEdit Left = 486 Top = 24 - ParentFont = True - Style.Font.Charset = ANSI_CHARSET - Style.Font.Color = clWindowText - Style.Font.Height = -15 - Style.Font.Name = #24494#36719#38597#40657 - Style.Font.Style = [fsBold] - Style.IsFontAssigned = True TabOrder = 6 Width = 74 end @@ -289,79 +166,40 @@ object FrameParam: TFrameParam Top = 124 Align = alTop Caption = #21367#25968#25454#36755#20837#33539#22260#35774#32622 - ParentFont = True - Style.Font.Charset = ANSI_CHARSET - Style.Font.Color = clWindowText - Style.Font.Height = -13 - Style.Font.Name = #24494#36719#38597#40657 - Style.Font.Style = [fsBold] - Style.IsFontAssigned = True TabOrder = 1 - ExplicitWidth = 601 Height = 123 Width = 662 object Label9: TLabel Left = 10 Top = 28 - Width = 30 - Height = 20 + Width = 24 + Height = 13 Caption = #38271#24230 - Font.Charset = ANSI_CHARSET - Font.Color = clBlack - Font.Height = -15 - Font.Name = #24494#36719#38597#40657 - Font.Style = [] - ParentFont = True end object Label15: TLabel Left = 260 Top = 29 - Width = 30 - Height = 20 + Width = 24 + Height = 13 Caption = #37325#37327 - Font.Charset = ANSI_CHARSET - Font.Color = clBlack - Font.Height = -15 - Font.Name = #24494#36719#38597#40657 - Font.Style = [] - ParentFont = True end object Label1: TLabel Left = 10 Top = 70 - Width = 60 - Height = 20 + Width = 48 + Height = 13 Caption = #24320#22987#21367#21495 - Font.Charset = ANSI_CHARSET - Font.Color = clBlack - Font.Height = -15 - Font.Name = #24494#36719#38597#40657 - Font.Style = [] - ParentFont = True end object Label2: TLabel Left = 260 Top = 72 - Width = 60 - Height = 20 + Width = 48 + Height = 13 Caption = #25130#33267#21367#21495 - Font.Charset = ANSI_CHARSET - Font.Color = clBlack - Font.Height = -15 - Font.Name = #24494#36719#38597#40657 - Font.Style = [] - ParentFont = True end object MinLen: TcxTextEdit Left = 54 Top = 26 - ParentFont = True - Style.Font.Charset = ANSI_CHARSET - Style.Font.Color = clWindowText - Style.Font.Height = -15 - Style.Font.Name = #24494#36719#38597#40657 - Style.Font.Style = [fsBold] - Style.IsFontAssigned = True TabOrder = 0 Text = '0' Width = 63 @@ -369,13 +207,6 @@ object FrameParam: TFrameParam object MaxLen: TcxTextEdit Left = 123 Top = 26 - ParentFont = True - Style.Font.Charset = ANSI_CHARSET - Style.Font.Color = clWindowText - Style.Font.Height = -15 - Style.Font.Name = #24494#36719#38597#40657 - Style.Font.Style = [fsBold] - Style.IsFontAssigned = True TabOrder = 1 Text = '100' Width = 63 @@ -383,13 +214,6 @@ object FrameParam: TFrameParam object MinWeight: TcxTextEdit Left = 306 Top = 26 - ParentFont = True - Style.Font.Charset = ANSI_CHARSET - Style.Font.Color = clWindowText - Style.Font.Height = -15 - Style.Font.Name = #24494#36719#38597#40657 - Style.Font.Style = [fsBold] - Style.IsFontAssigned = True TabOrder = 2 Text = '0' Width = 63 @@ -397,13 +221,6 @@ object FrameParam: TFrameParam object MaxWeight: TcxTextEdit Left = 375 Top = 26 - ParentFont = True - Style.Font.Charset = ANSI_CHARSET - Style.Font.Color = clWindowText - Style.Font.Height = -15 - Style.Font.Name = #24494#36719#38597#40657 - Style.Font.Style = [fsBold] - Style.IsFontAssigned = True TabOrder = 3 Text = '100' Width = 74 @@ -411,26 +228,12 @@ object FrameParam: TFrameParam object BeginPieceNo: TcxTextEdit Left = 92 Top = 63 - ParentFont = True - Style.Font.Charset = ANSI_CHARSET - Style.Font.Color = clWindowText - Style.Font.Height = -15 - Style.Font.Name = #24494#36719#38597#40657 - Style.Font.Style = [fsBold] - Style.IsFontAssigned = True TabOrder = 4 Width = 94 end object EndPieceNo: TcxTextEdit Left = 375 Top = 63 - ParentFont = True - Style.Font.Charset = ANSI_CHARSET - Style.Font.Color = clWindowText - Style.Font.Height = -15 - Style.Font.Name = #24494#36719#38597#40657 - Style.Font.Style = [fsBold] - Style.IsFontAssigned = True TabOrder = 5 Width = 74 end @@ -440,105 +243,54 @@ object FrameParam: TFrameParam Top = 247 Align = alTop Caption = #23567#25968#20301#25968#35774#32622 - ParentFont = True - Style.Font.Charset = ANSI_CHARSET - Style.Font.Color = clWindowText - Style.Font.Height = -13 - Style.Font.Name = #24494#36719#38597#40657 - Style.Font.Style = [fsBold] - Style.IsFontAssigned = True TabOrder = 2 - ExplicitWidth = 601 Height = 132 Width = 662 object Label19: TLabel Left = 12 Top = 27 - Width = 60 - Height = 20 + Width = 48 + Height = 13 Caption = #31859#25968#20445#30041 - Font.Charset = ANSI_CHARSET - Font.Color = clWindowText - Font.Height = -15 - Font.Name = #24494#36719#38597#40657 - Font.Style = [] - ParentFont = True end object Label20: TLabel Left = 198 Top = 29 - Width = 15 - Height = 19 + Width = 12 + Height = 13 Caption = #20301 - Font.Charset = ANSI_CHARSET - Font.Color = clBlack - Font.Height = -15 - Font.Name = #24494#36719#38597#40657 - Font.Style = [fsBold] - ParentFont = True end object Label21: TLabel Left = 250 Top = 26 - Width = 60 - Height = 20 + Width = 48 + Height = 13 Caption = #30721#25968#20445#30041 - Font.Charset = GB2312_CHARSET - Font.Color = clBlack - Font.Height = -15 - Font.Name = #24494#36719#38597#40657 - Font.Style = [] - ParentFont = True end object Label3: TLabel Left = 198 Top = 71 - Width = 15 - Height = 19 + Width = 12 + Height = 13 Caption = #20301 - Font.Charset = ANSI_CHARSET - Font.Color = clBlack - Font.Height = -15 - Font.Name = #24494#36719#38597#40657 - Font.Style = [fsBold] - ParentFont = True end object Label30: TLabel Left = 428 Top = 27 - Width = 15 - Height = 19 + Width = 12 + Height = 13 Caption = #20301 - Font.Charset = ANSI_CHARSET - Font.Color = clBlack - Font.Height = -15 - Font.Name = #24494#36719#38597#40657 - Font.Style = [fsBold] - ParentFont = True end object Label33: TLabel Left = 12 Top = 69 - Width = 60 - Height = 20 + Width = 48 + Height = 13 Caption = #37325#37327#20445#30041 - Font.Charset = GB2312_CHARSET - Font.Color = clBlack - Font.Height = -15 - Font.Name = #24494#36719#38597#40657 - Font.Style = [] - ParentFont = True end object MPlace: TcxTextEdit Left = 95 Top = 23 - ParentFont = True - Style.Font.Charset = ANSI_CHARSET - Style.Font.Color = clWindowText - Style.Font.Height = -15 - Style.Font.Name = #24494#36719#38597#40657 - Style.Font.Style = [fsBold] - Style.IsFontAssigned = True TabOrder = 0 Text = '1' Width = 82 @@ -546,13 +298,6 @@ object FrameParam: TFrameParam object YPlace: TcxTextEdit Left = 340 Top = 24 - ParentFont = True - Style.Font.Charset = ANSI_CHARSET - Style.Font.Color = clWindowText - Style.Font.Height = -15 - Style.Font.Name = #24494#36719#38597#40657 - Style.Font.Style = [fsBold] - Style.IsFontAssigned = True TabOrder = 1 Text = '1' Width = 82 @@ -560,13 +305,6 @@ object FrameParam: TFrameParam object KgPlace: TcxTextEdit Left = 95 Top = 67 - ParentFont = True - Style.Font.Charset = ANSI_CHARSET - Style.Font.Color = clWindowText - Style.Font.Height = -15 - Style.Font.Name = #24494#36719#38597#40657 - Style.Font.Style = [fsBold] - Style.IsFontAssigned = True TabOrder = 2 Text = '1' Width = 82 @@ -577,93 +315,48 @@ object FrameParam: TFrameParam Top = 379 Align = alTop Caption = #20854#23427#20449#24687#35774#32622 - ParentFont = True - Style.Font.Charset = ANSI_CHARSET - Style.Font.Color = clWindowText - Style.Font.Height = -16 - Style.Font.Name = #24494#36719#38597#40657 - Style.Font.Style = [fsBold] - Style.IsFontAssigned = True TabOrder = 3 - ExplicitWidth = 601 Height = 122 Width = 662 object Label31: TLabel Left = 379 Top = 36 - Width = 60 - Height = 20 + Width = 48 + Height = 13 Caption = #21367#21495#35268#21017 - Font.Charset = GB2312_CHARSET - Font.Color = clWindowText - Font.Height = -15 - Font.Name = #24494#36719#38597#40657 - Font.Style = [] - ParentFont = True end object Label41: TLabel Left = 5 Top = 36 - Width = 30 - Height = 20 + Width = 24 + Height = 13 Caption = #25171#21253 - Font.Charset = GB2312_CHARSET - Font.Color = clWindowText - Font.Height = -15 - Font.Name = #24494#36719#38597#40657 - Font.Style = [] - ParentFont = True end object Label5: TLabel Left = 180 Top = 36 - Width = 60 - Height = 20 + Width = 48 + Height = 13 Caption = #21253#21495#35268#21017 - Font.Charset = GB2312_CHARSET - Font.Color = clWindowText - Font.Height = -15 - Font.Name = #24494#36719#38597#40657 - Font.Style = [] - ParentFont = True end object Label11: TLabel Left = 182 Top = 73 - Width = 75 - Height = 20 + Width = 60 + Height = 13 Caption = #21253#20986#32440#20221#25968 - Font.Charset = ANSI_CHARSET - Font.Color = clWindowText - Font.Height = -15 - Font.Name = #24494#36719#38597#40657 - Font.Style = [] - ParentFont = True end object Label12: TLabel Left = 383 Top = 73 - Width = 75 - Height = 20 + Width = 60 + Height = 13 Caption = #25552#20132#21253#35268#21017 - Font.Charset = ANSI_CHARSET - Font.Color = clWindowText - Font.Height = -15 - Font.Name = #24494#36719#38597#40657 - Font.Style = [] - ParentFont = True end object edtdabao: TcxTextEdit Left = 43 Top = 30 - ParentFont = True Properties.ReadOnly = True - Style.Font.Charset = ANSI_CHARSET - Style.Font.Color = clWindowText - Style.Font.Height = -15 - Style.Font.Name = #24494#36719#38597#40657 - Style.Font.Style = [fsBold] - Style.IsFontAssigned = True TabOrder = 0 OnClick = edtMaBiaoClick Width = 35 @@ -671,13 +364,6 @@ object FrameParam: TFrameParam object packRolls: TcxTextEdit Left = 82 Top = 30 - ParentFont = True - Style.Font.Charset = ANSI_CHARSET - Style.Font.Color = clWindowText - Style.Font.Height = -15 - Style.Font.Name = #24494#36719#38597#40657 - Style.Font.Style = [fsBold] - Style.IsFontAssigned = True TabOrder = 1 TextHint = #36755#20837#21253#21367#25968 Width = 91 @@ -685,17 +371,10 @@ object FrameParam: TFrameParam object rollnoMake: TcxComboBox Left = 461 Top = 31 - ParentFont = True Properties.DropDownListStyle = lsFixedList Properties.Items.Strings = ( #33258#21160 #25163#21160) - Style.Font.Charset = ANSI_CHARSET - Style.Font.Color = clWindowText - Style.Font.Height = -15 - Style.Font.Name = #24494#36719#38597#40657 - Style.Font.Style = [fsBold] - Style.IsFontAssigned = True TabOrder = 2 Text = #33258#21160 Width = 99 @@ -703,17 +382,10 @@ object FrameParam: TFrameParam object packNoMake: TcxComboBox Left = 264 Top = 31 - ParentFont = True Properties.DropDownListStyle = lsFixedList Properties.Items.Strings = ( #33258#21160 #25163#21160) - Style.Font.Charset = ANSI_CHARSET - Style.Font.Color = clWindowText - Style.Font.Height = -15 - Style.Font.Name = #24494#36719#38597#40657 - Style.Font.Style = [fsBold] - Style.IsFontAssigned = True TabOrder = 3 Text = #33258#21160 Width = 99 @@ -724,18 +396,11 @@ object FrameParam: TFrameParam Width = 97 Height = 17 Caption = #21253#26631#31614#39044#35272 - Font.Charset = ANSI_CHARSET - Font.Color = clWindowText - Font.Height = -16 - Font.Name = #24494#36719#38597#40657 - Font.Style = [] - ParentFont = True TabOrder = 4 end object packlabNumber: TcxComboBox Left = 263 Top = 66 - ParentFont = True Properties.DropDownListStyle = lsFixedList Properties.ImmediatePost = True Properties.Items.Strings = ( @@ -749,17 +414,10 @@ object FrameParam: TFrameParam object packPrintAction: TcxComboBox Left = 461 Top = 68 - ParentFont = True Properties.DropDownListStyle = lsFixedList Properties.Items.Strings = ( #33258#21160 #25163#21160) - Style.Font.Charset = ANSI_CHARSET - Style.Font.Color = clWindowText - Style.Font.Height = -15 - Style.Font.Name = #24494#36719#38597#40657 - Style.Font.Style = [fsBold] - Style.IsFontAssigned = True TabOrder = 6 Text = #33258#21160 Width = 99 @@ -769,17 +427,10 @@ object FrameParam: TFrameParam object weightRule: TcxComboBox Left = 156 Top = 82 - ParentFont = True Properties.DropDownListStyle = lsFixedList Properties.Items.Strings = ( #27611#37325 #20928#37325) - Style.Font.Charset = ANSI_CHARSET - Style.Font.Color = clWindowText - Style.Font.Height = -16 - Style.Font.Name = #24494#36719#38597#40657 - Style.Font.Style = [fsBold] - Style.IsFontAssigned = True TabOrder = 1 Text = #27611#37325 Width = 76 diff --git a/T03贸易布匹检验/U_frameParam.pas b/T03贸易布匹检验/U_frameParam.pas index 9a762a6..af6f8e8 100644 --- a/T03贸易布匹检验/U_frameParam.pas +++ b/T03贸易布匹检验/U_frameParam.pas @@ -7,7 +7,7 @@ uses Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, cxGraphics, cxControls, cxLookAndFeels, cxLookAndFeelPainters, cxContainer, cxEdit, cxGroupBox, Vcl.StdCtrls, cxTextEdit, Vcl.ExtCtrls, cxMaskEdit, - cxDropDownEdit; + cxDropDownEdit, dxSkinsCore, dxSkinsDefaultPainters; type TFrameParam = class(TFrame) diff --git a/T03贸易布匹检验/testDll.res b/T03贸易布匹检验/testDll.res index e116c48..2465ca0 100644 Binary files a/T03贸易布匹检验/testDll.res and b/T03贸易布匹检验/testDll.res differ diff --git a/T05贸易门市管理/TradeMarket.dpr b/T05贸易门市管理/TradeMarket.dpr index ce6e293..11ed686 100644 --- a/T05贸易门市管理/TradeMarket.dpr +++ b/T05贸易门市管理/TradeMarket.dpr @@ -37,13 +37,13 @@ uses U_FormDesign in '..\..\..\public10\design\U_FormDesign.pas', U_FormLayOutDesign in '..\..\..\public10\design\U_FormLayOutDesign.pas', U_printPdf in '..\..\..\public10\ThreeFun\Fun\U_printPdf.pas', - U_TradeMarketList_XY in 'U_TradeMarketList_XY.pas' {frmTradeMarketList_XY}, + U_TradeMarketList_XYTH in 'U_TradeMarketList_XYTH.pas' {frmTradeMarketList_XYth}, U_TradeDispatchedList in 'U_TradeDispatchedList.pas' {frmTradeDispatchedList}, U_TradeMarketDisSel in 'U_TradeMarketDisSel.pas' {frmTradeMarketDisSel}, U_ComContactSel in '..\A00ͨô\U_ComContactSel.pas' {frmComContactSel}, U_ProgressUpdate in '..\A00ͨ÷\U_ProgressUpdate.pas', U_RPFun in '..\..\..\public10\ThreeFun\Fun\U_RPFun.pas', - U_TradeMarketQtyInPut in 'U_TradeMarketQtyInPut.pas', + U_TradeMarketQtyTHInPut in 'U_TradeMarketQtyTHInPut.pas' {frmTradeMarketQtyTHnPut}, U_ItemizedListQtyInPut in '..\T02ó׻ֿܲ\U_ItemizedListQtyInPut.pas' {frmItemizedListQtyInPut}, U_UserSel in '..\A00ͨô\U_UserSel.pas' {frmUserSel}, U_LabelPrint2 in 'U_LabelPrint2.pas' {frmLabelPrint2}; diff --git a/T05贸易门市管理/TradeMarket.dproj b/T05贸易门市管理/TradeMarket.dproj index a9cc060..86af1cf 100644 --- a/T05贸易门市管理/TradeMarket.dproj +++ b/T05贸易门市管理/TradeMarket.dproj @@ -80,7 +80,7 @@ CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName) - E:\rtgit\trade\D10xhGemei\T05贸易门市管理\testDll.exe + D:\D10V1W\项目代码\D10xhGemei\T05贸易门市管理\testDll.exe @@ -172,8 +172,8 @@ - -
frmTradeMarketList_XY
+ +
frmTradeMarketList_XYth
dfm
@@ -190,7 +190,9 @@ - + +
frmTradeMarketQtyTHnPut
+
frmItemizedListQtyInPut
diff --git a/T05贸易门市管理/U_GetDllForm.pas b/T05贸易门市管理/U_GetDllForm.pas index ee7b02f..29d1d25 100644 --- a/T05贸易门市管理/U_GetDllForm.pas +++ b/T05贸易门市管理/U_GetDllForm.pas @@ -15,8 +15,9 @@ function GetsysParam(muserId: pchar; fparam1: pchar): Boolean; implementation uses - U_DataLink, U_iniParam, U_TradeMarketList, U_TradeDispatchedList,U_TradeSampletList, - U_TradeMarketList_JD, U_TradeMarketList_XY,U_TradeMarketList_JDT; + U_DataLink, U_iniParam, U_TradeMarketList, U_TradeDispatchedList, + U_TradeSampletList, U_TradeMarketList_JD, U_TradeMarketList_XY, + U_TradeMarketList_JDT, U_TradeJYXD, U_TradeMarketList_XYTH, U_TradeQDList; ///////////////////////////////////////////////////////////////// // ˵:ȡDllеô // @@ -75,11 +76,12 @@ begin user := 'rtsa'; pswd := 'rightsoft@5740'; DConString := 'Provider=SQLOLEDB.1;Password=' + pswd + ';Persist Security Info=True;User ID=' + user + ';Initial Catalog=' + dtbase + ';Data Source=' + server; -// DParameters1:='Ȩ'; Parameters1 := ''; + DParameters2 := ''; // Parameters1 := 'ѯ'; -// Parameters2 := '֯'; - Parameters4 := ''; +// Parameters1 := 'ѯ'; +// Parameters2 := ''; +// Parameters4 := ''; DCode := 'ADMIN'; DName := 'ADMIN'; end @@ -129,7 +131,30 @@ begin ///////////////////// //ģ鴰 case FormID of - + 1: //µб + begin + with TfrmTradeJYXD.Create(Application.MainForm, Title, trim(Parameters1), trim(Parameters2), trim(Parameters3), trim(Parameters4), trim(Parameters5), trim(Parameters10), FormID, Title) do // + begin + fFormID := FormID; + FOrdType := ''; + FormStyle := mstyle; + WindowState := mstate; + BorderStyle := mborderstyle; + mnewHandle := Handle; + end; + end; + 2: //Ƿб + begin + with tfrmTradeQDStkList.Create(Application.MainForm, Title, trim(Parameters1), trim(Parameters2), trim(Parameters3), trim(Parameters4), trim(Parameters5), trim(Parameters10), FormID, Title) do // + begin + fFormID := FormID; +// FOrdType := 'Ƿ'; + FormStyle := mstyle; + WindowState := mstate; + BorderStyle := mborderstyle; + mnewHandle := Handle; + end; + end; 111: // begin with TfrmTradeMarketList.Create(Application.MainForm, Title, trim(Parameters1), trim(Parameters2), trim(Parameters3), trim(Parameters4), trim(Parameters5), trim(Parameters10), FormID, Title) do // @@ -154,6 +179,19 @@ begin mnewHandle := Handle; end; end; + 212: //˻ + begin + with TfrmTradeMarketList_XYth.Create(Application.MainForm, Title, trim(Parameters1), trim(Parameters2), trim(Parameters3), trim(Parameters4), trim(Parameters5), trim(Parameters10), FormID, Title) do // + begin + fFormID := FormID; + FOrdType := '˻'; + FormStyle := mstyle; + WindowState := mstate; + BorderStyle := mborderstyle; + mnewHandle := Handle; + end; + end; + 112: // begin with TfrmTradeMarketList_JD.Create(Application.MainForm, Title, trim(Parameters1), trim(Parameters2), trim(Parameters3), trim(Parameters4), trim(Parameters5), trim(Parameters10), FormID, Title) do // @@ -180,7 +218,7 @@ begin end; 121: // begin - with TfrmTradeSampleList.Create(Application.MainForm, Title, trim(Parameters1), trim(Parameters2), trim(Parameters3), trim(Parameters4), trim(Parameters5), trim(Parameters10),formId,title) do // + with TfrmTradeSampleList.Create(Application.MainForm, Title, trim(Parameters1), trim(Parameters2), trim(Parameters3), trim(Parameters4), trim(Parameters5), trim(Parameters10), FormID, Title) do // begin fFormID := FormID; FOrdType := 'ŵ'; diff --git a/T05贸易门市管理/U_TradeJYXD.dfm b/T05贸易门市管理/U_TradeJYXD.dfm new file mode 100644 index 0000000..97c3325 --- /dev/null +++ b/T05贸易门市管理/U_TradeJYXD.dfm @@ -0,0 +1,456 @@ +inherited frmTradeJYXD: TfrmTradeJYXD + Left = 165 + Top = 13 + Caption = #38376#24215#21098#26679#19979#21333#21015#34920 + ClientHeight = 634 + ClientWidth = 1423 + Color = clBtnFace + Font.Height = -16 + FormStyle = fsMDIChild + Position = poScreenCenter + Visible = True + ExplicitWidth = 1439 + ExplicitHeight = 673 + PixelsPerInch = 96 + TextHeight = 21 + inherited loadProcess: TPanel + Left = 720 + Top = 354 + ExplicitLeft = 720 + ExplicitTop = 354 + end + inherited cxProgressBar2: TcxProgressBar + Left = 720 + Top = 296 + ExplicitLeft = 720 + ExplicitTop = 296 + ExplicitHeight = 29 + end + object Panel2: TPanel [2] + Left = 784 + Top = 0 + Width = 639 + Height = 634 + Align = alClient + TabOrder = 2 + object ToolBar2: TToolBar + Tag = 1 + Left = 1 + Top = 1 + Width = 637 + Height = 30 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 67 + Caption = 'ToolBar1' + Images = DataLink_TradeMarket.cxImageList_bar + List = True + ShowCaptions = True + TabOrder = 0 + object Label3: TLabel + Left = 0 + Top = 0 + Width = 57 + Height = 30 + Caption = #24050#25171#21360 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -19 + Font.Name = #24494#36719#38597#40657 + Font.Style = [] + ParentFont = False + end + object Label2: TLabel + Left = 57 + Top = 0 + Width = 6 + Height = 30 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -19 + Font.Name = #24494#36719#38597#40657 + Font.Style = [] + ParentFont = False + end + end + object cxGrid3: TcxGrid + Left = 1 + Top = 31 + Width = 637 + Height = 602 + Align = alClient + PopupMenu = PM_1 + TabOrder = 1 + ExplicitLeft = 5 + ExplicitTop = 37 + object Tv3: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + ScrollbarAnnotations.CustomAnnotations = <> + DataController.DataSource = DataSource2 + DataController.Filter.AutoDataSetFilter = True + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.CellHints = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.IndicatorWidth = 30 + object Tv3Column2: TcxGridDBColumn + Caption = #21333#25454#32534#21495 + DataBinding.FieldName = 'TMMNo' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 80 + end + object Tv3Column3: TcxGridDBColumn + Caption = #21046#21333#26085#26399 + DataBinding.FieldName = 'TMMDate' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxDateEditProperties' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object Tv3Column4: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustName' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 80 + end + object Tv3Column5: TcxGridDBColumn + Caption = #37197#36135#20154 + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 80 + end + object Tv3Column6: TcxGridDBColumn + Caption = #21046#21333#20154 + DataBinding.FieldName = 'FILLER' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 80 + end + object Tv3Column7: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'OrdNote' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 80 + end + end + object cxGridLevel2: TcxGridLevel + GridView = Tv3 + end + end + end + object Panel1: TPanel [3] + Left = 0 + Top = 0 + Width = 784 + Height = 634 + Align = alLeft + TabOrder = 3 + object ToolBar1: TToolBar + Tag = 1 + Left = 1 + Top = 1 + Width = 782 + Height = 30 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 67 + Caption = 'ToolBar1' + Images = DataLink_TradeMarket.cxImageList_bar + List = True + ShowCaptions = True + TabOrder = 0 + object Label1: TLabel + Left = 0 + Top = 0 + Width = 57 + Height = 30 + Caption = #24453#25171#21360 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -19 + Font.Name = #24494#36719#38597#40657 + Font.Style = [] + ParentFont = False + end + end + object cxGrid1: TcxGrid + Left = 1 + Top = 31 + Width = 782 + Height = 602 + Align = alClient + TabOrder = 1 + ExplicitLeft = -3 + ExplicitTop = 37 + object Tv1: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + ScrollbarAnnotations.CustomAnnotations = <> + DataController.DataSource = DataSource1 + DataController.Filter.AutoDataSetFilter = True + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.CellHints = True + OptionsCustomize.ColumnFiltering = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.IndicatorWidth = 30 + object Tv1Column7: TcxGridDBColumn + Caption = #21333#25454#32534#21495 + DataBinding.FieldName = 'TMMNo' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 77 + end + object v1OrdDate: TcxGridDBColumn + Caption = #21046#21333#26085#26399 + DataBinding.FieldName = 'TMMDate' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object Tv1Column4: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustName' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object Tv1Column8: TcxGridDBColumn + Caption = #37197#36135#20154 + DataBinding.FieldName = 'C_Code' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object Tv1Column6: TcxGridDBColumn + Caption = #21046#21333#20154 + DataBinding.FieldName = 'FILLER' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object Tv1Column1: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'OrdNote' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + end + inherited ADOQueryBaseCmd: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + Left = 255 + Top = 314 + end + inherited ADOQueryBaseTemp: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + Left = 37 + Top = 280 + end + object cxgrdpmn1: TcxGridPopupMenu + Grid = cxGrid3 + PopupMenus = <> + Left = 220 + Top = 284 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + Parameters = <> + Left = 568 + Top = 240 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 292 + Top = 128 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 320 + Top = 224 + end + object DataSource1: TDataSource + DataSet = CDS_1 + Left = 468 + Top = 112 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 156 + Top = 144 + end + object DataSource2: TDataSource + DataSet = CDS_2 + Left = 152 + Top = 476 + end + object ADOQueryImage: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + EnableBCD = False + Parameters = <> + Left = 316 + Top = 283 + end + object DSImage: TDataSource + DataSet = ADOQueryImage + Left = 256 + Top = 192 + end + object IdFTP1: TIdFTP + ConnectTimeout = 0 + NATKeepAlive.UseKeepAlive = False + NATKeepAlive.IdleTimeMS = 0 + NATKeepAlive.IntervalMS = 0 + ProxySettings.ProxyType = fpcmNone + ProxySettings.Port = 0 + ReadTimeout = 0 + Left = 36 + Top = 170 + end + object PopupMenu2: TPopupMenu + Left = 532 + Top = 636 + object N3: TMenuItem + Caption = #20840#36873 + end + object N4: TMenuItem + Caption = #20840#24323 + end + object N2: TMenuItem + Caption = #22797#21046 + end + end + object cxgrdpmn2: TcxGridPopupMenu + PopupMenus = <> + Left = 660 + Top = 636 + end + object CDS_WXTS: TClientDataSet + Aggregates = <> + Params = <> + Left = 252 + Top = 240 + end + object GPM_3: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 188 + Top = 237 + end + object CDS_1: TClientDataSet + Aggregates = <> + Params = <> + Left = 524 + Top = 96 + end + object DataSource3: TDataSource + DataSet = CDS_3 + Left = 932 + Top = 176 + end + object CDS_2: TClientDataSet + Aggregates = <> + Params = <> + Left = 228 + Top = 464 + end + object DataSource4: TDataSource + DataSet = CDS_4 + Left = 940 + Top = 472 + end + object CDS_4: TClientDataSet + Aggregates = <> + Params = <> + Left = 996 + Top = 464 + end + object CDS_3: TClientDataSet + Aggregates = <> + Params = <> + Left = 1012 + Top = 216 + end + object ADO_1: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 452 + Top = 176 + end + object ADO_2: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 308 + Top = 464 + end + object ADO_3: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 884 + Top = 120 + end + object ADO_4: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 860 + Top = 464 + end + object Timer1: TTimer + Interval = 3000 + OnTimer = Timer1Timer + Left = 649 + Top = 198 + end + object PM_1: TPopupMenu + Left = 893 + Top = 302 + object N1: TMenuItem + Caption = #37325#25171 + OnClick = N1Click + end + end +end diff --git a/T05贸易门市管理/U_TradeJYXD.pas b/T05贸易门市管理/U_TradeJYXD.pas new file mode 100644 index 0000000..84dc987 --- /dev/null +++ b/T05贸易门市管理/U_TradeJYXD.pas @@ -0,0 +1,232 @@ +unit U_TradeJYXD; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage, + cxEdit, DB, cxDBData, cxGridLevel, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxClasses, cxControls, cxGridCustomView, cxGrid, cxMemo, + cxRichEdit, ComCtrls, cxContainer, cxTextEdit, cxMaskEdit, cxButtonEdit, + StdCtrls, ToolWin, DBClient, ADODB, ExtCtrls, BtnEdit, cxCalendar, StrUtils, + cxCurrencyEdit, cxImage, cxDBEdit, Menus, RM_Common, RM_Class, RM_e_Xls, + RM_Dataset, RM_System, RM_GridReport, cxGridCustomPopupMenu, cxGridPopupMenu, + cxPC, cxSplitter, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, + IdFTP, ShellAPI, cxDropDownEdit, cxCheckBox, RM_e_Graphic, RM_e_Jpeg, + cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, dxBarBuiltInMenu, Math, + dxDateRanges, IdExplicitTLSClientServerBase, U_BaseList, Vcl.Clipbrd, + dxScrollbarAnnotations, cxProgressBar, FrameDateSel, dxSkinsCore, + dxSkinsDefaultPainters; + +type + TfrmTradeJYXD = class(TfrmBaseList) + cxgrdpmn1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Order_Main: TClientDataSet; + DataSource2: TDataSource; + ADOQueryImage: TADOQuery; + DSImage: TDataSource; + IdFTP1: TIdFTP; + PopupMenu2: TPopupMenu; + N3: TMenuItem; + N4: TMenuItem; + cxgrdpmn2: TcxGridPopupMenu; + CDS_WXTS: TClientDataSet; + N2: TMenuItem; + GPM_3: TcxGridPopupMenu; + Panel2: TPanel; + ToolBar2: TToolBar; + cxGrid3: TcxGrid; + Tv3: TcxGridDBTableView; + cxGridLevel2: TcxGridLevel; + CDS_1: TClientDataSet; + DataSource3: TDataSource; + CDS_2: TClientDataSet; + DataSource4: TDataSource; + CDS_4: TClientDataSet; + CDS_3: TClientDataSet; + Tv3Column2: TcxGridDBColumn; + Tv3Column3: TcxGridDBColumn; + Tv3Column4: TcxGridDBColumn; + Tv3Column5: TcxGridDBColumn; + Tv3Column6: TcxGridDBColumn; + Tv3Column7: TcxGridDBColumn; + ADO_1: TADOQuery; + ADO_2: TADOQuery; + ADO_3: TADOQuery; + ADO_4: TADOQuery; + Label2: TLabel; + Label3: TLabel; + Timer1: TTimer; + Panel1: TPanel; + ToolBar1: TToolBar; + Label1: TLabel; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + Tv1Column7: TcxGridDBColumn; + v1OrdDate: TcxGridDBColumn; + Tv1Column4: TcxGridDBColumn; + Tv1Column8: TcxGridDBColumn; + Tv1Column6: TcxGridDBColumn; + Tv1Column1: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + PM_1: TPopupMenu; + N1: TMenuItem; + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormShow(Sender: TObject); + procedure Timer1Timer(Sender: TObject); + procedure N1Click(Sender: TObject); + private + DQdate: TDateTime; + procedure InitGrid(); + procedure InitGrid1(); + procedure InitGrid2(); + procedure InitGrid3(); + procedure InitGrid4(); +// procedure InitForm(); + + { Private declarations } + public + canshu1, canshu2, canshu4, FOrdType: string; + + { Public declarations } + end; + +var + frmTradeJYXD: TfrmTradeJYXD; + +implementation + +uses + U_DataLink, U_RTFun, U_ZDYHelp, U_LabelPrint, U_AttachmentUpload, U_RPFun, + U_TradeMarketInPut; + +{$R *.dfm} + +procedure TfrmTradeJYXD.FormClose(Sender: TObject; var Action: TCloseAction); +begin + inherited; + inherited; + Action := caFree; +end; + +procedure TfrmTradeJYXD.FormShow(Sender: TObject); +begin + inherited; + InitGrid1(); + InitGrid2(); + + Timer1.Enabled := true; +// InitForm(); +end; + +procedure TfrmTradeJYXD.InitGrid(); +begin + InitGrid1(); + InitGrid2(); + InitGrid3(); + InitGrid4(); + +end; + +procedure TfrmTradeJYXD.InitGrid1(); +begin + with ADO_1 do + begin + Close; + sql.clear; + sql.add('select * from Trade_Market_MAIN A WHERE ISNULL(PrintStatus,0)=0 AND ORDTYPE=''ŵ'''); + + Open; + end; + SCreateCDS(ADO_1, CDS_1); + SInitCDSData(ADO_1, CDS_1); +end; + +procedure TfrmTradeJYXD.InitGrid2(); +begin + with ADO_2 do + begin + Close; + sql.clear; + sql.add('select TOP 100 * from Trade_Market_MAIN A WHERE ISNULL(PrintStatus,0)=1 AND ORDTYPE=''ŵ'''); + SQL.Add('ORDER BY FILLTIME DESC'); + Open; + end; + SCreateCDS(ADO_2, CDS_2); + SInitCDSData(ADO_2, CDS_2); +end; + +procedure TfrmTradeJYXD.InitGrid3(); +begin + +end; + +procedure TfrmTradeJYXD.InitGrid4(); +begin + +end; + +procedure TfrmTradeJYXD.N1Click(Sender: TObject); +var + i: integer; + MPCID: string; + MPrintJson: string; +begin + Timer1.Enabled := false; + + if CDS_2.IsEmpty = FALSE then + begin + + MPCID := trim(CDS_2.fieldbyname('tmmid').AsString); +// PrintCar(trim(CDS_2.fieldbyname('PCID').AsString)); + MPrintJson := '{ "LBName": "СƱ","IsPreview": false, "PrtArgs": [ {"SqlStr": "EXEC P_Market_prt @Filtration=' + QuotedStr(MPCID) + ' " }, {"SqlStr": "EXEC P_Market_prt @Filtration=' + QuotedStr(MPCID) + '" } ] }'; +// ShowMessage(MPrintJson); + FunPrintFR3(Application, PChar(DConString), PChar(MPrintJson)); + +// CDS_1.Delete; + Sleep(100); + end; + InitGrid2(); + Timer1.Enabled := true; + +end; + +procedure TfrmTradeJYXD.Timer1Timer(Sender: TObject); +var + i: integer; + MPCID: string; + MPrintJson: string; +begin + Timer1.Enabled := false; + InitGrid1(); + if CDS_1.IsEmpty = FALSE then + begin + + with CDS_1 do + begin + DisableControls; + First; + while not Eof do + begin + MPCID := trim(CDS_1.fieldbyname('tmmid').AsString); +// PrintCar(trim(CDS_2.fieldbyname('PCID').AsString)); + MPrintJson := '{ "LBName": "СƱ","IsPreview": false, "PrtArgs": [ {"SqlStr": "EXEC P_Market_prt @Filtration=' + QuotedStr(MPCID) + ' " }, {"SqlStr": "EXEC P_Market_prt @Filtration=' + QuotedStr(MPCID) + '" } ] }'; +// ShowMessage(MPrintJson); + FunPrintFR3(Application, PChar(DConString), PChar(MPrintJson)); + + CDS_1.Delete; + Sleep(100); + end; + EnableControls; + end; + end; + InitGrid2(); + Timer1.Enabled := true; +end; + +end. + diff --git a/T05贸易门市管理/U_TradeMarketInPut.dfm b/T05贸易门市管理/U_TradeMarketInPut.dfm index afe33e2..54e684f 100644 --- a/T05贸易门市管理/U_TradeMarketInPut.dfm +++ b/T05贸易门市管理/U_TradeMarketInPut.dfm @@ -2,15 +2,17 @@ inherited frmTradeMarketInPut: TfrmTradeMarketInPut Left = 143 Top = 4 Caption = #35746#21333#24405#20837 - ClientHeight = 736 + ClientHeight = 737 ClientWidth = 1540 Font.Charset = GB2312_CHARSET Font.Height = -16 Position = poMainFormCenter WindowState = wsMaximized OnClose = FormClose + ExplicitLeft = -161 + ExplicitTop = -52 ExplicitWidth = 1556 - ExplicitHeight = 775 + ExplicitHeight = 776 PixelsPerInch = 96 TextHeight = 21 object ToolBar1: TToolBar [0] @@ -121,7 +123,7 @@ inherited frmTradeMarketInPut: TfrmTradeMarketInPut Left = 0 Top = 223 Width = 1540 - Height = 513 + Height = 514 Align = alClient Caption = 'Panel2' TabOrder = 2 @@ -129,7 +131,7 @@ inherited frmTradeMarketInPut: TfrmTradeMarketInPut Left = 1 Top = 1 Width = 1252 - Height = 511 + Height = 512 Align = alClient Caption = 'Panel2' TabOrder = 0 @@ -137,11 +139,12 @@ inherited frmTradeMarketInPut: TfrmTradeMarketInPut Left = 1 Top = 1 Width = 1250 - Height = 509 + Height = 510 Align = alClient TabOrder = 0 object Tv1: TcxGridDBTableView OnDblClick = Tv1DblClick + OnKeyDown = Tv1KeyDown OnMouseDown = Tv1MouseDown Navigator.Buttons.CustomButtons = <> ScrollbarAnnotations.CustomAnnotations = <> @@ -222,6 +225,7 @@ inherited frmTradeMarketInPut: TfrmTradeMarketInPut DataBinding.FieldName = 'C_Name' DataBinding.IsNullValueType = True PropertiesClassName = 'TcxLookupComboBoxProperties' + Properties.IncrementalFilteringOptions = [ifoUseContainsOperator] Properties.KeyFieldNames = 'C_Name' Properties.ListColumns = < item @@ -255,6 +259,7 @@ inherited frmTradeMarketInPut: TfrmTradeMarketInPut DataBinding.FieldName = 'C_ColorNo' DataBinding.IsNullValueType = True PropertiesClassName = 'TcxLookupComboBoxProperties' + Properties.IncrementalFilteringOptions = [ifoUseContainsOperator] Properties.KeyFieldNames = 'C_ColorNo' Properties.ListColumns = < item @@ -268,6 +273,7 @@ inherited frmTradeMarketInPut: TfrmTradeMarketInPut FieldName = 'C_Color' end> Properties.ListSource = DS_YS + Properties.OnChange = Tv1Column12PropertiesChange Properties.OnEditValueChanged = Tv1Column12PropertiesEditValueChanged HeaderAlignmentHorz = taCenter Width = 168 @@ -334,6 +340,7 @@ inherited frmTradeMarketInPut: TfrmTradeMarketInPut DataBinding.FieldName = 'referencePrice' DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter + Options.Editing = False Width = 98 end object Tv1Column22: TcxGridDBColumn @@ -380,20 +387,8 @@ inherited frmTradeMarketInPut: TfrmTradeMarketInPut HeaderAlignmentHorz = taCenter Width = 77 end - object Tv1Column17: TcxGridDBColumn - Caption = #32039#24613#31243#24230 - DataBinding.FieldName = 'Urgent' - DataBinding.IsNullValueType = True - PropertiesClassName = 'TcxComboBoxProperties' - Properties.DropDownListStyle = lsEditFixedList - Properties.Items.Strings = ( - #27491#24120 - #32039#24613) - HeaderAlignmentHorz = taCenter - Width = 77 - end object Tv1Column2: TcxGridDBColumn - Caption = #22791#27880 + Caption = #26126#32454#22791#27880 DataBinding.FieldName = 'OrdSNote' DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter @@ -433,7 +428,7 @@ inherited frmTradeMarketInPut: TfrmTradeMarketInPut Left = 1253 Top = 1 Width = 286 - Height = 511 + Height = 512 Align = alRight Caption = 'Panel4' TabOrder = 1 @@ -471,7 +466,7 @@ inherited frmTradeMarketInPut: TfrmTradeMarketInPut Left = 1 Top = 42 Width = 284 - Height = 468 + Height = 469 Align = alClient Caption = #21452#20987#21024#38500#26126#32454#20449#24687 TabOrder = 1 @@ -479,7 +474,7 @@ inherited frmTradeMarketInPut: TfrmTradeMarketInPut Left = 2 Top = 23 Width = 280 - Height = 443 + Height = 444 Align = alClient TabOrder = 0 object TvMX: TcxGridDBTableView @@ -572,12 +567,12 @@ inherited frmTradeMarketInPut: TfrmTradeMarketInPut object Label1: TLabel Left = 656 Top = 64 - Width = 77 + Width = 64 Height = 21 - Caption = #22791' '#27880 + Caption = #35746#21333#22791#27880 end object Label2: TLabel - Left = 670 + Left = 656 Top = 21 Width = 64 Height = 21 @@ -613,7 +608,7 @@ inherited frmTradeMarketInPut: TfrmTradeMarketInPut Caption = #21457#36135#22320#22336 end object Label4: TLabel - Left = 352 + Left = 338 Top = 21 Width = 48 Height = 21 @@ -633,6 +628,20 @@ inherited frmTradeMarketInPut: TfrmTradeMarketInPut Height = 21 Caption = #19994' '#21153' '#21592':' end + object Label5: TLabel + Left = 338 + Top = 116 + Width = 32 + Height = 21 + Caption = #21306#22495 + end + object Label6: TLabel + Left = 1077 + Top = 103 + Width = 64 + Height = 21 + Caption = #32039#24613#31243#24230 + end object TMMNo: TcxTextEdit Tag = 2 Left = 754 @@ -789,6 +798,29 @@ inherited frmTradeMarketInPut: TfrmTradeMarketInPut Visible = False Width = 125 end + object AddressArea: TcxTextEdit + Tag = 2 + Left = 416 + Top = 110 + TabOrder = 12 + Width = 200 + end + object isUrgent: TComboBox + Tag = 2 + Left = 1164 + Top = 99 + Width = 200 + Height = 29 + Style = csDropDownList + Ctl3D = False + ItemIndex = 0 + ParentCtl3D = False + TabOrder = 13 + Text = #27491#24120 + Items.Strings = ( + #27491#24120 + #32039#24613) + end end inherited ADOQueryBaseCmd: TADOQuery Connection = DataLink_TradeMarket.ADOLink @@ -895,7 +927,7 @@ inherited frmTradeMarketInPut: TfrmTradeMarketInPut LockType = ltReadOnly Parameters = <> Left = 942 - Top = 281 + Top = 282 end object DS_YS: TDataSource DataSet = ADO_YS @@ -912,7 +944,7 @@ inherited frmTradeMarketInPut: TfrmTradeMarketInPut LockType = ltReadOnly Parameters = <> Left = 778 - Top = 281 + Top = 282 end object ADO_RCPM: TADOQuery Connection = DataLink_TradeMarket.ADOLink @@ -962,7 +994,7 @@ inherited frmTradeMarketInPut: TfrmTradeMarketInPut LockType = ltReadOnly Parameters = <> Left = 860 - Top = 219 + Top = 220 end object PopupMenu1: TPopupMenu Left = 49 diff --git a/T05贸易门市管理/U_TradeMarketInPut.pas b/T05贸易门市管理/U_TradeMarketInPut.pas index c6d62b1..2d1b82e 100644 --- a/T05贸易门市管理/U_TradeMarketInPut.pas +++ b/T05贸易门市管理/U_TradeMarketInPut.pas @@ -117,7 +117,6 @@ type ADO_KH: TADOQuery; Tv1Column15: TcxGridDBColumn; Tv1Column16: TcxGridDBColumn; - Tv1Column17: TcxGridDBColumn; Tv1Column18: TcxGridDBColumn; GPM_2: TcxGridPopupMenu; DS_DanWei: TDataSource; @@ -141,6 +140,10 @@ type lbl2: TLabel; Saleser: TcxButtonEdit; SalesId: TcxTextEdit; + Label5: TLabel; + AddressArea: TcxTextEdit; + Label6: TLabel; + isUrgent: TComboBox; procedure TBCloseClick(Sender: TObject); procedure FormShow(Sender: TObject); procedure TBSaveClick(Sender: TObject); @@ -189,6 +192,8 @@ type procedure TBEditClick(Sender: TObject); procedure SaleserPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure SaleserDblClick(Sender: TObject); + procedure Tv1Column12PropertiesChange(Sender: TObject); + procedure Tv1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); private FSCXDH: string; procedure InitData(); @@ -309,6 +314,13 @@ begin PState := 0; FTMMId := ''; FormShow(Self); + BuyOrdNo.Text := ''; + CONTACT.Text := ''; + Saleser.Text := ''; + ShippingAddress.Text := ''; + OrdNote.Text := ''; + AddressArea.Text := ''; + end; procedure TfrmTradeMarketInPut.TBCloseClick(Sender: TObject); @@ -356,9 +368,10 @@ begin SCSHData(ADOTemp, ScrollBox1, 9); SCSHData(ADOTemp, ScrollBox1, 7); OurCoName.Properties.LookupItems.Text := Trim(ADOTemp.FieldByName('OurCoNo').AsString); + CustName.Properties.OnChange := nil; CustName.Hint := Trim(ADOTemp.FieldByName('CustNo').AsString); CustName.Text := Trim(ADOTemp.FieldByName('CustName').AsString); - + CustName.Properties.OnChange := CustNamePropertiesChange; with ADO_1 do begin Close; @@ -410,6 +423,10 @@ begin FieldByName('TMSId').Value := ''; FieldByName('TMSPiece').Value := 0; FieldByName('TMSQty').Value := 0; + FieldByName('OrderQty').Value := 0; + FieldByName('OrderUnit').Value := NULL; + + // FieldByName('GangFee').Value := 0; // FieldByName('Transfee').Value := 0; // FieldByName('Otherfee').Value := 0; @@ -494,11 +511,11 @@ begin begin Close; sql.Clear; - sql.Add(' SELECT distinct A.C_Code,A.C_Name,A.qtyunit,A.HotQty,StkQty = SUM(B.StkQty) '); - SQL.ADD(' FROM Bs_Cloth_Info A LEFT JOIN Bs_Cloth_Io B on A.C_Code=B.C_Code'); - sql.add(' where B.ioflag='''' '); - if Trim(canshu4) = '' then - sql.Add(' and isnull(STKNAME,'''')='''' '); + sql.Add(' SELECT distinct A.C_Code,A.C_Name,A.qtyunit,A.HotQty,StkQty =(select sum(stkqty) from Bs_Cloth_Io B where A.C_Code=B.C_Code ) '); + SQL.ADD(' FROM Bs_Cloth_Info A '); + sql.add(' where 1=1 '); +// if Trim(canshu4) = '' then +// sql.Add(' and isnull(STKNAME,'''')='''' '); SQL.add('group by A.C_Code,A.C_Name,A.qtyunit,A.HotQty'); SQL.ADD('order by A.C_Code '); // showmessage(SQL.text); @@ -561,6 +578,7 @@ end; function TfrmTradeMarketInPut.SaveData(): Boolean; var maxno, Smaxno, maxTMMNo, MaxFNo, MQZ, MTMMNo: string; + RetryCount: Integer; begin try ADOCmd.Connection.BeginTrans; @@ -575,8 +593,48 @@ begin // G50313001<-- G50313 001 //(G+ 25ġ5(ÿһǰ 0-9ѭ)+0313()+001(,ᳬ999)) - MQZ := 'G' + RightStr(Trim(FormatDateTime('yyMMdd', SGetServerDate(ADOTemp))), 5); - if GetLSNo(ADOCmd, MTMMNo, MQZ, 'Trade_Market_Main', 3, 0) = False then +// RetryCount := 0; +// +// // ѭȡţֱظΪֹ +// while True do +// begin +// // 1. ȡˮ +// MQZ := 'G' + RightStr(Trim(FormatDateTime('yyMMdd', SGetServerDate(ADOTemp))), 6); +// if not GetLSNo(ADOCmd, MTMMNo, MQZ, 'Trade_Market_Main', 3, 0) then +// raise Exception.Create('ȡʧ!'); +// +// // 2. ѯǷѴ +// with ADOCmd do +// begin +// Close; +// SQL.Clear; +// SQL.Add('select count(*) from Trade_Market_Main where TMMNo=:TMMNo'); +// Parameters.ParamByName('TMMNo').Value := Trim(MTMMNo); +// Open; +// +// // > 0 ʾѴ +// if Fields[0].AsInteger > 0 then +// begin +// Close; +// +// // ѭ10 +// Inc(RetryCount); +// if RetryCount > 10 then +// raise Exception.Create('Զȡ10ξظˮŹ'); +// +// Continue; // ظ »صѭͷȡһ +// end; +// +// Close; +// end; +// +// // 3. ظ ˳ѭ +// Break; +// end; + + // 4. հѲظĵŸֵ + + if not GetLSNo(ADOCmd, MTMMNo, 'G', 'Trade_Market_Main', 3, 1) then raise Exception.Create('ȡʧ!'); TMMNo.Text := MTMMNo; @@ -670,21 +728,22 @@ begin Close; sql.Clear; sql.Add('select * from Trade_Market_Main where TMMNo=''' + Trim(TMMNo.Text) + ''''); + Open; end; if ADOCmd.RecordCount > 1 then raise Exception.Create('ظ!'); - with ADOCmd do - begin - Close; - sql.Clear; - sql.Add('select C_Code,C_Color,C_ColorNo,CF=count(TMSID) from Trade_Market_sub where TMMID=''' + Trim(maxno) + ''''); - sql.Add('group by C_Code,C_Color,C_ColorNo HAVING count(TMSID)>1 '); - Open; - end; - if not ADOCmd.IsEmpty then - raise Exception.Create('ɫظ!'); +// with ADOCmd do +// begin +// Close; +// sql.Clear; +// sql.Add('select C_Code,C_Color,C_ColorNo,CF=count(TMSID) from Trade_Market_sub where TMMID=''' + Trim(maxno) + ''''); +// sql.Add('group by C_Code,C_Color,C_ColorNo HAVING count(TMSID)>1 '); +// Open; +// end; +// if not ADOCmd.IsEmpty then +// raise Exception.Create('ɫظ!'); FTMMID := Trim(maxno); ADOCmd.Connection.CommitTrans; @@ -767,11 +826,14 @@ begin Application.MessageBox('ϸΪ!', 'ʾ', 0); Exit; end; - - if CDS_1.Locate('TMSUnit', null, []) then + if fordtype <> 'ŵ' then begin - Application.MessageBox('λΪ!', 'ʾ', 0); - Exit; + if CDS_1.Locate('TMSUnit', null, []) then + begin + Application.MessageBox('λΪ!', 'ʾ', 0); + Exit; + end; + end; if CDS_1.Locate('TMSQty', null, []) then @@ -814,8 +876,8 @@ begin begin Application.MessageBox('ɹ', 'ʾ', 0); - if btnFlag = 4 then //ӡ˳ - ModalResult := 1; +// if btnFlag = 4 then //ӡ˳ + ModalResult := 1; end; end; @@ -1089,29 +1151,33 @@ begin // begin // self.CustName.Hint := Trim(CDS_KH.fieldbyname('CoCode').AsString); // end; - with ADO_KH do + if CustName.Text <> '' then begin - close; - sql.Clear; - sql.Add(' select CoCode,CoName from BS_Company where CoType=''ͻ'' '); - - if Trim(canshu4) = '' then - sql.Add(' and Stores='''' '); - - sql.Add(' and CoName like ''%' + Trim(CustName.Text) + '%'''); - Open; - - CustName.Properties.LookupItems.Clear; - while not Eof do + with ADO_KH do begin - CustName.Properties.LookupItems.Add(Trim(ADO_KH.fieldByName('CoName').AsString)); - Next; - end; + close; + sql.Clear; + sql.Add(' select CoCode,CoName from BS_Company where CoType=''ͻ'' '); + + if Trim(canshu4) = '' then + sql.Add(' and Stores='''' '); + + sql.Add(' and CoName like ''%' + Trim(CustName.Text) + '%'''); + Open; + + CustName.Properties.LookupItems.Clear; + while not Eof do + begin + CustName.Properties.LookupItems.Add(Trim(ADO_KH.fieldByName('CoName').AsString)); + Next; + end; // CustName.ItemIndex := -1; - SCreateCDS(ADO_KH, CDS_KH); - SInitCDSData(ADO_KH, CDS_KH); + SCreateCDS(ADO_KH, CDS_KH); + SInitCDSData(ADO_KH, CDS_KH); + end; end; + end; procedure TfrmTradeMarketInPut.CustNamePropertiesCloseUp(Sender: TObject); @@ -1139,7 +1205,9 @@ begin end; self.ShippingAddress.Text := Trim(adotemp.fieldbyname('mxaddress').AsString); self.CONTACT.Text := Trim(adotemp.fieldbyname('Telephone').AsString); - + self.AddressArea.Text := Trim(adotemp.fieldbyname('MXAREA').AsString); + Saleser.Text := Trim(adotemp.fieldbyname('Saleser').AsString); + CustName.HINT := Trim(adotemp.fieldbyname('cocode').AsString); end; procedure TfrmTradeMarketInPut.cxDBImage1DblClick(Sender: TObject); @@ -1387,6 +1455,9 @@ begin begin self.ShippingAddress.Text := Trim(frmComContactSel.CDS_1.fieldbyname('mxaddress').AsString); self.CONTACT.Text := Trim(frmComContactSel.CDS_1.fieldbyname('PhoneNumber').AsString); + + self.AddressArea.Text := Trim(frmComContactSel.CDS_1.fieldbyname('MXAREA').AsString); + end; end; finally @@ -1408,7 +1479,8 @@ begin self.CustName.Text := Trim(frmCompanySel.CDS_1.fieldbyname('CoName').AsString); self.ShippingAddress.Text := Trim(frmCompanySel.CDS_1.fieldbyname('mxaddress').AsString); self.CONTACT.Text := Trim(frmCompanySel.CDS_1.fieldbyname('Telephone').AsString); - + self.AddressArea.Text := Trim(frmCompanySel.CDS_1.fieldbyname('MXAREA').AsString); + Saleser.Text := Trim(frmCompanySel.CDS_1.fieldbyname('Saleser').AsString); end; end; @@ -1561,6 +1633,40 @@ begin end; end; +procedure TfrmTradeMarketInPut.Tv1Column12PropertiesChange(Sender: TObject); +var + sInput: string; + ACombo: TcxLookupComboBox; +begin + inherited; + ACombo := TcxLookupComboBox(Sender); + sInput := Trim(ACombo.Text); // ȡ + if CDS_1.FieldByName('C_CODE').AsString = '' then + EXIT; + + with ADO_YS do + begin + Close; + sql.Clear; + sql.Add(' SELECT * '); + sql.Add(' FROM V_COLOR_VIEW A WHERE 1=1 and C_CODE= ' + QuotedStr(CDS_1.FieldByName('C_CODE').AsString)); + + if sInput <> '' then + begin + sql.Add(Format(' AND A.C_ColorNo LIKE ''%%%s%%'' ', [sInput])); + // ? ؼDISTINCT ¾ԲֻŲѯֵֶΣ + sql.Add(Format(' ORDER BY CASE WHEN A.C_ColorNo = ''%s'' THEN 0 ELSE 1 END, A.C_ColorNo ', [sInput])); + + end + else + begin +// sql.Add(' AND C_CODE= ' + QuotedStr(CDS_1.FieldByName('C_CODE').AsString)); + end; +// ShowMessage(SQL.Text); + Open; + end; +end; + procedure TfrmTradeMarketInPut.Tv1Column12PropertiesEditValueChanged(Sender: TObject); var mvalue, FFieldName: string; @@ -1699,7 +1805,16 @@ begin Post; end; - + with ADO_YS do + begin + Close; + sql.Clear; + sql.Add(' SELECT DISTINCT A.C_Code,B.C_Color,B.C_ColorNo,B.referencePrice AS Price FROM Bs_Cloth_Info A inner join BS_Cloth_Info_Sub B on A.BCIID=B.BCIID '); + sql.Add(' where A.C_Code= ' + QuotedStr(CDS_1.FieldByName('C_Code').AsString)); + SQL.ADD(' order by B.C_ColorNo'); + //ShowMessage(sql.text); + Open; + end; // with ADOTemp do // begin // close; @@ -1753,6 +1868,15 @@ begin InitMXGrid(MTMSId); end; +procedure TfrmTradeMarketInPut.Tv1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); +begin + if Key = VK_DOWN then + begin + ToolButton1.Click(); + + end; +end; + procedure TfrmTradeMarketInPut.Tv1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin diff --git a/T05贸易门市管理/U_TradeMarketInPut_XY.dfm b/T05贸易门市管理/U_TradeMarketInPut_XY.dfm index 33fb571..2f69e0a 100644 --- a/T05贸易门市管理/U_TradeMarketInPut_XY.dfm +++ b/T05贸易门市管理/U_TradeMarketInPut_XY.dfm @@ -9,6 +9,7 @@ inherited frmTradeMarketInPut_XY: TfrmTradeMarketInPut_XY Position = poMainFormCenter WindowState = wsMaximized OnClose = FormClose + ExplicitLeft = -359 ExplicitWidth = 1556 ExplicitHeight = 775 PixelsPerInch = 96 @@ -140,6 +141,8 @@ inherited frmTradeMarketInPut_XY: TfrmTradeMarketInPut_XY Height = 509 Align = alClient TabOrder = 0 + ExplicitLeft = -1 + ExplicitTop = 5 object Tv1: TcxGridDBTableView OnDblClick = Tv1DblClick OnMouseDown = Tv1MouseDown @@ -255,6 +258,7 @@ inherited frmTradeMarketInPut_XY: TfrmTradeMarketInPut_XY DataBinding.FieldName = 'C_ColorNo' DataBinding.IsNullValueType = True PropertiesClassName = 'TcxLookupComboBoxProperties' + Properties.IncrementalFilteringOptions = [ifoUseContainsOperator] Properties.KeyFieldNames = 'C_ColorNo' Properties.ListColumns = < item @@ -268,6 +272,7 @@ inherited frmTradeMarketInPut_XY: TfrmTradeMarketInPut_XY FieldName = 'C_Color' end> Properties.ListSource = DS_YS + Properties.OnChange = Tv1Column12PropertiesChange Properties.OnEditValueChanged = Tv1Column12PropertiesEditValueChanged HeaderAlignmentHorz = taCenter Width = 168 @@ -628,10 +633,17 @@ inherited frmTradeMarketInPut_XY: TfrmTradeMarketInPut_XY end object Label19: TLabel Left = 1077 - Top = 68 - Width = 80 + Top = 74 + Width = 64 Height = 21 - Caption = #32852#31995#26041#24335#65306 + Caption = #32852#31995#26041#24335 + end + object Label5: TLabel + Left = 1109 + Top = 126 + Width = 32 + Height = 21 + Caption = #21306#22495 end object TMMNo: TcxTextEdit Tag = 2 @@ -644,7 +656,7 @@ inherited frmTradeMarketInPut_XY: TfrmTradeMarketInPut_XY object TMMDate: TDateTimePicker Tag = 2 Left = 814 - Top = 66 + Top = 65 Width = 200 Height = 29 BevelInner = bvNone @@ -752,7 +764,7 @@ inherited frmTradeMarketInPut_XY: TfrmTradeMarketInPut_XY object CONTACT: TcxButtonEdit Tag = 2 Left = 1164 - Top = 63 + Top = 68 Hint = 'CONTACT/'#32852#31995#26041#24335 Properties.Buttons = < item @@ -765,6 +777,13 @@ inherited frmTradeMarketInPut_XY: TfrmTradeMarketInPut_XY OnDblClick = OurCoNameDblClick Width = 200 end + object AddressArea: TcxTextEdit + Tag = 2 + Left = 1164 + Top = 120 + TabOrder = 10 + Width = 200 + end end inherited ADOQueryBaseCmd: TADOQuery Left = 860 @@ -788,8 +807,8 @@ inherited frmTradeMarketInPut_XY: TfrmTradeMarketInPut_XY Connection = DataLink_TradeMarket.ADOLink LockType = ltReadOnly Parameters = <> - Left = 1106 - Top = 157 + Left = 1177 + Top = 263 end object ADOCmd: TADOQuery Connection = DataLink_TradeMarket.ADOLink @@ -823,8 +842,8 @@ inherited frmTradeMarketInPut_XY: TfrmTradeMarketInPut_XY object ADO_I1: TADOQuery Connection = DataLink_TradeMarket.ADOLink Parameters = <> - Left = 942 - Top = 219 + Left = 949 + Top = 497 end object DS_I1: TDataSource DataSet = ADO_I1 @@ -845,8 +864,8 @@ inherited frmTradeMarketInPut_XY: TfrmTradeMarketInPut_XY object ADO_I2: TADOQuery Connection = DataLink_TradeMarket.ADOLink Parameters = <> - Left = 1024 - Top = 219 + Left = 1029 + Top = 518 end object DS_I2: TDataSource DataSet = ADO_I2 @@ -904,8 +923,8 @@ inherited frmTradeMarketInPut_XY: TfrmTradeMarketInPut_XY Connection = DataLink_TradeMarket.ADOLink LockType = ltReadOnly Parameters = <> - Left = 778 - Top = 219 + Left = 777 + Top = 496 end object CDS_KH: TClientDataSet Aggregates = <> @@ -935,8 +954,8 @@ inherited frmTradeMarketInPut_XY: TfrmTradeMarketInPut_XY Connection = DataLink_TradeMarket.ADOLink LockType = ltReadOnly Parameters = <> - Left = 860 - Top = 219 + Left = 862 + Top = 519 end object PopupMenu1: TPopupMenu Left = 49 diff --git a/T05贸易门市管理/U_TradeMarketInPut_XY.pas b/T05贸易门市管理/U_TradeMarketInPut_XY.pas index cff3426..a69a6f5 100644 --- a/T05贸易门市管理/U_TradeMarketInPut_XY.pas +++ b/T05贸易门市管理/U_TradeMarketInPut_XY.pas @@ -1,4 +1,4 @@ -unit U_TradeMarketInPut_XY; +unit U_TradeMarketInPut_XY; interface @@ -140,6 +140,8 @@ type TBEdit: TToolButton; Tv1Column23: TcxGridDBColumn; ADOConnection1: TADOConnection; + Label5: TLabel; + AddressArea: TcxTextEdit; procedure TBCloseClick(Sender: TObject); procedure FormShow(Sender: TObject); procedure TBSaveClick(Sender: TObject); @@ -186,6 +188,7 @@ type procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); procedure TBAddClick(Sender: TObject); procedure TBEditClick(Sender: TObject); + procedure Tv1Column12PropertiesChange(Sender: TObject); private FSCXDH: string; procedure InitData(); @@ -237,7 +240,7 @@ begin if GetLSNo(ADOTemp, maxno, 'JS', 'Trade_Market_Sub', 4, 1) = False then begin - Application.MessageBox('ȡˮʧܣ', 'ʾ', 0); + Application.MessageBox('取子流水号失败!', '提示', 0); Exit; end; with cds_1 do @@ -297,7 +300,7 @@ procedure TfrmTradeMarketInPut_XY.TBAddClick(Sender: TObject); begin { CDS_1.Close; InitData(); - SClearData(ScrollBox1, 2); //пؼ + SClearData(ScrollBox1, 2); //清空容器中控件的内容 CustName.Text := ''; if CDS_1.IsEmpty then begin @@ -360,8 +363,9 @@ begin begin Close; SQL.Clear; - sql.Add('select A.*,StkQty =(select sum(isnull(X.StkQty,0)) from Bs_Cloth_IO X where X.C_Code=A.C_Code and X.C_Color=A.C_Color) '); - sql.Add(',SubOutQty =(select sum(isnull(X.Qty,0)) from Trade_Market_Sub_Qty X where X.TMSID=A.TMSID ) '); + sql.Add('select A.*,StkQty =(select sum(isnull(X.StkQty,0)) from Bs_Cloth_IO X where X.C_Code=A.C_Code and X.C_Color=A.C_Color AND STKNAME=''新余'') '); + SQL.Add(' -ISNULL((select sum(isnull(X.Qty,0)) from Trade_Market_Sub_Qty X INNER JOIN Trade_Market_Sub F ON X.TMSID=F.TMSID INNER JOIN Trade_Market_Main E ON E.TMMID=F.TMMID '); + sql.Add('where Store=''新余'' and E.Status =''10'' AND F.C_Code=A.C_Code and F.C_Color=A.C_Color),0),SubOutQty =(select sum(isnull(X.Qty,0)) from Trade_Market_Sub_Qty X where X.TMSID=A.TMSID ) '); sql.Add(',SubOutPS =(select count(isnull(X.TMSQID,0)) from Trade_Market_Sub_Qty X where X.TMSID=A.TMSID ) '); sql.Add('from Trade_Market_Sub A '); SQL.adD('where 1=1 '); @@ -436,7 +440,7 @@ procedure TfrmTradeMarketInPut_XY.FormCreate(Sender: TObject); begin inherited; OurCoName.Properties.LookupItems.Text := 'W0001'; - OurCoName.Text := ''; + OurCoName.Text := '格美'; try with ADOConnection1 do begin @@ -447,7 +451,7 @@ begin ADOQueryBaseCmd.Connection := ADOConnection1; ADOQueryBaseTemp.Connection := ADOConnection1; except - application.MessageBox('ʧܣ', 'ʾϢ'); + application.MessageBox('网络连接失败!', '提示信息'); end; end; @@ -461,11 +465,11 @@ begin begin close; sql.Clear; - sql.Add(' select CoCode,CoAbbrName from BS_Company A left join BS_Company_contact B on A.COID = B.COID where CoType=''ͻ'' '); + sql.Add(' select CoCode,CoAbbrName from BS_Company A left join BS_Company_contact B on A.COID = B.COID where CoType=''客户'' '); - if Trim(canshu4) = '' then -// sql.Add(' and Stores='''' '); - sql.Add(' and stores='''' '); + if Trim(canshu4) = '新余' then +// sql.Add(' and Stores=''新余'' '); + sql.Add(' and stores=''新余'' '); Open; @@ -488,7 +492,7 @@ begin sql.Add(' exec P_BS_CloInfo_Hot '); ExecSQL; end; - readCxGrid(TRIM(SELF.Caption), Tv1, 'ָʾ'); + readCxGrid(TRIM(SELF.Caption), Tv1, '生产指示单管理'); TMMNo.Text := ''; fFlileFlag := UserDataFlag + 'HX'; InitData(); @@ -508,11 +512,12 @@ begin sql.Clear; sql.Add(' SELECT distinct A.C_Code,A.C_Name,A.qtyunit,A.HotQty,StkQty = SUM(B.StkQty) '); SQL.ADD(' FROM Bs_Cloth_Info A LEFT JOIN Bs_Cloth_Io B on A.C_Code=B.C_Code'); - sql.add(' where B.ioflag='''' '); - if Trim(canshu4) = '' then - sql.Add(' and isnull(STKNAME,'''')='''' '); + sql.add(' where B.ioflag=''入库'' '); + if Trim(canshu4) = '新余' then + sql.Add(' and isnull(STKNAME,'''')=''新余'' '); SQL.add('group by A.C_Code,A.C_Name,A.qtyunit,A.HotQty'); SQL.ADD('order by A.C_Code '); + Open; end; with ADO_YS do @@ -545,23 +550,61 @@ end; function TfrmTradeMarketInPut_XY.SaveData(): Boolean; var maxno, Smaxno, maxTMMNo, MaxFNo, MQZ, MTMMNo: string; + RetryCount: Integer; begin try ADOCmd.Connection.BeginTrans; -///////////////////// /////////////////////////// +///////////////////// 保存主表 /////////////////////////// if Trim(FTMMID) = '' then begin if GetLSNo(ADOCmd, maxno, 'JM', 'Trade_Market_Main', 3, 1) = False then - raise Exception.Create('ȡʧ!'); + raise Exception.Create('取最大号失败!'); -// G50313001<-- G50313 001 -//(G+ 25ġ5(ÿһǰ 0-9ѭ)+0313()+001(,ᳬ999)) +// 大货单编号G50313001<-- G50313 001 +//(“G”+ 25年的“5”(每过五年辉清一下以前的数据 所以0-9循环)+0313(月日)+“001”(单号,不会超过999单)) - MQZ := 'G' + RightStr(Trim(FormatDateTime('yyMMdd', SGetServerDate(ADOTemp))), 5); - if GetLSNo(ADOCmd, MTMMNo, MQZ, 'Trade_Market_Main', 3, 0) = False then - raise Exception.Create('ȡʧ!'); +// RetryCount := 0; +// +// // 循环取号,直到不重复为止 +// while True do +// begin +// // 1. 取流水号 +// MQZ := 'G' + RightStr(Trim(FormatDateTime('yyMMdd', SGetServerDate(ADOTemp))), 6); +// if not GetLSNo(ADOCmd, MTMMNo, MQZ, 'Trade_Market_Main', 3, 0) then +// raise Exception.Create('取最大号失败!'); +// +// // 2. 查询是否已存在 +// with ADOCmd do +// begin +// Close; +// SQL.Clear; +// SQL.Add('select count(*) from Trade_Market_Main where TMMNo=:TMMNo'); +// Parameters.ParamByName('TMMNo').Value := Trim(MTMMNo); +// Open; +// +// // 如果数量 > 0 表示已存在 +// if Fields[0].AsInteger > 0 then +// begin +// Close; +// +// // 防死循环:最多重试10次 +// Inc(RetryCount); +// if RetryCount > 10 then +// raise Exception.Create('自动重试取号10次均重复,请检查流水号规则!'); +// +// Continue; // 重复了 → 重新回到循环开头再取一次 +// end; +// +// Close; +// end; +// +// // 3. 不重复 → 退出循环 +// Break; +// end; + if not GetLSNo(ADOCmd, MTMMNo, 'G', 'Trade_Market_Main', 3, 1) then + raise Exception.Create('取最大号失败!'); TMMNo.Text := MTMMNo; end @@ -584,9 +627,9 @@ begin Append; FieldByName('FillId').Value := Trim(DCode); FieldByName('Filler').Value := Trim(DName); - if btnFlag = 1 then // + if btnFlag = 1 then //保存后立即完成 FieldByName('status').Value := Trim('10'); - if btnFlag = 5 then //ύ + if btnFlag = 5 then //保存后立即提交 FieldByName('status').Value := Trim('1'); end else @@ -606,8 +649,8 @@ begin Post; end; -///////////////////// /////////////////////////// -///////////////////// ӱ /////////////////////////// +///////////////////// 保存主表 /////////////////////////// +///////////////////// 保存子表 /////////////////////////// with CDS_1 do begin First; @@ -616,7 +659,7 @@ begin if Trim(CDS_1.fieldbyname('TMSId').AsString) = '' then begin if GetLSNo(ADOCmd, Smaxno, 'JS', 'Trade_Market_Sub', 4, 1) = False then - raise Exception.Create('ȡˮʧ!'); + raise Exception.Create('取子流水号失败!'); end else begin @@ -646,7 +689,7 @@ begin Next; end; end; -///////////////////// ӱ /////////////////////////// +///////////////////// 保存子表 /////////////////////////// with ADOCmd do @@ -657,7 +700,7 @@ begin Open; end; if ADOCmd.RecordCount > 1 then - raise Exception.Create('ظ!'); + raise Exception.Create('订单号重复!'); with ADOCmd do begin @@ -668,7 +711,7 @@ begin Open; end; if not ADOCmd.IsEmpty then - raise Exception.Create('ɫظ!'); + raise Exception.Create('颜色重复!'); FTMMID := Trim(maxno); ADOCmd.Connection.CommitTrans; @@ -684,14 +727,14 @@ begin end; SCreateCDS(ADO_1, CDS_1); SInitCDSData(ADO_1, CDS_1); - Result := True; //ӡ + Result := True; //保存后立即打印 if (btnFlag = 2) or (btnFlag = 4) then begin try frmLabelPrint := TfrmLabelPrint.Create(Application); with frmLabelPrint do begin - if canshu4 = '' then + if canshu4 = '新余' then FLMType := 'TradePlanPrintxy' else FLMType := 'TradePlanPrint'; @@ -705,14 +748,14 @@ begin frmLabelPrint.Free; end; end; - if btnFlag = 3 then // + if btnFlag = 3 then //保存后立即新增 begin PState := 0; FTMMId := ''; FormShow(Self); // CDS_1.Close; // InitData(); -// SClearData(ScrollBox1, 2); //пؼ +// SClearData(ScrollBox1, 2); //清空容器中控件的内容 // CustName.Text := ''; // if CDS_1.IsEmpty then // begin @@ -722,7 +765,7 @@ begin except Result := False; ADOCmd.Connection.RollbackTrans; - application.MessageBox(PChar(Exception(ExceptObject).Message), 'ʾϢ', 0); + application.MessageBox(PChar(Exception(ExceptObject).Message), '提示信息', 0); end; end; @@ -742,51 +785,51 @@ begin if trim(CustName.Text) = '' then begin - Application.MessageBox('ͻΪ!', 'ʾ', 0); + Application.MessageBox('客户不能为空!', '提示', 0); Exit; end; if CDS_1.IsEmpty then begin - Application.MessageBox('ϸΪ!', 'ʾ', 0); + Application.MessageBox('明细不能为空!', '提示', 0); Exit; end; if CDS_1.Locate('TMSUnit', null, []) then begin - Application.MessageBox('λΪ!', 'ʾ', 0); + Application.MessageBox('单位不能为空!', '提示', 0); Exit; end; if CDS_1.Locate('TMSQty', null, []) then begin - Application.MessageBox('Ϊ!', 'ʾ', 0); + Application.MessageBox('数量不能为空!', '提示', 0); Exit; end; if CDS_1.Locate('C_Color', null, []) then begin - Application.MessageBox('ɫΪ!', 'ʾ', 0); + Application.MessageBox('颜色不能为空!', '提示', 0); Exit; end; // if CDS_1.Locate('OrderQty', null, []) then // begin -// Application.MessageBox('Ϊ!', 'ʾ', 0); +// Application.MessageBox('报单数量不能为空!', '提示', 0); // Exit; // end; // if CDS_1.Locate('OrderUnit', null, []) then // begin -// Application.MessageBox('λΪ!', 'ʾ', 0); +// Application.MessageBox('报单单位不能为空!', '提示', 0); // Exit; // end; if CDS_1.Locate('Price', null, []) then begin - Application.MessageBox('۲Ϊ!', 'ʾ', 0); + Application.MessageBox('单价不能为空!', '提示', 0); Exit; end; if not CDS_KH.Locate('CoAbbrName', self.CustName.Text, []) then begin - Application.MessageBox('ͻ!', 'ʾ', 0); + Application.MessageBox('客户不存在!', '提示', 0); Exit; end else @@ -797,8 +840,8 @@ begin if SaveData() then begin - Application.MessageBox('ɹ', 'ʾ', 0); - if btnFlag = 4 then //ӡ˳ + Application.MessageBox('保存成功!', '提示', 0); + if btnFlag = 4 then //保存后打印并退出 ModalResult := 1; end; end; @@ -815,10 +858,10 @@ begin Exit; if CDS_1.Locate('SSel', True, []) = False then begin - Application.MessageBox('ûѡ!', 'ʾ', 0); + Application.MessageBox('没有选择数据!', '提示', 0); Exit; end; - if Application.MessageBox('ȷҪɾѡ', 'ʾ', 32 + 4) <> IDYES then + if Application.MessageBox('确定要删除选择的数据吗?', '提示', 32 + 4) <> IDYES then exit; CDS_1.DisableControls; with CDS_1 do @@ -846,7 +889,7 @@ end; procedure TfrmTradeMarketInPut_XY.ToolButton3Click(Sender: TObject); begin - WriteCxGrid(TRIM(SELF.Caption), Tv1, 'ָʾ'); + WriteCxGrid(TRIM(SELF.Caption), Tv1, '生产指示单管理'); end; @@ -893,7 +936,7 @@ begin if GetLSNo(ADOTemp, maxno, 'JS', 'Trade_Market_Sub', 4, 1) = False then begin ADOCmd.Connection.RollbackTrans; - Application.MessageBox('ȡˮʧܣ', 'ʾ', 0); + Application.MessageBox('取子流水号失败!', '提示', 0); Exit; end; with self.CDS_1 do @@ -1088,18 +1131,19 @@ begin sql.Add('from BS_Company A '); sql.Add('left join BS_Company_contact B ON A.COID=B.COID and B.IsDefault=1 '); sql.Add('where 1=1 '); - sql.Add(' and A.CoType=''' + Trim('ͻ') + ''''); -// if Trim(FAuthority) = 'ҵ' then + sql.Add(' and A.CoType=''' + Trim('客户') + ''''); +// if Trim(FAuthority) = '理单业务' then // begin // sql.Add(' and ( SalesId=' + quotedstr(trim(DCode)) + ' or exists (select * from [dbo].[F_Tool_SplitString](TallyId,'','') X where X.RTValue =' + quotedstr(trim(DCode)) + '))'); // end; - if canshu4 = '' then - sql.Add(' and A.Stores=''' + Trim('') + ''''); + if canshu4 = '新余' then + sql.Add(' and A.Stores=''' + Trim('新余') + ''''); sql.Add(' and A.CoAbbrName=''' + Trim(CustName.Text) + ''''); Open; end; self.ShippingAddress.Text := Trim(adotemp.fieldbyname('mxaddress').AsString); self.CONTACT.Text := Trim(adotemp.fieldbyname('Telephone').AsString); + self.AddressArea.Text := Trim(adotemp.fieldbyname('MXAREA').AsString); end; @@ -1115,7 +1159,7 @@ var sFieldName: string; begin - sFieldName := leftbstr(ExtractFilePath(Application.ExeName), 1) + ':\ͼƬ鿴'; + sFieldName := leftbstr(ExtractFilePath(Application.ExeName), 1) + ':\图片查看'; if not DirectoryExists(pchar(sFieldName)) then CreateDirectory(pchar(sFieldName), nil); @@ -1123,7 +1167,7 @@ begin sFieldName := sFieldName + '\' + trim(FileName); try - IdFTP1.Host := ReadINIFileStr('SYSTEMSET.INI', 'SERVER', 'ַ', '127.0.0.1'); + IdFTP1.Host := ReadINIFileStr('SYSTEMSET.INI', 'SERVER', '服务器地址', '127.0.0.1'); IdFTP1.Username := 'three'; IdFTP1.Password := '641010'; IdFTP1.Connect(); @@ -1136,14 +1180,14 @@ begin try IdFTP1.Get(fFlileFlag + '\' + Trim(FileName), sFieldName, true, false); except - Application.MessageBox('ͻͼļ', 'ʾ', MB_ICONWARNING); + Application.MessageBox('客户图样文件不存在', '提示', MB_ICONWARNING); IdFTP1.Quit; Exit; end; end else begin - Application.MessageBox('޷ļ', 'ʾ', MB_ICONWARNING); + Application.MessageBox('无法连接文件服务器', '提示', MB_ICONWARNING); IdFTP1.Quit; Exit; end; @@ -1194,7 +1238,7 @@ begin frmCompanySel := TfrmCompanySel.Create(Application); with frmCompanySel do begin - FCoType := '˾'; + FCoType := '我司'; if ShowModal = 1 then begin self.OurCoName.Properties.LookupItems.Text := Trim(frmCompanySel.CDS_1.fieldbyname('CoCode').AsString); @@ -1217,7 +1261,7 @@ begin with frmZDYHelp do begin flag := 'OrderUnit'; - flagname := 'λ'; + flagname := '数量单位'; if ShowModal = 1 then begin Self.CDS_1.Edit; @@ -1234,7 +1278,7 @@ var mvalue, FFieldName, YValue: string; FDDQty, FCPCDXS, FQty, FDKCQty: Double; begin - mvalue := TcxComboBox(Sender).EditingText; //仯λ + mvalue := TcxComboBox(Sender).EditingText; //变化后单位 FFieldName := Trim(Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName); with CDS_1 do begin @@ -1242,8 +1286,8 @@ begin Edit; FieldByName(FFieldName).Value := mvalue; Post; - YValue := FieldByName('DDQtyUnit').AsString; //ԭλ=λ - FDDQty := FieldByName('DDQty').AsFloat; // + YValue := FieldByName('DDQtyUnit').AsString; //原单位=订单单位 + FDDQty := FieldByName('DDQty').AsFloat; //订单数量 FCPCDXS := FieldByName('CPCDXS').AsFloat; FDKCQty := FieldByName('DKCQty').AsFloat; FQty := FieldByName('PRTOrderQty').AsFloat; @@ -1312,8 +1356,8 @@ begin with frmZDYHelp do begin flag := 'PriceUnit'; - flagname := '۸λ'; - if Trim(DParameters1) <> 'Ȩ' then + flagname := '价格单位'; + if Trim(DParameters1) <> '高权限' then begin TBAdd.Visible := False; TBEdit.Visible := False; @@ -1348,6 +1392,8 @@ begin begin self.ShippingAddress.Text := Trim(frmComContactSel.CDS_1.fieldbyname('mxaddress').AsString); self.CONTACT.Text := Trim(frmComContactSel.CDS_1.fieldbyname('PhoneNumber').AsString); + self.AddressArea.Text := Trim(frmComContactSel.CDS_1.fieldbyname('MXAREA').AsString); + end; end; finally @@ -1361,7 +1407,7 @@ begin frmCompanySel := TfrmCompanySel.Create(Application); with frmCompanySel do begin - FCoType := 'ͻ'; + FCoType := '客户'; FStores := Trim(canshu4); FsqlStr := ' and stores = ' + QuotedStr(Trim(canshu4)); if ShowModal = 1 then @@ -1370,6 +1416,7 @@ begin self.CustName.Text := Trim(frmCompanySel.CDS_1.fieldbyname('CoAbbrName').AsString); self.ShippingAddress.Text := Trim(frmCompanySel.CDS_1.fieldbyname('mxaddress').AsString); self.CONTACT.Text := Trim(frmCompanySel.CDS_1.fieldbyname('Telephone').AsString); + self.AddressArea.Text := Trim(frmCompanySel.CDS_1.fieldbyname('MXAREA').AsString); end; end; @@ -1423,16 +1470,16 @@ var begin if Key = #13 then begin - if Label38.Caption = '' then + if Label38.Caption = '序号' then begin - Application.MessageBox('ѡ', 'ʾ', 0); + Application.MessageBox('请选择数据', '提示', 0); Exit; end; if StrTofloatDef(QtyMX.Text, 0) = 0 then Exit; if GetLSNo(ADOTemp, MaxNo, 'MX', 'Trade_Market_Sub_Qty', 4, 1) = False then begin - Application.MessageBox('ȡʧ!', 'ʾ', 0); + Application.MessageBox('取最大号失败!', '提示', 0); Exit; end; try @@ -1462,7 +1509,7 @@ begin end; except ADOCmd.Connection.RollbackTrans; - Application.MessageBox('ʧ!', 'ʾ', 0); + Application.MessageBox('添加失败!', '提示', 0); end; QtyMX.Text := ''; TvMX.Controller.EditingController.ShowEdit(); @@ -1489,15 +1536,15 @@ procedure TfrmTradeMarketInPut_XY.Tv1CellDblClick(Sender: TcxCustomGridTableView var AColumn: TcxGridColumn; begin - // ȡ˫ + // 获取被双击的列 AColumn := ACellViewInfo.Item as TcxGridColumn; - // Ƿ˫ Qty Уͨжϣ + // 检查是否双击了 Qty 列(通过列名判断) if AColumn.Name = 'Tv1Column19' then begin if not CDS_1.IsEmpty then begin - // ȡǰеID + // 获取当前行的相关ID Self.MTMSId := CDS_1.FieldByName('TMSId').AsString; Self.FTMMID := CDS_1.FieldByName('TMMId').AsString; @@ -1541,6 +1588,40 @@ begin end; end; +procedure TfrmTradeMarketInPut_XY.Tv1Column12PropertiesChange(Sender: TObject); +var + sInput: string; + ACombo: TcxLookupComboBox; +begin + inherited; + ACombo := TcxLookupComboBox(Sender); + sInput := Trim(ACombo.Text); // 获取你输入的文字 + if CDS_1.FieldByName('C_CODE').AsString = '' then + EXIT; + + with ADO_YS do + begin + Close; + sql.Clear; + sql.Add(' SELECT * '); + sql.Add(' FROM V_COLOR_VIEW A WHERE 1=1 and C_CODE= ' + QuotedStr(CDS_1.FieldByName('C_CODE').AsString)); + + if sInput <> '' then + begin + sql.Add(Format(' AND A.C_ColorNo LIKE ''%%%s%%'' ', [sInput])); + // ✅ 关键:DISTINCT 下绝对不报错的排序(只排查询里出现的字段) + sql.Add(Format(' ORDER BY CASE WHEN A.C_ColorNo = ''%s'' THEN 0 ELSE 1 END, A.C_ColorNo ', [sInput])); + + end + else + begin +// sql.Add(' AND C_CODE= ' + QuotedStr(CDS_1.FieldByName('C_CODE').AsString)); + end; +// ShowMessage(SQL.Text); + Open; + end; +end; + procedure TfrmTradeMarketInPut_XY.Tv1Column12PropertiesEditValueChanged(Sender: TObject); var mvalue, FFieldName: string; @@ -1569,7 +1650,39 @@ begin FieldByName('C_Color').Value := ADO_YS.FieldByName('C_Color').Value; FieldByName('price').Value := ADO_YS.FieldByName('price').Value * (1 + (FIncludeTax / 100)); FieldByName('referencePrice').Value := ADO_YS.FieldByName('Price').Value; + Post; + + with ADOTemp do + begin + Close; + SQL.Clear; + SQL.Add(' SELECT'); + SQL.Add(' (ISNULL((SELECT SUM(ISNULL(StkQty, 0))'); + SQL.Add(' FROM Bs_Cloth_IO'); + SQL.Add(' WHERE C_Code = ' + QuotedStr(cds_1.FieldByName('C_Code').AsString)); + SQL.Add(' AND C_ColorNO = ' + QuotedStr(cds_1.FieldByName('C_ColorNO').AsString)); + SQL.Add(' AND STKNAME = ''新余''), 0)'); + SQL.Add(' - ISNULL((SELECT SUM(ISNULL(Qty, 0))'); + SQL.Add(' FROM Trade_Market_Sub_Qty X'); + SQL.Add(' INNER JOIN Trade_Market_Sub F ON X.TMSID = F.TMSID'); + SQL.Add(' INNER JOIN Trade_Market_Main E ON E.TMMID = F.TMMID'); + SQL.Add(' WHERE Store = ''新余'''); + SQL.Add(' AND E.Status = ''10'''); + SQL.Add(' AND F.C_Code = ' + QuotedStr(cds_1.FieldByName('C_Code').AsString)); + SQL.Add(' AND F.C_ColorNo = ' + QuotedStr(cds_1.FieldByName('C_ColorNO').AsString)); + SQL.Add(' ), 0)) AS StkQty'); + + Open; + + // 获取计算结果 + + end; + + // 更新当前记录 + CDS_1.Edit; + CDS_1.FieldByName('StkQty').Value := ADOTemp.FieldByName('StkQty').AsFloat; + CDS_1.Post; end; with ADOTemp do @@ -1675,7 +1788,7 @@ begin FieldByName('C_Code').Value := ADO_PM.FieldByName('C_Code').Value; FieldByName('TMSUnit').Value := ADO_PM.FieldByName('qtyunit').Value; - FieldByName('StkQty').Value := ADO_PM.FieldByName('StkQty').Value; +// FieldByName('StkQty').Value := ADO_PM.FieldByName('StkQty').Value; Post; end; @@ -1728,7 +1841,7 @@ end; procedure TfrmTradeMarketInPut_XY.Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); begin inherited; - Label38.Caption := 'ţ' + Trim(cds_1.fieldbyname('SerialNo').AsString); + Label38.Caption := '序号:' + Trim(cds_1.fieldbyname('SerialNo').AsString); MTMSId := Trim(cds_1.fieldbyname('TMSId').AsString); InitMXGrid(MTMSId); end; @@ -1812,7 +1925,7 @@ begin // close; // sql.Clear; // sql.Add(' exec P_KCSD_AllNew '); -// sql.Add(' @Operation=''ϸɾ'' '); +// sql.Add(' @Operation=''大货单明细删除'' '); // sql.Add(' ,@TMMNo=' + quotedstr(trim(TMMNo.Text))); // ExecSQL; // end; @@ -1904,8 +2017,8 @@ begin flagname := Copy(fsj, FWZ + 1, Length(fsj) - FWZ); if Trim(flag) = 'OrdDefStr2' then begin - V1Name.Caption := ''; - V1Note.Caption := 'Ӣ'; + V1Name.Caption := '中文名称'; + V1Note.Caption := '英文名称'; fnote := True; end; if ShowModal = 1 then diff --git a/T05贸易门市管理/U_TradeMarketInPut_XYth.dfm b/T05贸易门市管理/U_TradeMarketInPut_XYth.dfm new file mode 100644 index 0000000..b34fbed --- /dev/null +++ b/T05贸易门市管理/U_TradeMarketInPut_XYth.dfm @@ -0,0 +1,1006 @@ +inherited frmTradeMarketInPut_XYTh: TfrmTradeMarketInPut_XYTh + Left = 143 + Top = 4 + Caption = #26032#20313#35746#21333#24405#20837 + ClientHeight = 736 + ClientWidth = 1540 + Font.Charset = GB2312_CHARSET + Font.Height = -16 + Position = poMainFormCenter + WindowState = wsMaximized + OnClose = FormClose + ExplicitWidth = 1556 + ExplicitHeight = 775 + PixelsPerInch = 96 + TextHeight = 21 + object ToolBar1: TToolBar [0] + Tag = 1 + Left = 0 + Top = 0 + Width = 1540 + Height = 38 + AutoSize = True + ButtonHeight = 38 + ButtonWidth = 105 + Caption = 'ToolBar1' + EdgeInner = esNone + EdgeOuter = esNone + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #24494#36719#38597#40657 + Font.Style = [] + Images = cxImageList_bar + List = True + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBSave: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #20445#23384 + DropdownMenu = PopupMenu1 + ImageIndex = 16 + Style = tbsDropDown + OnClick = TBSaveClick + end + object ToolButton3: TToolButton + Left = 94 + Top = 0 + AutoSize = True + Caption = #20445#23384#26684#24335 + ImageIndex = 16 + OnClick = ToolButton3Click + end + object TBClose: TToolButton + Left = 197 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 7 + OnClick = TBCloseClick + end + object TBAdd: TToolButton + Left = 268 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 2 + OnClick = TBAddClick + end + object ToolButton6: TToolButton + Left = 339 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 6 + end + object TBEdit: TToolButton + Left = 410 + Top = 0 + AutoSize = True + Caption = #20462#25913 + ImageIndex = 3 + OnClick = TBEditClick + end + end + object ToolBar2: TToolBar [1] + Tag = 1 + Left = 0 + Top = 193 + Width = 1540 + Height = 30 + ButtonHeight = 30 + ButtonWidth = 99 + EdgeInner = esNone + EdgeOuter = esNone + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #24494#36719#38597#40657 + Font.Style = [] + Images = cxImageList_bar + List = True + ParentFont = False + ShowCaptions = True + TabOrder = 1 + object ToolButton1: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 2 + OnClick = ToolButton1Click + end + object ToolButton2: TToolButton + Left = 71 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 6 + OnClick = ToolButton2Click + end + object ToolButton5: TToolButton + Left = 142 + Top = 0 + Caption = #19968#38190#26367#25442 + ImageIndex = 30 + OnClick = ToolButton5Click + end + object ToolButton4: TToolButton + Left = 241 + Top = 0 + AutoSize = True + Caption = #26126#32454#24405#20837 + ImageIndex = 31 + OnClick = ToolButton4Click + end + end + object Panel2: TPanel [2] + Left = 0 + Top = 223 + Width = 1540 + Height = 513 + Align = alClient + Caption = 'Panel2' + TabOrder = 2 + object Panel3: TPanel + Left = 1 + Top = 1 + Width = 1538 + Height = 511 + Align = alClient + Caption = 'Panel2' + TabOrder = 0 + object cxGrid1: TcxGrid + Left = 1 + Top = 1 + Width = 1536 + Height = 509 + Align = alClient + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #24494#36719#38597#40657 + Font.Style = [] + ParentFont = False + TabOrder = 0 + object Tv1: TcxGridDBTableView + OnDblClick = Tv1DblClick + OnMouseDown = Tv1MouseDown + Navigator.Buttons.CustomButtons = <> + ScrollbarAnnotations.CustomAnnotations = <> + OnCellDblClick = Tv1CellDblClick + OnFocusedRecordChanged = Tv1FocusedRecordChanged + DataController.DataSource = DS_1 + DataController.Filter.AutoDataSetFilter = True + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = '0' + Position = spFooter + end + item + Format = '0' + Position = spFooter + end + item + Format = '0' + Position = spFooter + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsData.Deleting = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + object Tv1Column3: TcxGridDBColumn + Caption = #24207#21495 + DataBinding.FieldName = 'SerialNo' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 77 + end + object v1Column11: TcxGridDBColumn + Tag = 99 + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 77 + end + object Tv1Column1: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'C_Code' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = Tv1Column1PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object Tv1Column7: TcxGridDBColumn + Caption = #33394#24067#21517#31216 + DataBinding.FieldName = 'C_Name' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxLookupComboBoxProperties' + Properties.KeyFieldNames = 'C_Name' + Properties.ListColumns = < + item + Caption = #21697#21517 + HeaderAlignment = taCenter + Width = 64 + FieldName = 'C_Name' + end> + Properties.ListSource = DS_PM + Properties.OnEditValueChanged = Tv1Column7PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 149 + end + object v1PRTColor: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'C_Color' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object Tv1Column12: TcxGridDBColumn + Caption = #33394#21495 + DataBinding.FieldName = 'C_ColorNo' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxLookupComboBoxProperties' + Properties.IncrementalFilteringOptions = [ifoUseContainsOperator] + Properties.KeyFieldNames = 'C_ColorNo' + Properties.ListColumns = < + item + Caption = #33394#21495 + HeaderAlignment = taCenter + FieldName = 'C_ColorNo' + end + item + Caption = #39068#33394 + HeaderAlignment = taCenter + FieldName = 'C_Color' + end> + Properties.ListSource = DS_YS + Properties.OnChange = Tv1Column12PropertiesChange + Properties.OnEditValueChanged = Tv1Column12PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 168 + end + object Tv1Column9: TcxGridDBColumn + Caption = #35268#26684 + DataBinding.FieldName = 'C_Spec' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 77 + end + object Tv1Column11: TcxGridDBColumn + Caption = #33457#22411 + DataBinding.FieldName = 'C_Pattern' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 77 + end + object Tv1Column5: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'C_Width' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 77 + end + object Tv1Column10: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'C_GramWeight' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 77 + end + object Tv1Column15: TcxGridDBColumn + Caption = #36864#36135#25968#37327 + DataBinding.FieldName = 'OrderQty' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object Tv1Column16: TcxGridDBColumn + Caption = #36864#36135#21333#20301 + DataBinding.FieldName = 'OrderUnit' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxLookupComboBoxProperties' + Properties.KeyFieldNames = 'CICUnit' + Properties.ListColumns = < + item + Caption = #21333#20301 + FieldName = 'CICUnit' + end> + Properties.ListSource = DS_DanWei + HeaderAlignmentHorz = taCenter + Width = 77 + end + object Tv1Column4: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'Price' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 77 + end + object Tv1Column21: TcxGridDBColumn + Caption = #21442#32771#20215#26684 + DataBinding.FieldName = 'referencePrice' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 98 + end + object Tv1Column22: TcxGridDBColumn + Caption = #21382#21490#20215#26684 + DataBinding.FieldName = 'Lastprice' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 83 + end + object Tv1Column8: TcxGridDBColumn + Caption = #22791#36135#21333#20301 + DataBinding.FieldName = 'TMSUnit' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object Tv1Column20: TcxGridDBColumn + Tag = 22 + Caption = #24403#21069#24211#23384 + DataBinding.FieldName = 'StkQty' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 98 + end + object Tv1Column6: TcxGridDBColumn + Caption = #21253#32568#36153 + DataBinding.FieldName = 'GangFee' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 77 + end + object Tv1Column13: TcxGridDBColumn + Caption = #36816#36153 + DataBinding.FieldName = 'Transfee' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 77 + end + object Tv1Column14: TcxGridDBColumn + Caption = #20854#23427#36153 + DataBinding.FieldName = 'Otherfee' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 77 + end + object Tv1Column17: TcxGridDBColumn + Caption = #32039#24613#31243#24230 + DataBinding.FieldName = 'Urgent' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsEditFixedList + Properties.Items.Strings = ( + #27491#24120 + #32039#24613) + HeaderAlignmentHorz = taCenter + Width = 77 + end + object Tv1Column2: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'OrdSNote' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 77 + end + object Tv1Column18: TcxGridDBColumn + Caption = #22791#36135#29366#24577 + DataBinding.FieldName = 'StkStatus' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsEditFixedList + Properties.Items.Strings = ( + #26377 + #23436#25104 + #27809#36135 + #27424#21333 + #21462#28040#21333) + HeaderAlignmentHorz = taCenter + Width = 77 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + end + object Panel4: TPanel + Left = 912 + Top = 80 + Width = 286 + Height = 296 + Caption = 'Panel4' + TabOrder = 1 + Visible = False + object Panel5: TPanel + Left = 21 + Top = 18 + Width = 284 + Height = 42 + TabOrder = 0 + object Label33: TLabel + Left = 113 + Top = 10 + Width = 32 + Height = 21 + Caption = #25968#37327 + end + object Label38: TLabel + Left = 20 + Top = 10 + Width = 32 + Height = 21 + Caption = #24207#21495 + end + object QtyMX: TcxTextEdit + Left = 163 + Top = 2 + TabOrder = 0 + OnKeyPress = QtyMXKeyPress + Width = 89 + end + end + object GroupBox2: TGroupBox + Left = -212 + Top = -20 + Width = 284 + Height = 294 + Caption = #21452#20987#21024#38500#26126#32454#20449#24687 + TabOrder = 1 + object cxGrid2: TcxGrid + Left = 2 + Top = 23 + Width = 280 + Height = 269 + Align = alClient + TabOrder = 0 + object TvMX: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + Navigator.Buttons.Delete.Enabled = False + Navigator.Buttons.Delete.Visible = False + ScrollbarAnnotations.CustomAnnotations = <> + OnCellDblClick = TvMXCellDblClick + DataController.DataSource = DS_MX + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Kind = skCount + Position = spFooter + end + item + Kind = skSum + Position = spFooter + Column = cxGridDBColumn8 + end + item + Kind = skCount + end + item + Kind = skSum + Column = cxGridDBColumn8 + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = cxGridDBColumn8 + end + item + Kind = skCount + Column = cxGridDBColumn8 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + OptionsView.IndicatorWidth = 33 + object cxGridDBColumn8: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'Qty' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxTextEditProperties' + Properties.Alignment.Horz = taCenter + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Sorting = False + Width = 66 + end + end + object cxGridLevel2: TcxGridLevel + GridView = TvMX + end + end + end + end + end + object ScrollBox1: TScrollBox [3] + Left = 0 + Top = 38 + Width = 1540 + Height = 155 + Align = alTop + BevelInner = bvNone + BevelOuter = bvNone + BorderStyle = bsNone + Ctl3D = False + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #24494#36719#38597#40657 + Font.Style = [] + ParentCtl3D = False + ParentFont = False + TabOrder = 3 + OnClick = ScrollBox1Click + object Label3: TLabel + Left = 730 + Top = 70 + Width = 64 + Height = 21 + Caption = #21046#21333#26085#26399 + end + object Label25: TLabel + Left = 1112 + Top = 164 + Width = 64 + Height = 21 + Caption = #20132#36135#26085#26399 + Visible = False + end + object Label1: TLabel + Left = 29 + Top = 68 + Width = 77 + Height = 21 + Caption = #22791' '#27880 + end + object Label2: TLabel + Left = 730 + Top = 21 + Width = 64 + Height = 21 + Caption = #21333#25454#32534#21495 + end + object Label14: TLabel + Left = 29 + Top = 21 + Width = 72 + Height = 21 + Caption = #23458' '#25143 + end + object Label20: TLabel + Left = 789 + Top = 164 + Width = 64 + Height = 21 + Caption = #32463#33829#21333#20301 + Visible = False + end + object Label37: TLabel + Left = 1077 + Top = 21 + Width = 64 + Height = 21 + Caption = #35746#21333#31867#22411 + end + object Label18: TLabel + Left = 730 + Top = 119 + Width = 64 + Height = 21 + Caption = #21457#36135#22320#22336 + end + object Label4: TLabel + Left = 352 + Top = 21 + Width = 48 + Height = 21 + Caption = #35746#21333#21495 + end + object Label19: TLabel + Left = 1077 + Top = 68 + Width = 80 + Height = 21 + Caption = #32852#31995#26041#24335#65306 + end + object Label5: TLabel + Left = 1077 + Top = 119 + Width = 64 + Height = 21 + Caption = #36864#36135#31867#22411 + end + object TMMNo: TcxTextEdit + Tag = 2 + Left = 814 + Top = 15 + Enabled = False + TabOrder = 0 + Width = 200 + end + object TMMDate: TDateTimePicker + Tag = 2 + Left = 814 + Top = 66 + Width = 200 + Height = 29 + BevelInner = bvNone + Date = 40916.000000000000000000 + Format = 'yyyy-MM-dd' + Time = 0.670856296288548000 + TabOrder = 1 + end + object DLYDate: TDateTimePicker + Tag = 2 + Left = 1196 + Top = 160 + Width = 200 + Height = 29 + BevelInner = bvNone + Date = 40916.000000000000000000 + Format = 'yyyy-MM-dd' + Time = 0.670856296288548000 + ShowCheckbox = True + TabOrder = 2 + Visible = False + end + object OrdNote: TMemo + Tag = 2 + Left = 122 + Top = 68 + Width = 511 + Height = 81 + Hint = 'OrdNote/'#22791#27880 + ScrollBars = ssVertical + TabOrder = 3 + OnDblClick = PackNoteDblClick + end + object OrdType: TComboBox + Tag = 2 + Left = 1164 + Top = 17 + Width = 200 + Height = 29 + Style = csDropDownList + Ctl3D = False + Enabled = False + ItemIndex = 0 + ParentCtl3D = False + TabOrder = 4 + Text = #36864#36135#21333 + Items.Strings = ( + #36864#36135#21333) + end + object OurCoName: TcxButtonEdit + Tag = 2 + Left = 882 + Top = 160 + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = OurCoNamePropertiesButtonClick + Style.ButtonStyle = btsDefault + TabOrder = 5 + Visible = False + OnDblClick = OurCoNameDblClick + Width = 200 + end + object ShippingAddress: TcxButtonEdit + Tag = 2 + Left = 814 + Top = 115 + Hint = 'ShippingAddress/'#21457#36135#22320#22336 + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = ShippingAddressPropertiesButtonClick + Style.ButtonStyle = btsDefault + TabOrder = 6 + OnDblClick = OurCoNameDblClick + Width = 200 + end + object BuyOrdNo: TcxTextEdit + Tag = 2 + Left = 416 + Top = 15 + TabOrder = 7 + Width = 200 + end + object CustName: TcxMRUEdit + Tag = 2 + Left = 122 + Top = 15 + Properties.ImmediatePost = True + Properties.ReadOnly = False + Properties.OnButtonClick = StkPositionPropertiesButtonClick + Properties.OnChange = CustNamePropertiesChange + Properties.OnCloseUp = CustNamePropertiesCloseUp + TabOrder = 8 + OnMouseDown = CustNameMouseDown + Width = 200 + end + object CONTACT: TcxButtonEdit + Tag = 2 + Left = 1164 + Top = 63 + Hint = 'CONTACT/'#32852#31995#26041#24335 + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = ShippingAddressPropertiesButtonClick + Style.ButtonStyle = btsDefault + TabOrder = 9 + OnDblClick = OurCoNameDblClick + Width = 200 + end + object THTYPE: TComboBox + Tag = 2 + Left = 1164 + Top = 115 + Width = 200 + Height = 29 + Style = csDropDownList + Ctl3D = False + ParentCtl3D = False + TabOrder = 10 + Items.Strings = ( + #25104#21697#20179 + #38646#21806#20179) + end + end + inherited ADOQueryBaseCmd: TADOQuery + Left = 860 + Top = 157 + end + inherited ADOQueryBaseTemp: TADOQuery + Left = 942 + Top = 157 + end + inherited ImageList_new32: TImageList + Left = 1024 + Top = 467 + end + inherited cxImageList_bar: TcxImageList + FormatVersion = 1 + Left = 1024 + Top = 343 + DesignInfo = 22479872 + end + object ADOTemp: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1106 + Top = 157 + end + object ADOCmd: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + Parameters = <> + Left = 778 + Top = 157 + end + object DS_1: TDataSource + DataSet = CDS_1 + Left = 1106 + Top = 343 + end + object CDS_1: TClientDataSet + Aggregates = <> + Params = <> + Left = 1025 + Top = 284 + end + object GPM_1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 860 + Top = 343 + end + object ADOQueryLabel: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + Parameters = <> + Left = 1024 + Top = 157 + end + object ADO_I1: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + Parameters = <> + Left = 935 + Top = 284 + end + object DS_I1: TDataSource + DataSet = ADO_I1 + Left = 860 + Top = 405 + end + object IdFTP1: TIdFTP + ConnectTimeout = 0 + NATKeepAlive.UseKeepAlive = False + NATKeepAlive.IdleTimeMS = 0 + NATKeepAlive.IntervalMS = 0 + ProxySettings.ProxyType = fpcmNone + ProxySettings.Port = 0 + ReadTimeout = 0 + Left = 942 + Top = 467 + end + object ADO_I2: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + Parameters = <> + Left = 980 + Top = 257 + end + object DS_I2: TDataSource + DataSet = ADO_I2 + Left = 942 + Top = 405 + end + object DS_MX: TDataSource + DataSet = CDS_MX + Left = 1024 + Top = 405 + end + object CDS_MX: TClientDataSet + Aggregates = <> + Params = <> + Left = 778 + Top = 343 + end + object ADO_YS: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 942 + Top = 281 + end + object DS_YS: TDataSource + DataSet = ADO_YS + Left = 860 + Top = 467 + end + object DS_RCPM: TDataSource + DataSet = ADO_RCPM + Left = 778 + Top = 467 + end + object ADO_PM: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 778 + Top = 281 + end + object ADO_RCPM: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 860 + Top = 281 + end + object DS_PM: TDataSource + DataSet = ADO_PM + Left = 1106 + Top = 405 + end + object ADO_1: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 778 + Top = 219 + end + object CDS_KH: TClientDataSet + Aggregates = <> + Params = <> + Left = 1106 + Top = 281 + end + object ADO_KH: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1106 + Top = 219 + end + object GPM_2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 942 + Top = 343 + end + object DS_DanWei: TDataSource + DataSet = ADO_DanWei + Left = 778 + Top = 405 + end + object ADO_DanWei: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 860 + Top = 219 + end + object PopupMenu1: TPopupMenu + Left = 49 + Top = 74 + object N5: TMenuItem + Caption = #20445#23384#21518#31435#21363#25552#20132 + OnClick = N5Click + end + object N1: TMenuItem + Caption = #20445#23384#21518#31435#21363#23436#25104#13#10 + OnClick = N1Click + end + object N2: TMenuItem + Caption = #20445#23384#21518#31435#21363#25171#21360 + OnClick = N2Click + end + object N3: TMenuItem + Caption = #20445#23384#21518#31435#21363#26032#22686 + OnClick = N3Click + end + object N4: TMenuItem + Caption = #20445#23384#21518#25171#21360#24182#36864#20986 + OnClick = N4Click + end + end + object ADOConnection1: TADOConnection + Left = 617 + Top = 344 + end +end diff --git a/T05贸易门市管理/U_TradeMarketInPut_XYth.pas b/T05贸易门市管理/U_TradeMarketInPut_XYth.pas new file mode 100644 index 0000000..b442932 --- /dev/null +++ b/T05贸易门市管理/U_TradeMarketInPut_XYth.pas @@ -0,0 +1,1891 @@ +unit U_TradeMarketInPut_XYth; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage, + cxEdit, DB, cxDBData, cxGridLevel, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxClasses, cxControls, cxGridCustomView, cxGrid, cxMemo, + cxRichEdit, ComCtrls, cxContainer, cxTextEdit, cxMaskEdit, cxButtonEdit, + StdCtrls, ToolWin, DBClient, ADODB, ExtCtrls, BtnEdit, cxCalendar, StrUtils, + cxCurrencyEdit, cxGridCustomPopupMenu, cxGridPopupMenu, cxDropDownEdit, + RM_Common, RM_Preview, RM_System, RM_Class, RM_GridReport, RM_Dataset, Menus, + cxSplitter, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, cxCheckBox, + dxDateRanges, dxBarBuiltInMenu, cxPC, System.ImageList, Vcl.ImgList, + U_BaseInput, cxImage, cxDBEdit, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdExplicitTLSClientServerBase, IdFTP, ShellAPI, + dxScrollbarAnnotations, cxImageList, dxSkinsCore, dxSkinsDefaultPainters, + cxDBLookupComboBox, cxMRUEdit, dxSkinBasic, dxSkinBlack, dxSkinBlue, + dxSkinBlueprint, dxSkinCaramel, dxSkinCoffee, dxSkinDarkroom, dxSkinDarkSide, + dxSkinDevExpressDarkStyle, dxSkinDevExpressStyle, dxSkinFoggy, + dxSkinGlassOceans, dxSkinHighContrast, dxSkiniMaginary, dxSkinLilian, + dxSkinLiquidSky, dxSkinLondonLiquidSky, dxSkinMcSkin, dxSkinMetropolis, + dxSkinMetropolisDark, dxSkinMoneyTwins, dxSkinOffice2007Black, + dxSkinOffice2007Blue, dxSkinOffice2007Green, dxSkinOffice2007Pink, + dxSkinOffice2007Silver, dxSkinOffice2010Black, dxSkinOffice2010Blue, + dxSkinOffice2010Silver, dxSkinOffice2013DarkGray, dxSkinOffice2013LightGray, + dxSkinOffice2013White, dxSkinOffice2016Colorful, dxSkinOffice2016Dark, + dxSkinOffice2019Black, dxSkinOffice2019Colorful, dxSkinOffice2019DarkGray, + dxSkinOffice2019White, dxSkinPumpkin, dxSkinSeven, dxSkinSevenClassic, + dxSkinSharp, dxSkinSharpPlus, dxSkinSilver, dxSkinSpringtime, dxSkinStardust, + dxSkinSummer2008, dxSkinTheAsphaltWorld, dxSkinTheBezier, dxSkinValentine, + dxSkinVisualStudio2013Blue, dxSkinVisualStudio2013Dark, + dxSkinVisualStudio2013Light, dxSkinVS2010, dxSkinWhiteprint, dxSkinWXI, + dxSkinXmas2008Blue, dxCoreGraphics; + +type + TfrmTradeMarketInPut_XYTh = class(TfrmBaseInput) + ToolBar1: TToolBar; + TBSave: TToolButton; + TBClose: TToolButton; + ADOTemp: TADOQuery; + ADOCmd: TADOQuery; + DS_1: TDataSource; + CDS_1: TClientDataSet; + GPM_1: TcxGridPopupMenu; + ADOQueryLabel: TADOQuery; + ADO_I1: TADOQuery; + DS_I1: TDataSource; + ToolButton3: TToolButton; + IdFTP1: TIdFTP; + ADO_I2: TADOQuery; + DS_I2: TDataSource; + ToolBar2: TToolBar; + ToolButton1: TToolButton; + ToolButton2: TToolButton; + Panel2: TPanel; + Panel3: TPanel; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1Column11: TcxGridDBColumn; + v1PRTColor: TcxGridDBColumn; + Tv1Column2: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + Tv1Column1: TcxGridDBColumn; + Tv1Column7: TcxGridDBColumn; + Tv1Column8: TcxGridDBColumn; + Tv1Column9: TcxGridDBColumn; + Tv1Column4: TcxGridDBColumn; + Tv1Column6: TcxGridDBColumn; + Tv1Column13: TcxGridDBColumn; + Tv1Column14: TcxGridDBColumn; + Panel4: TPanel; + Panel5: TPanel; + Label33: TLabel; + Label38: TLabel; + QtyMX: TcxTextEdit; + GroupBox2: TGroupBox; + cxGrid2: TcxGrid; + TvMX: TcxGridDBTableView; + cxGridDBColumn8: TcxGridDBColumn; + cxGridLevel2: TcxGridLevel; + DS_MX: TDataSource; + CDS_MX: TClientDataSet; + Tv1Column3: TcxGridDBColumn; + Tv1Column5: TcxGridDBColumn; + Tv1Column10: TcxGridDBColumn; + Tv1Column11: TcxGridDBColumn; + ScrollBox1: TScrollBox; + Label3: TLabel; + Label25: TLabel; + Label1: TLabel; + Label2: TLabel; + Label14: TLabel; + Label20: TLabel; + Label37: TLabel; + Label18: TLabel; + TMMNo: TcxTextEdit; + TMMDate: TDateTimePicker; + DLYDate: TDateTimePicker; + OrdNote: TMemo; + OrdType: TComboBox; + OurCoName: TcxButtonEdit; + ShippingAddress: TcxButtonEdit; + ADO_YS: TADOQuery; + DS_YS: TDataSource; + DS_RCPM: TDataSource; + ADO_PM: TADOQuery; + ADO_RCPM: TADOQuery; + DS_PM: TDataSource; + Tv1Column12: TcxGridDBColumn; + ADO_1: TADOQuery; + Label4: TLabel; + BuyOrdNo: TcxTextEdit; + CustName: TcxMRUEdit; + CDS_KH: TClientDataSet; + ADO_KH: TADOQuery; + Tv1Column15: TcxGridDBColumn; + Tv1Column16: TcxGridDBColumn; + Tv1Column17: TcxGridDBColumn; + Tv1Column18: TcxGridDBColumn; + GPM_2: TcxGridPopupMenu; + DS_DanWei: TDataSource; + ADO_DanWei: TADOQuery; + PopupMenu1: TPopupMenu; + N1: TMenuItem; + N2: TMenuItem; + N3: TMenuItem; + N4: TMenuItem; + N5: TMenuItem; + Label19: TLabel; + CONTACT: TcxButtonEdit; + Tv1Column20: TcxGridDBColumn; + ToolButton5: TToolButton; + Tv1Column21: TcxGridDBColumn; + Tv1Column22: TcxGridDBColumn; + TBAdd: TToolButton; + ToolButton6: TToolButton; + TBEdit: TToolButton; + ADOConnection1: TADOConnection; + Label5: TLabel; + THTYPE: TComboBox; + ToolButton4: TToolButton; + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBSaveClick(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure v1OrderUnitPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v1PriceUnitPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure ScrollBox1Click(Sender: TObject); + procedure v1Column5PropertiesEditValueChanged(Sender: TObject); + procedure HYTTBtnUpClick(Sender: TObject); + procedure KYTTBtnUpClick(Sender: TObject); + procedure edtGYBtnUpClick(Sender: TObject); + procedure v1OrderUnitPropertiesEditValueChanged(Sender: TObject); + procedure Tv1Column4PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure cxDBImage1DblClick(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure TechnicsBtnUpClick(Sender: TObject); + procedure TechnicsBtnDnClick(Sender: TObject); + procedure PackNoteDblClick(Sender: TObject); + procedure Tv1Column1PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure ToolButton4Click(Sender: TObject); + procedure QtyMXKeyPress(Sender: TObject; var Key: Char); + procedure Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); + procedure TvMXCellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); + procedure OurCoNameDblClick(Sender: TObject); + procedure OurCoNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure ShippingAddressPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure Tv1Column7PropertiesEditValueChanged(Sender: TObject); + procedure Tv1Column12PropertiesEditValueChanged(Sender: TObject); + procedure Tv1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); + procedure FormCreate(Sender: TObject); + procedure StkPositionPropertiesButtonClick(Sender: TObject); + procedure CustNamePropertiesChange(Sender: TObject); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + procedure N3Click(Sender: TObject); + procedure N4Click(Sender: TObject); + procedure N5Click(Sender: TObject); + procedure CustNameMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); + procedure CustNamePropertiesCloseUp(Sender: TObject); + procedure Tv1DblClick(Sender: TObject); + procedure ToolButton5Click(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); + procedure TBAddClick(Sender: TObject); + procedure TBEditClick(Sender: TObject); + procedure Tv1Column12PropertiesChange(Sender: TObject); + private + FSCXDH: string; + procedure InitData(); + procedure ZDYHelp(FButn: TcxButtonEdit; LType: string); + function SaveData(): Boolean; + function getTMMNo(fconNo: string): string; + procedure InitImage1(); + procedure InitImage2(); + procedure LookImage(FileName: string); + procedure InitMXGrid(MTMSId: string); + procedure AddLine(); + { Private declarations } + public + PState, CopyInt, PriceFlag: Integer; + FTMMID, FTMMNo, MTMSId: string; + FXS: Integer; + btnFlag: Integer; + canshu1, canshu4: string; + fFlileFlag: string; + fordtype: string; + FName, FColor, FColorNo: string; + FTIMID: string; + FIncludeTax: Double; + { Public declarations } + end; + +var + frmTradeMarketInPut_XYTh: TfrmTradeMarketInPut_XYTh; + newh: hwnd; + +implementation + +uses + U_DataLink, U_ZDYHelp, U_ZDYHelpSel, U_RTFun, U_CompanySel, U_PictureUpload, + U_ProgressUpdate, U_ClothInfoSel, U_ComContactSel, U_TradeMarketList, + U_LabelPrint, U_TradeMarketQtyTHInPut; + + +{$R *.dfm} + +procedure TfrmTradeMarketInPut_XYTh.AddLine(); +var + i: Integer; + maxno: string; +begin + + i := cds_1.RecordCount; + i := i + 1; + + if GetLSNo(ADOTemp, maxno, 'TSS', 'Trade_Market_TH_SUB', 4, 1) = False then + begin + Application.MessageBox('ȡˮʧܣ', 'ʾ', 0); + Exit; + end; + with cds_1 do + begin + Append; + FieldByName('SerialNo').Value := IntToStr(i); + FieldByName('TMSId').Value := Trim(maxno); + FieldByName('TMSPiece').Value := 0; + FieldByName('TMSQty').Value := 0; + Post; + end; +end; + +procedure TfrmTradeMarketInPut_XYTh.InitImage1(); +begin + +end; + +procedure TfrmTradeMarketInPut_XYTh.InitImage2(); +begin + +end; + +function TfrmTradeMarketInPut_XYTh.getTMMNo(fconNo: string): string; +var + str1: string; + i: integer; +begin + str1 := trim(fconNo) + '01'; + with ADOTemp do + begin + close; + sql.Clear; + sql.Add('select TMMID from Trade_Plan_Main where TMMNo=' + quotedstr(trim(str1))); + open; + end; + if not ADOTemp.IsEmpty then + begin + for i := 1 to 99 do + begin + str1 := trim(fconNo) + rightstr(inttostr(100 + i), 2); + with ADOCmd do + begin + close; + sql.Clear; + sql.Add('select TMMID from Trade_Plan_Main where TMMNo=' + quotedstr(trim(str1))); + open; + end; + if ADOCmd.IsEmpty then + break; + end; + end; + result := str1; +end; + +procedure TfrmTradeMarketInPut_XYTh.TBAddClick(Sender: TObject); +begin + { CDS_1.Close; + InitData(); + SClearData(ScrollBox1, 2); //пؼ + CustName.Text := ''; + if CDS_1.IsEmpty then + begin + AddLine(); + end; } + PState := 0; + FTMMId := ''; + FormShow(Self); +end; + +procedure TfrmTradeMarketInPut_XYTh.TBCloseClick(Sender: TObject); +begin + + Close; + +end; + +procedure TfrmTradeMarketInPut_XYTh.TBEditClick(Sender: TObject); +begin +// if TBSave.Visible = False then +// begin + PState := 1; + FTMMId := self.FTMMId; + + TBSave.Enabled := true; + ScrollBox1.Enabled := True; + ToolBar2.Enabled := true; + ToolButton2.Enabled := True; + ToolButton1.Enabled := True; + N2.Visible := true; +// FormShow(Self); +// end; + +end; + +procedure TfrmTradeMarketInPut_XYTh.InitData(); +var + FDate: TDateTime; +begin + FDate := SGetServerDateTime(ADOTemp); + TMMDate.DateTime := FDate; + DlyDate.DateTime := FDate; + + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Trade_Market_TH_Main where TMMID=''' + Trim(FTMMID) + ''''); + Open; + end; + SCSHData(ADOTemp, ScrollBox1, 2); + SCSHData(ADOTemp, ScrollBox1, 5); + SCSHData(ADOTemp, ScrollBox1, 9); + SCSHData(ADOTemp, ScrollBox1, 7); + OurCoName.Properties.LookupItems.Text := Trim(ADOTemp.FieldByName('OurCoNo').AsString); + CustName.Hint := Trim(ADOTemp.FieldByName('CustNo').AsString); + CustName.Text := Trim(ADOTemp.FieldByName('CustName').AsString); + + with ADO_1 do + begin + Close; + SQL.Clear; + sql.Add('select A.*,StkQty =(select sum(isnull(X.StkQty,0)) from Bs_Cloth_IO X where X.C_Code=A.C_Code and X.C_Color=A.C_Color AND STKNAME='''') '); + SQL.Add(' -ISNULL((select sum(isnull(X.Qty,0)) from Trade_Market_Sub_Qty X INNER JOIN Trade_Market_TH_SUB F ON X.TMSID=F.TMSID INNER JOIN Trade_Market_TH_Main E ON E.TMMID=F.TMMID '); + sql.Add('where Store='''' and E.Status =''10'' AND F.C_Code=A.C_Code and F.C_Color=A.C_Color),0),SubOutQty =(select sum(isnull(X.Qty,0)) from Trade_Market_Sub_Qty X where X.TMSID=A.TMSID ) '); + sql.Add(',SubOutPS =(select count(isnull(X.TMSQID,0)) from Trade_Market_Sub_Qty X where X.TMSID=A.TMSID ) '); + sql.Add('from Trade_Market_TH_SUB A '); + SQL.adD('where 1=1 '); + if PState = 1 then + begin + sql.Add(' and A.TMMID=''' + Trim(FTMMID) + ''''); + end; + if PState = 0 then + begin + sql.Add(' and 1<>1'); + end; +// ShowMessage(SQL.TEXT); + Open; + + end; + SCreateCDS(ADO_1, CDS_1); + SInitCDSData(ADO_1, CDS_1); + + if PState = 0 then + begin + TMMDate.DateTime := SGetServerDateTime(ADOTemp); + DlyDate.DateTime := TMMDate.DateTime; + TMMNo.Text := ''; + TMMNo.Enabled := True; + end + else + begin + end; + if CopyInt = 99 then + begin + PState := 0; + FTMMID := ''; + TMMNo.Text := ''; + TMMNo.Enabled := True; + + TMMDate.DateTime := FDate; + + with CDS_1 do + begin + First; + while not Eof do + begin + Edit; + FieldByName('TMMID').Value := ''; + FieldByName('TMSId').Value := ''; + FieldByName('TMSPiece').Value := 0; + FieldByName('TMSQty').Value := 0; +// FieldByName('GangFee').Value := 0; +// FieldByName('Transfee').Value := 0; +// FieldByName('Otherfee').Value := 0; + Post; + Next; + end; + end; + + end; +end; + +procedure TfrmTradeMarketInPut_XYTh.ZDYHelp(FButn: TcxButtonEdit; LType: string); +var + FType, ZDYName, FText: string; +begin +end; + +procedure TfrmTradeMarketInPut_XYTh.FormClose(Sender: TObject; var Action: TCloseAction); +begin + inherited; + Action := CAFREE; +end; + +procedure TfrmTradeMarketInPut_XYTh.FormCreate(Sender: TObject); +begin + inherited; + OurCoName.Properties.LookupItems.Text := 'W0001'; + OurCoName.Text := ''; + try + with ADOConnection1 do + begin + Connected := false; + ConnectionString := DConString; + Connected := true; + end; + ADOQueryBaseCmd.Connection := ADOConnection1; + ADOQueryBaseTemp.Connection := ADOConnection1; + except + application.MessageBox('ʧܣ', 'ʾϢ'); + end; +end; + +procedure TfrmTradeMarketInPut_XYTh.FormShow(Sender: TObject); +var + i: Integer; +begin + inherited; + + with ADO_KH do + begin + close; + sql.Clear; + sql.Add(' select CoCode,CoAbbrName from BS_Company A left join BS_Company_contact B on A.COID = B.COID where CoType=''ͻ'' '); + + if Trim(canshu4) = '' then +// sql.Add(' and Stores='''' '); + sql.Add(' and stores='''' '); + + Open; + + CustName.Properties.LookupItems.Clear; + while not Eof do + begin + CustName.Properties.LookupItems.Add(Trim(ADO_KH.fieldByName('CoAbbrName').AsString)); + Next; + end; + CustName.ItemIndex := -1; + + SCreateCDS(ADO_KH, CDS_KH); + SInitCDSData(ADO_KH, CDS_KH); + end; + + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add(' exec P_BS_CloInfo_Hot '); + ExecSQL; + end; + readCxGrid(TRIM(SELF.Caption), Tv1, 'ָʾ'); + TMMNo.Text := ''; + fFlileFlag := UserDataFlag + 'HX'; + InitData(); + + if CDS_1.IsEmpty then + begin + AddLine(); +// AddLine(); +// AddLine(); +// AddLine(); +// AddLine(); + end; + + with ADO_PM do + begin + Close; + sql.Clear; + sql.Add(' SELECT distinct A.C_Code,A.C_Name,A.qtyunit,A.HotQty,StkQty = SUM(B.StkQty) '); + SQL.ADD(' FROM Bs_Cloth_Info A LEFT JOIN Bs_Cloth_Io B on A.C_Code=B.C_Code'); + sql.add(' where B.ioflag='''' '); + if Trim(canshu4) = '' then + sql.Add(' and isnull(STKNAME,'''')='''' '); + SQL.add('group by A.C_Code,A.C_Name,A.qtyunit,A.HotQty'); + SQL.ADD('order by A.C_Code '); + Open; + end; + with ADO_YS do + begin + Close; + sql.Clear; + sql.Add(' SELECT distinct A.C_Code,B.C_Color,B.C_ColorNo,B.referencePrice AS Price FROM Bs_Cloth_Info A inner join BS_Cloth_Info_Sub B on A.BCIID=B.BCIID '); + sql.Add(' where 1=2 '); + Open; + end; + + with ADO_RCPM do + begin + Close; + sql.Clear; + sql.Add(' SELECT distinct C_GYSNAME FROM BS_Cloth_Info_GYSCP '); + Open; + end; + with ADO_DanWei do + begin + Close; + sql.Clear; + sql.Add(' SELECT distinct A.C_Code,B.CICUnit FROM Bs_Cloth_Info A inner join Bs_Cloth_Info_Coefficient B on A.BCIID=B.BCIID '); + sql.Add(' where 2=1 '); + Open; + end; + +// frmTradeMarketlist := TfrmTradeMarketlist.Create(Application); +end; + +function TfrmTradeMarketInPut_XYTh.SaveData(): Boolean; +var + maxno, Smaxno, maxTMMNo, MaxFNo, MQZ, MTMMNo: string; +begin + try + ADOCmd.Connection.BeginTrans; + +///////////////////// /////////////////////////// + + if Trim(FTMMID) = '' then + begin + if GetLSNo(ADOCmd, maxno, 'TH', 'Trade_Market_TH_Main', 3, 1) = False then + raise Exception.Create('ȡʧ!'); + +// G50313001<-- G50313 001 +//(G+ 25ġ5(ÿһǰ 0-9ѭ)+0313()+001(,ᳬ999)) + + MQZ := 'T' + RightStr(Trim(FormatDateTime('yyMMdd', SGetServerDate(ADOTemp))), 6); + if GetLSNo(ADOCmd, MTMMNo, MQZ, 'Trade_Market_TH_Main', 3, 0) = False then + raise Exception.Create('ȡʧ!'); + TMMNo.Text := MTMMNo; + + end + else + begin + maxno := Trim(FTMMID); + end; + + with ADOCmd do + begin + Close; + sql.Clear; + SQL.Add('select * from Trade_Market_TH_Main where TMMID=''' + Trim(FTMMID) + ''''); + Open; + end; + with ADOCmd do + begin + if Trim(FTMMID) = '' then + begin + Append; + FieldByName('FillId').Value := Trim(DCode); + FieldByName('Filler').Value := Trim(DName); + if btnFlag = 1 then // + FieldByName('status').Value := Trim('10'); + if btnFlag = 5 then //ύ + FieldByName('status').Value := Trim('1'); + end + else + begin + Edit; + FieldByName('EditId').Value := Trim(DCode); + FieldByName('Editer').Value := Trim(DName); + FieldByName('EditTime').Value := SGetServerDateTime(ADOTemp); + + end; + RTSetsavedata(ADOCmd, 'Trade_Market_TH_Main', ScrollBox1, 2); + FieldByName('TMMID').Value := Trim(maxno); + FieldByName('OurCoNo').Value := Trim(OurCoName.Properties.LookupItems.Text); + FieldByName('CustNo').Value := Trim(CustName.Hint); + FieldByName('CustName').Value := Trim(CustName.Text); + FieldByName('Store').Value := Trim(canshu4); + Post; + end; + +///////////////////// /////////////////////////// +///////////////////// ӱ /////////////////////////// + with CDS_1 do + begin + First; + while not Eof do + begin + if Trim(CDS_1.fieldbyname('TMSId').AsString) = '' then + begin + if GetLSNo(ADOCmd, Smaxno, 'JS', 'Trade_Market_TH_SUB', 4, 1) = False then + raise Exception.Create('ȡˮʧ!'); + end + else + begin + Smaxno := Trim(CDS_1.fieldbyname('TMSId').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from Trade_Market_TH_SUB where TMMID=''' + Trim(maxno) + ''''); + sql.Add(' and TMSId=''' + Trim(Smaxno) + ''''); + Open; + end; + with ADOCmd do + begin + if Trim(CDS_1.fieldbyname('TMSId').AsString) = '' then + Append + else + Edit; + RTSetSaveDataCDS(ADOCmd, Tv1, CDS_1, 'Trade_Market_TH_SUB', 0); + //RTSetSaveDataCDS(ADOCmd, Tv1, CDS_1, 'Trade_Market_Sub_Qty', 2); + //RTSetsavedata(ADOCmd, 'Trade_Market_Sub', ScrollBox1, 7); + FieldByName('TMMID').Value := Trim(maxno); + FieldByName('TMSId').Value := Trim(Smaxno); + Post; + end; + Next; + end; + end; +///////////////////// ӱ /////////////////////////// + + + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('select * from Trade_Market_TH_Main where TMMNo=''' + Trim(TMMNo.Text) + ''''); + Open; + end; + if ADOCmd.RecordCount > 1 then + raise Exception.Create('ظ!'); + + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('select C_Code,C_Color,C_ColorNo,CF=count(TMSID) from Trade_Market_TH_SUB where TMMID=''' + Trim(maxno) + ''''); + sql.Add('group by C_Code,C_Color,C_ColorNo HAVING count(TMSID)>1 '); + Open; + end; + if not ADOCmd.IsEmpty then + raise Exception.Create('ɫظ!'); + + FTMMID := Trim(maxno); + ADOCmd.Connection.CommitTrans; + + TradeMarketProgressUpdateByTMMID(ADOCmd, FTMMID); + + with ADO_1 do + begin + Close; + SQL.Clear; + sql.Add(' select * from Trade_Market_TH_SUB where TMMID=''' + Trim(FTMMID) + ''''); + Open; + end; + SCreateCDS(ADO_1, CDS_1); + SInitCDSData(ADO_1, CDS_1); + Result := True; //ӡ + if (btnFlag = 2) or (btnFlag = 4) then + begin + try + frmLabelPrint := TfrmLabelPrint.Create(Application); + with frmLabelPrint do + begin + if canshu4 = '' then + FLMType := 'TradePlanPrintxy' + else + FLMType := 'TradePlanPrint'; + FFiltration1 := Trim(maxno); + if ShowModal = 1 then + begin + // Self.InitGrid(); + end; + end; + finally + frmLabelPrint.Free; + end; + end; + if btnFlag = 3 then // + begin + PState := 0; + FTMMId := ''; + FormShow(Self); +// CDS_1.Close; +// InitData(); +// SClearData(ScrollBox1, 2); //пؼ +// CustName.Text := ''; +// if CDS_1.IsEmpty then +// begin +// AddLine(); +// end; + end; + except + Result := False; + ADOCmd.Connection.RollbackTrans; + application.MessageBox(PChar(Exception(ExceptObject).Message), 'ʾϢ', 0); + end; +end; + +procedure TfrmTradeMarketInPut_XYTh.TBSaveClick(Sender: TObject); +var + MAXNO1: string; +begin + + ToolBar1.SetFocus; + with cds_1 do + begin + while cds_1.Locate('C_Code', null, []) do + begin + cds_1.Delete + end; + end; + + if trim(CustName.Text) = '' then + begin + Application.MessageBox('ͻΪ!', 'ʾ', 0); + Exit; + end; + if THTYPE.Text = '' then + begin + Application.MessageBox('˻ͲΪ!', 'ʾ', 0); + Exit; + end; + if CDS_1.IsEmpty then + begin + Application.MessageBox('ϸΪ!', 'ʾ', 0); + Exit; + end; + + if CDS_1.Locate('OrderUnit', null, []) then + begin + Application.MessageBox('λΪ!', 'ʾ', 0); + Exit; + end; + + if CDS_1.Locate('TMSQty', null, []) then + begin + Application.MessageBox('Ϊ!', 'ʾ', 0); + Exit; + end; + + if CDS_1.Locate('C_Color', null, []) then + begin + Application.MessageBox('ɫΪ!', 'ʾ', 0); + Exit; + end; + + +// if CDS_1.Locate('OrderQty', null, []) then +// begin +// Application.MessageBox('Ϊ!', 'ʾ', 0); +// Exit; +// end; +// if CDS_1.Locate('OrderUnit', null, []) then +// begin +// Application.MessageBox('λΪ!', 'ʾ', 0); +// Exit; +// end; + if CDS_1.Locate('Price', null, []) then + begin + Application.MessageBox('۲Ϊ!', 'ʾ', 0); + Exit; + end; + if not CDS_KH.Locate('CoAbbrName', self.CustName.Text, []) then + begin + Application.MessageBox('ͻ!', 'ʾ', 0); + Exit; + end + else + begin + self.CustName.Properties.LookupItems.Text := Trim(CDS_KH.fieldbyname('CoCode').AsString); + end; + + if SaveData() then + begin + + Application.MessageBox('ɹ', 'ʾ', 0); + if btnFlag = 4 then //ӡ˳ + ModalResult := 1; + end; +end; + +procedure TfrmTradeMarketInPut_XYTh.ToolButton1Click(Sender: TObject); +begin + + AddLine(); +end; + +procedure TfrmTradeMarketInPut_XYTh.ToolButton2Click(Sender: TObject); +begin + if CDS_1.IsEmpty then + Exit; + if CDS_1.Locate('SSel', True, []) = False then + begin + Application.MessageBox('ûѡ!', 'ʾ', 0); + Exit; + end; + if Application.MessageBox('ȷҪɾѡ', 'ʾ', 32 + 4) <> IDYES then + exit; + CDS_1.DisableControls; + with CDS_1 do + begin + First; + while Locate('SSel', True, []) do + begin + if Trim(CDS_1.fieldbyname('TMSId').AsString) <> '' then + begin + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('delete Trade_Market_TH_SUB where TMSId=''' + Trim(CDS_1.fieldbyname('TMSId').AsString) + ''''); + + ExecSQL; + end; + end; + Delete; + end; + end; + CDS_1.EnableControls; + +end; + +procedure TfrmTradeMarketInPut_XYTh.ToolButton3Click(Sender: TObject); +begin + WriteCxGrid(TRIM(SELF.Caption), Tv1, 'ָʾ'); + +end; + +procedure TfrmTradeMarketInPut_XYTh.ToolButton4Click(Sender: TObject); +begin + + try + frmTradeMarketQtyTHnPut := tfrmTradeMarketQtyTHnPut.Create(Application); + with frmTradeMarketQtyTHnPut do + begin + MTMSId := Trim(Self.cds_1.fieldbyname('TMSId').AsString); + + if ShowModal = 1 then + begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('SELECT TT=SUM(Qty) FROM Trade_Market_Sub_Qty where TMSId=''' + Trim(CDS_1.fieldbyname('TMSId').AsString) + ''''); + + OPEN; + end; + if ADOQueryTemp.IsEmpty = FALSE then + begin + with Self.CDS_1 do + begin + Edit; + SELF.CDS_1.FieldByName('OrderQty').Value := ADOQueryTemp.FieldByName('TT').AsFloat; + Post; + end; + end; + +// Self.InitMXGrid(Self.MTMSQID); + end; + end; + finally + frmTradeMarketQtyTHnPut.Free; + end; + +end; + +procedure TfrmTradeMarketInPut_XYTh.ToolButton5Click(Sender: TObject); +begin + if CDS_1.IsEmpty then + Exit; + OneKeyPost(Tv1, CDS_1); +end; + +procedure TfrmTradeMarketInPut_XYTh.edtGYBtnUpClick(Sender: TObject); +var + fsj: string; + FWZ: Integer; + i: integer; +begin +// fsj := Trim(TBtnEditC(Sender).Hint); +// FWZ := Pos('/', fsj); +// i := 0; +// try +// frmZDYHelpSel := TfrmZDYHelpSel.Create(Application); +// with frmZDYHelpSel do +// begin +// flag := Copy(fsj, 1, FWZ - 1); +// flagname := Copy(fsj, FWZ + 1, Length(fsj) - FWZ); +// if ShowModal = 1 then +// begin +// TBtnEditC(Sender).text := ''; +// with ClientDataSet1 do +// begin +// First; +// while not Eof do +// begin +// if FieldByName('SSel').AsBoolean = True then +// begin +// i := i + 1; +// if TBtnEditC(Sender).text = '' then +// TBtnEditC(Sender).text := FieldByName('ZDYName').AsString +// else +// TBtnEditC(Sender).text := TBtnEditC(Sender).text + ',' + FieldByName('ZDYName').AsString; //inttostr(i)+'.'+ +// end; +// Next; +// end; +// end; +// end; +// end; +// finally +// frmZDYHelpSel.Free; +// end; +end; + +procedure TfrmTradeMarketInPut_XYTh.TechnicsBtnDnClick(Sender: TObject); +begin + TcxButtonEdit(Sender).Text := ''; + TcxButtonEdit(Sender).Properties.LookupItems.Text := ''; +end; + +procedure TfrmTradeMarketInPut_XYTh.TechnicsBtnUpClick(Sender: TObject); +var + fsj: string; + FWZ: Integer; +begin + fsj := Trim(TcxTextEdit(Sender).Hint); + FWZ := Pos('/', fsj); + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := Copy(fsj, 1, FWZ - 1); + flagname := Copy(fsj, FWZ + 1, Length(fsj) - FWZ); + if ShowModal = 1 then + begin + TcxTextEdit(Sender).Text := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; + +end; + +procedure TfrmTradeMarketInPut_XYTh.CustNameMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + if not ADO_YS.IsEmpty then + begin + if ADO_YS.FieldByName('C_Code').AsString <> CDS_1.FieldByName('C_Code').AsString then + begin + with ADO_YS do + begin + Close; + sql.Clear; + sql.Add(' SELECT DISTINCT A.C_Code,B.C_Color,B.C_ColorNo,B.referencePrice AS Price FROM Bs_Cloth_Info A inner join BS_Cloth_Info_Sub B on A.BCIID=B.BCIID '); + sql.Add(' where A.C_Code= ' + QuotedStr(CDS_1.FieldByName('C_Code').AsString)); + SQL.ADD(' order by B.C_ColorNo'); + //ShowMessage(sql.text); + Open; + end; + end; + end + else + begin + with ADO_YS do + begin + Close; + sql.Clear; + sql.Add(' SELECT DISTINCT A.C_Code,B.C_Color,B.C_ColorNo,B.referencePrice AS Price FROM Bs_Cloth_Info A inner join BS_Cloth_Info_Sub B on A.BCIID=B.BCIID '); + sql.Add(' where A.C_Code= ' + QuotedStr(CDS_1.FieldByName('C_Code').AsString)); + SQL.ADD(' order by B.C_ColorNo'); + Open; + end; + end; +end; + +procedure TfrmTradeMarketInPut_XYTh.CustNamePropertiesChange(Sender: TObject); +begin + inherited; + if CDS_KH.Locate('CoAbbrName', Trim(self.CustName.Text), []) then + begin + self.CustName.Hint := Trim(CDS_KH.fieldbyname('CoCode').AsString); + end; +end; + +procedure TfrmTradeMarketInPut_XYTh.CustNamePropertiesCloseUp(Sender: TObject); +begin + inherited; + with ADOtemp do + begin + Close; + sql.Clear; + sql.Add('select A.*,B.* '); + sql.Add(',BankName=(select top 1 BankName from Bs_Company_Bank X where X.CoID=A.CoID ) '); + sql.Add(',ContactsId=(select top 1 UserID from SY_User X where X.UserName=B.Contacts ) '); + sql.Add('from BS_Company A '); + sql.Add('left join BS_Company_contact B ON A.COID=B.COID and B.IsDefault=1 '); + sql.Add('where 1=1 '); + sql.Add(' and A.CoType=''' + Trim('ͻ') + ''''); +// if Trim(FAuthority) = 'ҵ' then +// begin +// sql.Add(' and ( SalesId=' + quotedstr(trim(DCode)) + ' or exists (select * from [dbo].[F_Tool_SplitString](TallyId,'','') X where X.RTValue =' + quotedstr(trim(DCode)) + '))'); +// end; + if canshu4 = '' then + sql.Add(' and A.Stores=''' + Trim('') + ''''); + sql.Add(' and A.CoAbbrName=''' + Trim(CustName.Text) + ''''); + Open; + end; + self.ShippingAddress.Text := Trim(adotemp.fieldbyname('mxaddress').AsString); + self.CONTACT.Text := Trim(adotemp.fieldbyname('Telephone').AsString); + +end; + +procedure TfrmTradeMarketInPut_XYTh.cxDBImage1DblClick(Sender: TObject); +begin + if TcxDBImage(Sender).Picture.Height = 0 then + exit; + LookImage(ADO_I1.fieldbyname(TcxDBImage(Sender).Hint).asstring); +end; + +procedure TfrmTradeMarketInPut_XYTh.LookImage(FileName: string); +var + sFieldName: string; +begin + + sFieldName := leftbstr(ExtractFilePath(Application.ExeName), 1) + ':\ͼƬ鿴'; + + if not DirectoryExists(pchar(sFieldName)) then + CreateDirectory(pchar(sFieldName), nil); + + sFieldName := sFieldName + '\' + trim(FileName); + + try + IdFTP1.Host := ReadINIFileStr('SYSTEMSET.INI', 'SERVER', 'ַ', '127.0.0.1'); + IdFTP1.Username := 'three'; + IdFTP1.Password := '641010'; + IdFTP1.Connect(); + except + ; + end; + + if IdFTP1.Connected then + begin + try + IdFTP1.Get(fFlileFlag + '\' + Trim(FileName), sFieldName, true, false); + except + Application.MessageBox('ͻͼļ', 'ʾ', MB_ICONWARNING); + IdFTP1.Quit; + Exit; + end; + end + else + begin + Application.MessageBox('޷ļ', 'ʾ', MB_ICONWARNING); + IdFTP1.Quit; + Exit; + end; + if IdFTP1.Connected then + IdFTP1.Quit; + ShellExecute(Handle, 'open', PChar(sFieldName), '', '', SW_SHOWNORMAL); +end; + +procedure TfrmTradeMarketInPut_XYTh.N1Click(Sender: TObject); +begin + btnFlag := 1; + TBSaveClick(Sender); +end; + +procedure TfrmTradeMarketInPut_XYTh.N2Click(Sender: TObject); +begin + btnFlag := 2; + TBSaveClick(Sender); +end; + +procedure TfrmTradeMarketInPut_XYTh.N3Click(Sender: TObject); +begin + btnFlag := 3; + TBSaveClick(Sender); +end; + +procedure TfrmTradeMarketInPut_XYTh.N4Click(Sender: TObject); +begin + btnFlag := 4; + TBSaveClick(Sender); +end; + +procedure TfrmTradeMarketInPut_XYTh.N5Click(Sender: TObject); +begin + btnFlag := 5; + TBSaveClick(Sender); +end; + +procedure TfrmTradeMarketInPut_XYTh.OurCoNameDblClick(Sender: TObject); +begin + TcxButtonEdit(Sender).Text := ''; + TcxButtonEdit(Sender).Properties.LookupItems.Text := ''; +end; + +procedure TfrmTradeMarketInPut_XYTh.OurCoNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + try + frmCompanySel := TfrmCompanySel.Create(Application); + with frmCompanySel do + begin + FCoType := '˾'; + if ShowModal = 1 then + begin + self.OurCoName.Properties.LookupItems.Text := Trim(frmCompanySel.CDS_1.fieldbyname('CoCode').AsString); + self.OurCoName.Text := Trim(frmCompanySel.CDS_1.fieldbyname('CoAbbrName').AsString); + end; + end; + + finally + frmCompanySel.Free; + end; +end; + +procedure TfrmTradeMarketInPut_XYTh.v1OrderUnitPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +var + mvalues: string; +begin + mvalues := tv1.Columns[tv1.Controller.FocusedColumn.index].DataBinding.FieldName; + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := 'OrderUnit'; + flagname := 'λ'; + if ShowModal = 1 then + begin + Self.CDS_1.Edit; + Self.CDS_1.FieldByName(mvalues).Value := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmTradeMarketInPut_XYTh.v1OrderUnitPropertiesEditValueChanged(Sender: TObject); +var + mvalue, FFieldName, YValue: string; + FDDQty, FCPCDXS, FQty, FDKCQty: Double; +begin + mvalue := TcxComboBox(Sender).EditingText; //仯λ + FFieldName := Trim(Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_1 do + begin + + Edit; + FieldByName(FFieldName).Value := mvalue; + Post; + YValue := FieldByName('DDQtyUnit').AsString; //ԭλ=λ + FDDQty := FieldByName('DDQty').AsFloat; // + FCPCDXS := FieldByName('CPCDXS').AsFloat; + FDKCQty := FieldByName('DKCQty').AsFloat; + FQty := FieldByName('PRTOrderQty').AsFloat; + end; + if mvalue = 'Kg' then + begin + if YValue = 'Y' then + begin + FQty := FDDQty * 0.9144 / FCPCDXS; + end; + if YValue = 'M' then + begin + FQty := FDDQty / FCPCDXS; + end; + if YValue = 'Kg' then + begin + FQty := FDDQty; + end; + end; + + if mvalue = 'M' then + begin + if YValue = 'Y' then + begin + FQty := FDDQty * 0.9144; + end; + if YValue = 'Kg' then + begin + FQty := FDDQty * FCPCDXS; + end; + if YValue = 'M' then + begin + FQty := FDDQty; + end; + end; + if mvalue = 'Y' then + begin + if YValue = 'M' then + begin + FQty := FDDQty / 0.9144; + end; + if YValue = 'Kg' then + begin + FQty := FDDQty * FCPCDXS / 0.9144; + end; + if YValue = 'Y' then + begin + FQty := FDDQty; + end; + end; + + with CDS_1 do + begin + Edit; + FieldByName('PRTOrderQty').Value := FQty - FDKCQty; + Post; + end; + + Tv1.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmTradeMarketInPut_XYTh.v1PriceUnitPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := 'PriceUnit'; + flagname := '۸λ'; + if Trim(DParameters1) <> 'Ȩ' then + begin + TBAdd.Visible := False; + TBEdit.Visible := False; + TBDel.Visible := False; + end; + + if ShowModal = 1 then + begin + Self.CDS_1.Edit; + Self.CDS_1.FieldByName('PriceUnit').Value := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmTradeMarketInPut_XYTh.ScrollBox1Click(Sender: TObject); +begin + TMMDate.SetFocus; +end; + +procedure TfrmTradeMarketInPut_XYTh.ShippingAddressPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + + try + frmComContactSel := TfrmComContactSel.Create(Application); + with frmComContactSel do + begin + FCoCode := Trim(self.CustName.Hint); + if ShowModal = 1 then + begin + self.ShippingAddress.Text := Trim(frmComContactSel.CDS_1.fieldbyname('mxaddress').AsString); + self.CONTACT.Text := Trim(frmComContactSel.CDS_1.fieldbyname('PhoneNumber').AsString); + end; + end; + finally + frmComContactSel.Free; + end; +end; + +procedure TfrmTradeMarketInPut_XYTh.StkPositionPropertiesButtonClick(Sender: TObject); +begin + try + frmCompanySel := TfrmCompanySel.Create(Application); + with frmCompanySel do + begin + FCoType := 'ͻ'; + FStores := Trim(canshu4); + FsqlStr := ' and stores = ' + QuotedStr(Trim(canshu4)); + if ShowModal = 1 then + begin + self.CustName.Hint := Trim(frmCompanySel.CDS_1.fieldbyname('CoCode').AsString); + self.CustName.Text := Trim(frmCompanySel.CDS_1.fieldbyname('CoAbbrName').AsString); + self.ShippingAddress.Text := Trim(frmCompanySel.CDS_1.fieldbyname('mxaddress').AsString); + self.CONTACT.Text := Trim(frmCompanySel.CDS_1.fieldbyname('Telephone').AsString); + + end; + end; + + finally + frmCompanySel.Free; + end; +end; + +procedure TfrmTradeMarketInPut_XYTh.PackNoteDblClick(Sender: TObject); +var + fsj: string; + FWZ: Integer; + i: integer; +begin + fsj := Trim(TMemo(Sender).Hint); + FWZ := Pos('/', fsj); + i := 0; + try + frmZDYHelpSel := TfrmZDYHelpSel.Create(Application); + with frmZDYHelpSel do + begin + flag := Copy(fsj, 1, FWZ - 1); + flagname := Copy(fsj, FWZ + 1, Length(fsj) - FWZ); + if ShowModal = 1 then + begin + TMemo(Sender).Lines.Clear; + with ClientDataSet1 do + begin + First; + while not Eof do + begin + if FieldByName('SSel').AsBoolean = True then + begin + i := i + 1; + TMemo(Sender).Lines.Add(FieldByName('ZDYName').AsString) //inttostr(i)+'.'+ + end; + Next; + end; + end; + end; + end; + finally + frmZDYHelpSel.Free; + end; +end; + +procedure TfrmTradeMarketInPut_XYTh.QtyMXKeyPress(Sender: TObject; var Key: Char); +var + MaxNo: string; +begin + if Key = #13 then + begin + if Label38.Caption = '' then + begin + Application.MessageBox('ѡ', 'ʾ', 0); + Exit; + end; + if StrTofloatDef(QtyMX.Text, 0) = 0 then + Exit; + if GetLSNo(ADOTemp, MaxNo, 'MX', 'Trade_Market_Sub_Qty', 4, 1) = False then + begin + Application.MessageBox('ȡʧ!', 'ʾ', 0); + Exit; + end; + try + ADOCmd.Connection.BeginTrans; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('insert into Trade_Market_Sub_Qty (TMSQID,TMSId,TMMID,Qty)'); + sql.Add('values(' + quotedstr(Trim(MaxNo))); + sql.Add(',' + quotedstr(Trim(MTMSId))); + sql.Add(',' + quotedstr(Trim(FTMMID))); + sql.Add(',' + QtyMX.Text); + sql.Add(')'); + ExecSQL; + end; + ADOCmd.Connection.CommitTrans; + + with CDS_MX do + begin + Append; + FieldByName('TMSQID').Value := MaxNo; + FieldByName('TMSId').Value := MTMSId; + FieldByName('TMMId').Value := FTMMId; + FieldByName('Qty').Value := QtyMX.Text; + post; + end; + except + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('ʧ!', 'ʾ', 0); + end; + QtyMX.Text := ''; + TvMX.Controller.EditingController.ShowEdit(); + end; + with cds_1 do + begin + edit; + if CDS_MX.IsEmpty then + begin + Fieldbyname('TMSPiece').Value := 0; + Fieldbyname('TMSQty').Value := 0; + end + else + begin + Fieldbyname('TMSPiece').Value := TvMX.DataController.Summary.FooterSummaryValues[1]; + Fieldbyname('TMSQty').Value := TvMX.DataController.Summary.FooterSummaryValues[0]; + end; + + post; + end; +end; + +procedure TfrmTradeMarketInPut_XYTh.Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); +var + AColumn: TcxGridColumn; +begin + AColumn := TcxGridColumn(ACellViewInfo.Item); + // QTYеName + if AColumn.Name = 'Tv1Column15' then + begin + ToolButton4.Click; + end; +end; + +procedure TfrmTradeMarketInPut_XYTh.Tv1Column12PropertiesChange(Sender: TObject); +var + sInput: string; + ACombo: TcxLookupComboBox; +begin + inherited; + ACombo := TcxLookupComboBox(Sender); + sInput := Trim(ACombo.Text); // ȡ + if CDS_1.FieldByName('C_CODE').AsString = '' then + EXIT; + + with ADO_YS do + begin + Close; + sql.Clear; + sql.Add(' SELECT * '); + sql.Add(' FROM V_COLOR_VIEW A WHERE 1=1 and C_CODE= ' + QuotedStr(CDS_1.FieldByName('C_CODE').AsString)); + + if sInput <> '' then + begin + sql.Add(Format(' AND A.C_ColorNo LIKE ''%%%s%%'' ', [sInput])); + // ? ؼDISTINCT ¾ԲֻŲѯֵֶΣ + sql.Add(Format(' ORDER BY CASE WHEN A.C_ColorNo = ''%s'' THEN 0 ELSE 1 END, A.C_ColorNo ', [sInput])); + + end + else + begin +// sql.Add(' AND C_CODE= ' + QuotedStr(CDS_1.FieldByName('C_CODE').AsString)); + end; +// ShowMessage(SQL.Text); + Open; + end; +end; + +procedure TfrmTradeMarketInPut_XYTh.Tv1Column12PropertiesEditValueChanged(Sender: TObject); +var + mvalue, FFieldName: string; +begin + with ADOTemp do + begin + close; + sql.Clear; + sql.Add(' select isnull(IncludeTax,0)IncludeTax from Bs_Company a '); + sql.Add('where CoCode=' + QuotedStr(CustName.hint)); + open; + end; + + FIncludeTax := ADOTemp.Fieldbyname('IncludeTax').asfloat; + + FFieldName := Trim(Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName); + mvalue := TcxTextEdit(Sender).EditingText; + + with CDS_1 do + begin + Edit; + FieldByName(FFieldName).Value := Trim(mvalue); + Post; + ADO_YS.Locate('C_ColorNo', mvalue, []); + Edit; + FieldByName('C_Color').Value := ADO_YS.FieldByName('C_Color').Value; + FieldByName('price').Value := ADO_YS.FieldByName('price').Value * (1 + (FIncludeTax / 100)); + FieldByName('referencePrice').Value := ADO_YS.FieldByName('Price').Value; + + Post; + + + + // µǰ¼ +// CDS_1.Edit; +//// CDS_1.FieldByName('StkQty').Value := ADOTemp.FieldByName('StkQty').AsFloat; +// CDS_1.Post; + end; + + with ADOTemp do + begin + close; + sql.Clear; + sql.Add(' SELECT top 1 isnull(Price,0) as Lastprice FROM Trade_Market_TH_MAIN A inner join Trade_Market_TH_SUB B on A.TMMId=B.TMMId '); + sql.Add('where A.CustName=' + QuotedStr(CustName.Text)); + sql.Add('and B.C_ColorNo=' + QuotedStr(CDS_1.FieldByName('C_ColorNo').AsString)); + sql.add('order by A.filltime desc'); + open; + end; + if ADOTemp.IsEmpty = false then + begin + with Self.CDS_1 do + begin + edit; + Fieldbyname('Lastprice').AsString := trim(ADOTemp.Fieldbyname('Lastprice').AsString); + Post; + end; + end; +end; + +procedure TfrmTradeMarketInPut_XYTh.Tv1Column1PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + inherited; + try + frmClothInfoSel := TfrmClothInfoSel.Create(Application); + with frmClothInfoSel do + begin +// xzflag := 0; +// kcflag := 1; + if ShowModal = 1 then + begin + with Self.CDS_1 do + begin + edit; + Fieldbyname('C_Code').AsString := trim(frmClothInfoSel.CDS_1.Fieldbyname('C_Code').AsString); + Fieldbyname('C_Name').AsString := trim(frmClothInfoSel.CDS_1.Fieldbyname('C_Name').AsString); + Fieldbyname('C_Spec').AsString := trim(frmClothInfoSel.CDS_1.Fieldbyname('C_Spec').AsString); + Fieldbyname('C_Composition').AsString := trim(frmClothInfoSel.CDS_1.Fieldbyname('C_Composition').AsString); + Fieldbyname('C_Width').AsString := trim(frmClothInfoSel.CDS_1.Fieldbyname('C_Width').AsString); + Fieldbyname('C_GramWeight').AsString := trim(frmClothInfoSel.CDS_1.Fieldbyname('C_GramWeight').AsString); + + Fieldbyname('C_ColorNo').value := trim(frmClothInfoSel.CDS_1.Fieldbyname('C_ColorNo').AsString); + Fieldbyname('C_Color').value := trim(frmClothInfoSel.CDS_1.Fieldbyname('C_Color').AsString); + Fieldbyname('C_Pattern').value := trim(frmClothInfoSel.CDS_1.Fieldbyname('C_Pattern').AsString); + post; + end; + + end; + end; + finally + frmClothInfoSel.Free; + end; + +end; + +procedure TfrmTradeMarketInPut_XYTh.Tv1Column4PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + + try + frmPictureUpload := TfrmPictureUpload.create(self); + with frmPictureUpload do + begin + fFlileFlag := self.fFlileFlag; + FDataId := Trim(self.CDS_1.fieldbyname('AttName').AsString); + FPictureName := Trim(self.CDS_1.fieldbyname('AttName').AsString); + FWidth := 450; + FHeight := 600; + FTFType := 'HX'; + if showmodal = 1 then + begin + with self.CDS_1 do + begin + Edit; + Fieldbyname('AttName').Value := frmPictureUpload.FPictureName; + Post; + end; + end; + end; + finally + frmPictureUpload.free; + end; + +end; + +procedure TfrmTradeMarketInPut_XYTh.Tv1Column7PropertiesEditValueChanged(Sender: TObject); +var + mvalue, FFieldName: string; +begin + FFieldName := Trim(Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName); + mvalue := TcxTextEdit(Sender).EditingText; + + with CDS_1 do + begin + + Edit; + FieldByName(FFieldName).Value := Trim(mvalue); + Post; + ADO_PM.Locate('C_Name', mvalue, []); + Edit; + FieldByName('C_Code').Value := ADO_PM.FieldByName('C_Code').Value; + FieldByName('OrderUnit').Value := ADO_PM.FieldByName('qtyunit').Value; + +// FieldByName('StkQty').Value := ADO_PM.FieldByName('StkQty').Value; + + Post; + end; + if not ADO_YS.IsEmpty then + begin + if ADO_YS.FieldByName('C_Code').AsString <> CDS_1.FieldByName('C_Code').AsString then + begin + with ADO_YS do + begin + Close; + sql.Clear; + sql.Add(' SELECT DISTINCT A.C_Code,B.C_Color,B.C_ColorNo,B.referencePrice AS Price FROM Bs_Cloth_Info A inner join BS_Cloth_Info_Sub B on A.BCIID=B.BCIID '); + + sql.Add(' where A.C_Code= ' + QuotedStr(CDS_1.FieldByName('C_Code').AsString)); + SQL.ADD(' order by B.C_ColorNo'); + Open; + end; + end; + end + else + begin + with ADO_YS do + begin + Close; + sql.Clear; + sql.Add(' SELECT DISTINCT A.C_Code,B.C_Color,B.C_ColorNo,B.referencePrice AS Price FROM Bs_Cloth_Info A inner join BS_Cloth_Info_Sub B on A.BCIID=B.BCIID '); + + sql.Add(' where A.C_Code= ' + QuotedStr(CDS_1.FieldByName('C_Code').AsString)); + SQL.ADD(' order by B.C_ColorNo'); + Open; + end; + end; +// with ADOTemp do +// begin +// close; +// sql.Clear; +// sql.Add(' select * from bs_cloth_info a inner join BS_Cloth_Info_GYSCP b on a.bciid=b.bciid '); +// sql.Add('where c_name=' + QuotedStr(CDS_1.FieldByName('C_name').AsString)); +// sql.Add('and factoryname=' + QuotedStr(CustName.Text)); +// +// open; +// end; +// if ADOTemp.IsEmpty = false then +// begin +// with Self.CDS_1 do +// begin +// edit; +// Fieldbyname('C_GYSNAME').AsString := trim(ADOTemp.Fieldbyname('C_GYSNAME').AsString); +// Post; +// end; +// +// end; + +end; + +procedure TfrmTradeMarketInPut_XYTh.Tv1DblClick(Sender: TObject); +var + MTMSQID: string; +begin + +// try +// frmTradeMarketQtyTHnPut := tfrmTradeMarketQtyTHnPut.Create(Application); +// with frmTradeMarketQtyTHnPut do +// begin +// MTMSId := self.MTMSId; +// FTMMID := Self.FTMMID; +// if ShowModal = 1 then +// begin +//// Self.InitMXGrid(Self.MTMSQID); +// end; +// end; +// finally +// frmTradeMarketQtyTHnPut.Free; +// end; + +end; + +procedure TfrmTradeMarketInPut_XYTh.Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); +begin + inherited; + Label38.Caption := 'ţ' + Trim(cds_1.fieldbyname('SerialNo').AsString); + MTMSId := Trim(cds_1.fieldbyname('TMSId').AsString); + InitMXGrid(MTMSId); +end; + +procedure TfrmTradeMarketInPut_XYTh.Tv1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + + if not ADO_YS.IsEmpty then + begin + if ADO_YS.FieldByName('C_Code').AsString <> CDS_1.FieldByName('C_Code').AsString then + begin + with ADO_YS do + begin + Close; + sql.Clear; + sql.Add(' SELECT DISTINCT A.C_Code,B.C_Color,B.C_ColorNo,B.referencePrice AS Price FROM Bs_Cloth_Info A inner join BS_Cloth_Info_Sub B on A.BCIID=B.BCIID '); + + sql.Add(' where A.C_Code= ' + QuotedStr(CDS_1.FieldByName('C_Code').AsString)); + SQL.ADD(' order by B.C_ColorNo'); + Open; + end; + end; + end + else + begin + with ADO_YS do + begin + Close; + sql.Clear; + sql.Add(' SELECT DISTINCT A.C_Code,B.C_Color,B.C_ColorNo,B.referencePrice AS Price FROM Bs_Cloth_Info A inner join BS_Cloth_Info_Sub B on A.BCIID=B.BCIID '); + + sql.Add(' where A.C_Code= ' + QuotedStr(CDS_1.FieldByName('C_Code').AsString)); + SQL.ADD(' order by B.C_ColorNo'); + Open; + end; + end; + + if not ADO_DanWei.IsEmpty then + begin + if ADO_DanWei.FieldByName('C_Code').AsString <> CDS_1.FieldByName('C_Code').AsString then + begin + with ADO_DanWei do + begin + Close; + sql.Clear; + sql.Add(' EXEC P_Cloth_GetCICUnit @C_Code= ' + QuotedStr(CDS_1.FieldByName('C_Code').AsString)); + Open; + end; + end; + end + else + begin + with ADO_DanWei do + begin + Close; + sql.Clear; + sql.Add(' EXEC P_Cloth_GetCICUnit @C_Code= ' + QuotedStr(CDS_1.FieldByName('C_Code').AsString)); + Open; + end; + end; + + +// Bs_Cloth_Info_Coefficient +end; + +procedure TfrmTradeMarketInPut_XYTh.TvMXCellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); +begin + inherited; + if ToolBar2.Enabled = False then + Exit; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('delete Trade_Market_Sub_Qty where TMSQID=' + quotedstr(Trim(CDS_MX.FieldByName('TMSQID').AsString))); + ExecSQL; + end; + +// with ADOCmd do +// begin +// close; +// sql.Clear; +// sql.Add(' exec P_KCSD_AllNew '); +// sql.Add(' @Operation=''ϸɾ'' '); +// sql.Add(' ,@TMMNo=' + quotedstr(trim(TMMNo.Text))); +// ExecSQL; +// end; + CDS_MX.Delete; + with cds_1 do + begin + edit; + if CDS_MX.IsEmpty then + begin + Fieldbyname('TMSPiece').Value := 0; + Fieldbyname('TMSQty').Value := 0; + end + else + begin + Fieldbyname('TMSPiece').Value := TvMX.DataController.Summary.FooterSummaryValues[1]; + Fieldbyname('TMSQty').Value := TvMX.DataController.Summary.FooterSummaryValues[0]; + end; + + post; + end; +end; + +procedure TfrmTradeMarketInPut_XYTh.InitMXGrid(MTMSId: string); +begin + with ADOTemp do + begin + Close; + SQL.Clear; + sql.Add(' select A.* from Trade_Market_Sub_Qty A '); + sql.Add('where TMSId=''' + Trim(MTMSId) + ''''); + Open; + end; + SCreateCDS(ADOTemp, CDS_MX); + SInitCDSData(ADOTemp, CDS_MX); +end; + +procedure TfrmTradeMarketInPut_XYTh.v1Column5PropertiesEditValueChanged(Sender: TObject); +var + mvalue, FFieldName: string; +begin + + mvalue := TcxTextEdit(Sender).EditingText; + FFieldName := Trim(Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_1 do + begin + Edit; + FieldByName(FFieldName).Value := mvalue; + FieldByName('MGTMMID').Value := ''; + Post; + end; + Tv1.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmTradeMarketInPut_XYTh.HYTTBtnUpClick(Sender: TObject); +var + fsj: string; + FWZ: Integer; +begin + fsj := Trim(TcxTextEdit(Sender).Hint); + FWZ := Pos('/', fsj); + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := Copy(fsj, 1, FWZ - 1); + flagname := Copy(fsj, FWZ + 1, Length(fsj) - FWZ); + if ShowModal = 1 then + begin + TcxTextEdit(Sender).Text := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmTradeMarketInPut_XYTh.KYTTBtnUpClick(Sender: TObject); +var + fsj: string; + FWZ: Integer; +begin + fsj := Trim(TcxTextEdit(Sender).Hint); + FWZ := Pos('/', fsj); + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := Copy(fsj, 1, FWZ - 1); + flagname := Copy(fsj, FWZ + 1, Length(fsj) - FWZ); + if Trim(flag) = 'OrdDefStr2' then + begin + V1Name.Caption := ''; + V1Note.Caption := 'Ӣ'; + fnote := True; + end; + if ShowModal = 1 then + begin + TcxTextEdit(Sender).Text := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +end. + diff --git a/T05贸易门市管理/U_TradeMarketList.dfm b/T05贸易门市管理/U_TradeMarketList.dfm index ee23ed5..8a3313c 100644 --- a/T05贸易门市管理/U_TradeMarketList.dfm +++ b/T05贸易门市管理/U_TradeMarketList.dfm @@ -9,7 +9,6 @@ inherited frmTradeMarketList: TfrmTradeMarketList FormStyle = fsMDIChild Position = poScreenCenter Visible = True - ExplicitLeft = -526 ExplicitWidth = 1556 ExplicitHeight = 633 PixelsPerInch = 96 @@ -124,16 +123,24 @@ inherited frmTradeMarketList: TfrmTradeMarketList ImageIndex = 11 OnClick = TNowcClick end - object TBZF: TToolButton + object ToolButton3: TToolButton Left = 996 Top = 0 AutoSize = True + Caption = #25764#38144#22238#21333 + ImageIndex = 11 + OnClick = ToolButton3Click + end + object TBZF: TToolButton + Left = 1099 + Top = 0 + AutoSize = True Caption = #20316#24223 ImageIndex = 31 OnClick = TBZFClick end object TBNOZF: TToolButton - Left = 1067 + Left = 1170 Top = 0 AutoSize = True Caption = #25764#38144#20316#24223 @@ -141,7 +148,7 @@ inherited frmTradeMarketList: TfrmTradeMarketList OnClick = TBNOZFClick end object ToolButton2: TToolButton - Left = 1170 + Left = 1273 Top = 0 AutoSize = True Caption = #20445#23384#26684#24335 @@ -149,7 +156,7 @@ inherited frmTradeMarketList: TfrmTradeMarketList OnClick = ToolButton2Click end object ToolButton1: TToolButton - Left = 1273 + Left = 1376 Top = 0 AutoSize = True Caption = #23548#20986 @@ -157,7 +164,7 @@ inherited frmTradeMarketList: TfrmTradeMarketList OnClick = ToolButton1Click end object TBClose: TToolButton - Left = 1344 + Left = 1447 Top = 0 AutoSize = True Caption = #20851#38381 @@ -296,6 +303,13 @@ inherited frmTradeMarketList: TfrmTradeMarketList HeaderAlignmentHorz = taCenter Width = 77 end + object Tv1Column32: TcxGridDBColumn + Caption = #35746#21333#29366#24577 + DataBinding.FieldName = 'dqstatus' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 75 + end object Tv1Column7: TcxGridDBColumn Caption = #21333#25454#32534#21495 DataBinding.FieldName = 'TMMNo' @@ -313,14 +327,6 @@ inherited frmTradeMarketList: TfrmTradeMarketList Options.Editing = False Width = 77 end - object Tv1Column2: TcxGridDBColumn - Caption = #32463#33829#21333#20301 - DataBinding.FieldName = 'OurCoName' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 77 - end object Tv1Column4: TcxGridDBColumn Caption = #23458#25143 DataBinding.FieldName = 'CustName' @@ -329,55 +335,12 @@ inherited frmTradeMarketList: TfrmTradeMarketList Options.Editing = False Width = 77 end - object v1DeliveryDate: TcxGridDBColumn - Caption = #20132#36135#26085#26399 - DataBinding.FieldName = 'DlyDate' - DataBinding.IsNullValueType = True - PropertiesClassName = 'TcxDateEditProperties' - Properties.ShowTime = False - OnCustomDrawCell = v1DeliveryDateCustomDrawCell - HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 77 - end - object Tv1Column6: TcxGridDBColumn - Caption = #21046#21333#20154 - DataBinding.FieldName = 'FILLER' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 77 - end - object Tv1Column1: TcxGridDBColumn - Caption = #22791#27880 - DataBinding.FieldName = 'OrdNote' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 77 - end - object Tv1Column3: TcxGridDBColumn - Caption = #21457#36135#22320#22336 - DataBinding.FieldName = 'ShippingAddress' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Width = 77 - end - object Tv1Column5: TcxGridDBColumn - Caption = #32852#31995#26041#24335 - DataBinding.FieldName = 'CONTACT' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 77 - end object Tv1Column8: TcxGridDBColumn - Caption = #20135#21697#32534#21495 - DataBinding.FieldName = 'C_Code' + Caption = #19994#21153#21592 + DataBinding.FieldName = 'Saleser' DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 77 + Width = 70 end object Tv1Column9: TcxGridDBColumn Caption = #33394#24067#21517#31216 @@ -387,14 +350,6 @@ inherited frmTradeMarketList: TfrmTradeMarketList Options.Editing = False Width = 77 end - object Tv1Column12: TcxGridDBColumn - Caption = #39068#33394 - DataBinding.FieldName = 'C_Color' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 77 - end object Tv1Column17: TcxGridDBColumn Caption = #33394#21495 DataBinding.FieldName = 'C_ColorNo' @@ -403,6 +358,14 @@ inherited frmTradeMarketList: TfrmTradeMarketList Options.Editing = False Width = 58 end + object Tv1Column12: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'C_Color' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end object Tv1Column11: TcxGridDBColumn Caption = #25253#21333#25968#37327 DataBinding.FieldName = 'OrderQty' @@ -410,13 +373,35 @@ inherited frmTradeMarketList: TfrmTradeMarketList HeaderAlignmentHorz = taCenter Width = 104 end - object Tv1Column22: TcxGridDBColumn - Caption = #20986#24211#25968#37327 - DataBinding.FieldName = 'OutQty' + object Tv1Column13: TcxGridDBColumn + Caption = #25253#21333#21333#20301 + DataBinding.FieldName = 'OrderUnit' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 91 + end + object Tv1Column31: TcxGridDBColumn + Caption = #24212#37197#25968#37327 + DataBinding.FieldName = 'tmsqty' DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Width = 84 end + object Tv1Column22: TcxGridDBColumn + Caption = #24050#37197#25968#37327 + DataBinding.FieldName = 'OutQty' + DataBinding.IsNullValueType = True + OnCustomDrawCell = Tv1Column22CustomDrawCell + HeaderAlignmentHorz = taCenter + Width = 84 + end + object Tv1Column2: TcxGridDBColumn + Caption = #35745#20215#21333#20301 + DataBinding.FieldName = 'TMSUnit' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 70 + end object Tv1Column23: TcxGridDBColumn Caption = #21333#20215 DataBinding.FieldName = 'Price' @@ -431,20 +416,6 @@ inherited frmTradeMarketList: TfrmTradeMarketList HeaderAlignmentHorz = taCenter Width = 70 end - object Tv1Column13: TcxGridDBColumn - Caption = #25253#21333#21333#20301 - DataBinding.FieldName = 'OrderUnit' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Width = 91 - end - object Tv1Column19: TcxGridDBColumn - Caption = #27424#21333#25968 - DataBinding.FieldName = 'OrderOweQty' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Width = 84 - end object Tv1Column14: TcxGridDBColumn Caption = #24211#23384#38656#27714 DataBinding.FieldName = 'TMSQty' @@ -460,34 +431,20 @@ inherited frmTradeMarketList: TfrmTradeMarketList HeaderAlignmentHorz = taCenter Width = 111 end - object Tv1Column15: TcxGridDBColumn - Caption = #22791#36135#21333#20301 - DataBinding.FieldName = 'TMSUnit' + object Tv1Column19: TcxGridDBColumn + Caption = #27424#21333#25968 + DataBinding.FieldName = 'OrderOweQty' DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 93 + Width = 84 end - object Tv1Column21: TcxGridDBColumn - Caption = #22791#36135#29366#24577 - DataBinding.FieldName = 'StkStatus' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 92 - end - object Tv1Column10: TcxGridDBColumn - Caption = #27004#23618 - DataBinding.FieldName = 'StkPosition' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 95 - end - object Tv1Column16: TcxGridDBColumn - Caption = #22791#27880 - DataBinding.FieldName = 'OrdSNote' + object v1DeliveryDate: TcxGridDBColumn + Caption = #20132#36135#26085#26399 + DataBinding.FieldName = 'DlyDate' DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + OnCustomDrawCell = v1DeliveryDateCustomDrawCell HeaderAlignmentHorz = taCenter Options.Editing = False Width = 77 @@ -500,6 +457,67 @@ inherited frmTradeMarketList: TfrmTradeMarketList Options.Editing = False Width = 88 end + object Tv1Column6: TcxGridDBColumn + Caption = #21046#21333#20154 + DataBinding.FieldName = 'FILLER' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object Tv1Column1: TcxGridDBColumn + Caption = #35746#21333#22791#27880 + DataBinding.FieldName = 'OrdNote' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object Tv1Column16: TcxGridDBColumn + Caption = #26126#32454#22791#27880 + DataBinding.FieldName = 'OrdSNote' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object Tv1Column5: TcxGridDBColumn + Caption = #32852#31995#26041#24335 + DataBinding.FieldName = 'CONTACT' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object Tv1Column3: TcxGridDBColumn + Caption = #21457#36135#22320#22336 + DataBinding.FieldName = 'ShippingAddress' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 117 + end + object Tv1Column27: TcxGridDBColumn + Caption = #21306#22495#20195#21495 + DataBinding.FieldName = 'MXAREA' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 68 + end + object Tv1Column21: TcxGridDBColumn + Caption = #22791#36135#29366#24577 + DataBinding.FieldName = 'StkStatus' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 92 + end + object Tv1Column26: TcxGridDBColumn + Caption = #36710#21495 + DataBinding.FieldName = 'carPlate' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 77 + end object Tv1Column25: TcxGridDBColumn Caption = #35746#21333#31867#22411 DataBinding.FieldName = 'OrdType' @@ -507,11 +525,41 @@ inherited frmTradeMarketList: TfrmTradeMarketList HeaderAlignmentHorz = taCenter Width = 60 end - object Tv1Column26: TcxGridDBColumn - Caption = #36710#21495 - DataBinding.FieldName = 'carPlate' + object Tv1Column10: TcxGridDBColumn + Caption = #27004#23618 + DataBinding.FieldName = 'StkPosition' DataBinding.IsNullValueType = True - Width = 60 + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 95 + end + object Tv1Column15: TcxGridDBColumn + Caption = #35013#36710#26102#38388 + DataBinding.FieldName = 'zctime' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 73 + end + object Tv1Column28: TcxGridDBColumn + Caption = #20986#36710#26102#38388 + DataBinding.FieldName = 'Cctime' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 80 + end + object Tv1Column29: TcxGridDBColumn + Caption = #22238#21333#26102#38388 + DataBinding.FieldName = 'hdtime' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 68 + end + object Tv1Column30: TcxGridDBColumn + Caption = #25171#21360#27425#25968 + DataBinding.FieldName = 'PRINTCOUNT' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 72 end end object cxGrid1Level1: TcxGridLevel @@ -530,7 +578,8 @@ inherited frmTradeMarketList: TfrmTradeMarketList Properties.TabIndex = 0 Properties.Tabs.Strings = ( ' '#26410#37197#36135' ' - ' '#24050#37197#36135' ' + ' '#24050#37197#36135#26410#25171#21360' ' + ' '#24050#37197#36135#24050#25171#21360' ' ' '#24050#35013#36710' ' ' '#24050#22238#21333' ' ' '#24050#20316#24223' ' diff --git a/T05贸易门市管理/U_TradeMarketList.pas b/T05贸易门市管理/U_TradeMarketList.pas index 877a38e..b7ad27b 100644 --- a/T05贸易门市管理/U_TradeMarketList.pas +++ b/T05贸易门市管理/U_TradeMarketList.pas @@ -63,7 +63,6 @@ type CustName: TcxTextEdit; Tv1Column6: TcxGridDBColumn; cxgrdpmn2: TcxGridPopupMenu; - Tv1Column2: TcxGridDBColumn; Tv1Column1: TcxGridDBColumn; Label2: TLabel; C_Name: TcxTextEdit; @@ -80,11 +79,9 @@ type Tv1Column5: TcxGridDBColumn; frmFrameDateSel1: TfrmFrameDateSel; Tv1Column7: TcxGridDBColumn; - Tv1Column8: TcxGridDBColumn; Tv1Column9: TcxGridDBColumn; Tv1Column12: TcxGridDBColumn; Tv1Column14: TcxGridDBColumn; - Tv1Column15: TcxGridDBColumn; Tv1Column16: TcxGridDBColumn; Tv1Column10: TcxGridDBColumn; ToolButton1: TToolButton; @@ -104,6 +101,16 @@ type TBNOZF: TToolButton; Tv1Column25: TcxGridDBColumn; Tv1Column26: TcxGridDBColumn; + Tv1Column27: TcxGridDBColumn; + Tv1Column2: TcxGridDBColumn; + Tv1Column8: TcxGridDBColumn; + Tv1Column15: TcxGridDBColumn; + Tv1Column28: TcxGridDBColumn; + Tv1Column29: TcxGridDBColumn; + ToolButton3: TToolButton; + Tv1Column30: TcxGridDBColumn; + Tv1Column31: TcxGridDBColumn; + Tv1Column32: TcxGridDBColumn; procedure FormDestroy(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure FormCreate(Sender: TObject); @@ -146,6 +153,8 @@ type procedure TBZFClick(Sender: TObject); procedure TBNOZFClick(Sender: TObject); procedure Tv1DblClick(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure Tv1Column22CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); private DQdate: TDateTime; procedure InitGrid(); @@ -203,36 +212,67 @@ begin TWC.Enabled := False; TNowc.Enabled := False; TBDel.Enabled := False; - - case cxTabControl1.TabIndex of - 0: - begin - tbadd.Enabled := True; - TBEdit.Enabled := True; - TBDel.Enabled := True; - TBTJ.Enabled := True; - btnCopy.Enabled := True; - end; - 1: - begin - TBTJCX.Enabled := True; - btnCopy.Enabled := True; - TBDel.Enabled := True; + ToolButton3.Enabled := False; + TBPrint.Enabled := False; + TBZF.Enabled := False; + TBNOZF.Enabled := False; + if (canshu1 <> 'ѯ') and (canshu2 = '') then + begin + TBZF.Enabled := True; + TBNOZF.Enabled := True; + case cxTabControl1.TabIndex of + 0: + begin + tbadd.Enabled := True; + TBEdit.Enabled := True; + TBDel.Enabled := True; + TBTJ.Enabled := True; + btnCopy.Enabled := True; + end; + 1: + begin + TBEdit.Enabled := True; + TBTJCX.Enabled := True; + btnCopy.Enabled := True; + TBDel.Enabled := True; //tchk.Enabled := True; - TWC.Enabled := True; - btnCopy.Enabled := True; - end; + TWC.Enabled := True; + btnCopy.Enabled := True; + TBPrint.Enabled := True; + end; // 2: // begin // // // //tnochk.Enabled := True; // end; - 2: - begin - TNowc.Enabled := True; - btnCopy.Enabled := True; - end; + + 2: + begin + TBTJCX.Enabled := True; + btnCopy.Enabled := True; + TBDel.Enabled := True; + //tchk.Enabled := True; + TWC.Enabled := True; + btnCopy.Enabled := True; + TBPrint.Enabled := True; + end; + + 3: + begin + TNowc.Enabled := True; + btnCopy.Enabled := True; + end; + 4: + begin + TNowc.Enabled := True; + btnCopy.Enabled := True; + end; + 5: + begin + ToolButton3.Enabled := true; + end; + end; end; end; @@ -273,6 +313,36 @@ procedure TfrmTradeMarketList.InitGrid(); var SqlStr, FilterStr: string; begin + case cxTabControl1.TabIndex of + 0: + begin + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update Trade_Market_Main SET status=''2'' '); + sql.Add(' where NOT EXISTS(SELECT * FROM Trade_Market_SUB B WHERE B.TMMID=Trade_Market_Main.TMMID AND B.OUTQTY<=TMSQTY) '); + SQL.Add('AND ISNULL(status, ''0'')=''1'' AND STORE<>'''''); +// ShowMessage(sql.Text); + execsql; + end; + + end; +// 1: +// begin +// with ADOQueryCmd do +// begin +// close; +// sql.Clear; +// sql.Add('update Trade_Market_Main SET status=''1'' '); +// sql.Add(' where EXISTS(SELECT * FROM Trade_Market_SUB B WHERE B.TMMID=Trade_Market_Main.TMMID AND B.OUTQTY'''''); +//// ShowMessage(sql.Text); +// execsql; +// end; +// end; + end; + FilterStr := SGetFilters(Panel1, 1, 2); SqlStr := ' exec P_Trade_Market_View '; @@ -290,21 +360,35 @@ begin end; 1: begin - SqlStr := SqlStr + ' , @Status=''2'' '; // + SqlStr := SqlStr + ' , @Status=''2'' '; //δӡ + SqlStr := SqlStr + ' , @dyStatus=''0'' '; //δӡ end; 2: begin - SqlStr := SqlStr + ' , @Status=''9'' '; // + SqlStr := SqlStr + ' , @Status=''2'' '; //Ѵӡ + SqlStr := SqlStr + ' , @dyStatus=''1'' '; //Ѵӡ end; + 3: begin - SqlStr := SqlStr + ' , @Status=''10'' '; //ѻص + SqlStr := SqlStr + ' , @Status=''9'' '; // end; 4: + begin + SqlStr := SqlStr + ' , @Status=''10'' '; //ѻص + end; + 5: begin SqlStr := SqlStr + ' , @Status=''11'' '; // end; + 6: + begin + if canshu2 <> '' then + begin + SqlStr := SqlStr + ' , @TSStatus=''1'' '; + end; + end; end; // ShowMessage(SqlStr); InitCDSData(ADOQueryMain, Order_Main, Tv1, SqlStr, FilterStr, 'TMMId'); @@ -363,7 +447,7 @@ end; procedure TfrmTradeMarketList.InitForm(); begin - ReadCxGrid('ָʾбFF1', Tv1, 'ָʾ'); + ReadCxGrid('ָʾбFF11', Tv1, 'ָʾ'); frmFrameDateSel1.BegDate.Date := SGetServerDate(ADOQueryTemp) - 180; frmFrameDateSel1.EndDate.Date := SGetServerDate(ADOQueryTemp); @@ -376,11 +460,11 @@ begin if Order_Main.IsEmpty then Exit; - if Trim(Order_Main.fieldbyname('Filler').AsString) <> Trim(DName) then - begin - Application.MessageBox('ܲ˵!', 'ʾ', 0); - Exit; - end; +// if Trim(Order_Main.fieldbyname('Filler').AsString) <> Trim(DName) then +// begin +// Application.MessageBox('ܲ˵!', 'ʾ', 0); +// Exit; +// end; try frmTradeMarketInPut := TfrmTradeMarketInPut.Create(Application); @@ -408,11 +492,11 @@ procedure TfrmTradeMarketList.TBNOZFClick(Sender: TObject); begin if Order_Main.IsEmpty then exit; - if Trim(Order_Main.fieldbyname('Filler').AsString) <> Trim(DName) then - begin - Application.MessageBox('ܲ˵!', 'ʾ', 0); - Exit; - end; +// if Trim(Order_Main.fieldbyname('Filler').AsString) <> Trim(DName) then +// begin +// Application.MessageBox('ܲ˵!', 'ʾ', 0); +// Exit; +// end; if Application.MessageBox('Ƿʵݣ', 'ʾ', 32 + 4) <> IDYES then Exit; try @@ -453,11 +537,11 @@ procedure TfrmTradeMarketList.TBDelClick(Sender: TObject); begin if Order_Main.IsEmpty then Exit; - if Trim(Order_Main.fieldbyname('Filler').AsString) <> Trim(DName) then - begin - Application.MessageBox('ܲ˵!', 'ʾ', 0); - Exit; - end; +// if Trim(Order_Main.fieldbyname('Filler').AsString) <> Trim(DName) then +// begin +// Application.MessageBox('ܲ˵!', 'ʾ', 0); +// Exit; +// end; if Application.MessageBox('ȷҪɾ', 'ʾ', 32 + 4) <> IDYES then Exit; @@ -466,10 +550,18 @@ begin begin if Trim(Order_Main.fieldbyname('TMMId').AsString) <> '' then begin - DelData() + DelData(); + end; - Order_Main.Delete; + with Order_Main do + begin + Order_Main.Delete; + end; + + +// Order_Main.Delete; end; + initgrid(); end; function TfrmTradeMarketList.DelData(): Boolean; @@ -519,27 +611,36 @@ begin end; WSql := ''; Order_Main.DisableControls; - with Order_Main do + + if canshu4 = '' then begin - First; - while not Eof do + WSql := Trim(Order_Main.fieldbyname('TMMId').AsString); + end + else + begin + with Order_Main do begin - if Order_Main.fieldbyname('SSel').AsBoolean then + First; + while not Eof do begin -// if WSql <> '' then -// begin -// WSql := WSql + ',' + Trim(Order_Main.fieldbyname('TMSId').AsString); //TMSId -// end -// else -// begin -// WSql := Trim(Order_Main.fieldbyname('TMSId').AsString); -// end; - WSql := Trim(Order_Main.fieldbyname('TMMId').AsString); + if Order_Main.fieldbyname('SSel').AsBoolean then + begin + if WSql <> '' then + begin + WSql := WSql + ',' + Trim(Order_Main.fieldbyname('TMmId').AsString); //TMSId + end + else + begin + WSql := Trim(Order_Main.fieldbyname('TMmId').AsString); + end; +// WSql := Trim(Order_Main.fieldbyname('TMMId').AsString); + end; + Next; end; - Next; end; + Order_Main.Locate('SSel', True, []); end; - Order_Main.Locate('SSel', True, []); + Order_Main.EnableControls; try frmLabelPrint := TfrmLabelPrint.Create(Application); @@ -552,7 +653,17 @@ begin FFiltration1 := Trim(WSql); if ShowModal = 1 then begin -// Self.InitGrid(); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('update Trade_Market_Main set PRINTCOUNT=PRINTCOUNT+1 '); + sql.add('where exists(select * from [dbo].[F_Tool_SplitString](' + quotedstr(WSql) + ','','') X where X.RTVALUE=Trade_Market_Main.TMMID )'); + + ExecSQL; + end; + + Self.InitGrid(); end; end; finally @@ -601,6 +712,12 @@ begin canshu1 := trim(self.fParameters1); canshu2 := trim(self.fParameters2); canshu4 := trim(self.fParameters4); + if canshu2 <> '' then + begin + cxTabControl1.Tabs[3].Visible := False; // ص3ǩҳ2 + cxTabControl1.Tabs[4].Visible := False; // ص4ǩҳ3 + cxTabControl1.Tabs[5].Visible := False; // ص5ǩҳ4 + end; fFlileFlag := UserDataFlag + 'HX'; cxTabControl1.TabIndex := 0; InitForm(); @@ -700,6 +817,11 @@ begin TBSave.Visible := False; ScrollBox1.Enabled := True; N2.Visible := False; + + TBAdd.Visible := False; + ToolButton6.Visible := False; + TBEdit.Visible := False; + frmTradeMarketInPut.fordtype := self.fordtype; TvMX.OnCellDblClick := nil; Panel5.Visible := False; @@ -754,33 +876,44 @@ begin Clipboard.SetTextBuf(PChar(Trim(Order_Main.fieldbyname(TV1.Controller.FocusedColumn.DataBinding.FilterFieldName).AsString))); end; +procedure TfrmTradeMarketList.Tv1Column22CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +var + id: Integer; +begin + + if AViewInfo.GridRecord.Values[TV1.GetColumnByFieldName('OutQty').Index] >= AViewInfo.GridRecord.Values[TV1.GetColumnByFieldName('tmsqty').Index] then + begin + ACanvas.Brush.Color := $0080FF80; + end; +end; + procedure TfrmTradeMarketList.Tv1DblClick(Sender: TObject); begin if Order_Main.IsEmpty then Exit; - - try - frmTradeMarketInPut := TfrmTradeMarketInPut.Create(Application); - with frmTradeMarketInPut do - begin - PState := 1; - FTMMId := Trim(Self.Order_Main.fieldbyname('TMMId').AsString); - ToolBar2.Enabled := False; - TBSave.Enabled := False; - ScrollBox1.Enabled := False; - N2.Visible := False; - frmTradeMarketInPut.fordtype := self.fordtype; - TvMX.OnCellDblClick := nil; - Panel5.Enabled := False; - canshu4 := self.canshu4; - if ShowModal = 1 then - begin - - end; - end; - finally - frmTradeMarketInPut.Free; - end; + TBCK.Click(); +// try +// frmTradeMarketInPut := TfrmTradeMarketInPut.Create(Application); +// with frmTradeMarketInPut do +// begin +// PState := 1; +// FTMMId := Trim(Self.Order_Main.fieldbyname('TMMId').AsString); +// ToolBar2.Enabled := False; +// TBSave.Enabled := False; +// ScrollBox1.Enabled := False; +// N2.Visible := False; +// frmTradeMarketInPut.fordtype := self.fordtype; +// TvMX.OnCellDblClick := nil; +// Panel5.Enabled := False; +// canshu4 := self.canshu4; +// if ShowModal = 1 then +// begin +// +// end; +// end; +// finally +// frmTradeMarketInPut.Free; +// end; end; @@ -883,11 +1016,11 @@ procedure TfrmTradeMarketList.TWCClick(Sender: TObject); begin if Order_Main.IsEmpty then exit; - if Trim(Order_Main.fieldbyname('Filler').AsString) <> Trim(DName) then - begin - Application.MessageBox('ܲ˵!', 'ʾ', 0); - Exit; - end; +// if Trim(Order_Main.fieldbyname('Filler').AsString) <> Trim(DName) then +// begin +// Application.MessageBox('ܲ˵!', 'ʾ', 0); +// Exit; +// end; if Application.MessageBox('Ƿʵݣ', 'ʾ', 32 + 4) <> IDYES then Exit; try @@ -929,21 +1062,32 @@ procedure TfrmTradeMarketList.TNowcClick(Sender: TObject); begin if Order_Main.IsEmpty then exit; - if Trim(Order_Main.fieldbyname('Filler').AsString) <> Trim(DName) then +// if Trim(Order_Main.fieldbyname('Filler').AsString) <> Trim(DName) then +// begin +// Application.MessageBox('ܲ˵!', 'ʾ', 0); +// Exit; +// end; + if Order_Main.fieldbyname('CCTIME').AsString <> '' then begin - Application.MessageBox('ܲ˵!', 'ʾ', 0); - Exit; + if Application.MessageBox('ǰѰ󶨳,ͬʱȡǷ', 'ʾ', 32 + 4) <> IDYES then + Exit; + end + else + begin + if Application.MessageBox('Ƿʵݣ', 'ʾ', 32 + 4) <> IDYES then + Exit; end; - if Application.MessageBox('Ƿʵݣ', 'ʾ', 32 + 4) <> IDYES then - Exit; + try with ADOQueryCmd do begin close; sql.Clear; - sql.Add('update Trade_Market_Main SET status=''2'' '); + sql.Add('update Trade_Market_Main SET status=''2'',zctime=NULL,zcid=NULL,Driver=NULL,carPlate=NULL,CCTIME=NULL '); sql.Add('where TMMId=' + quotedstr(trim(Order_Main.fieldbyname('TMMId').AsString))); + SQL.Add('DELETE Trade_Market_CarTransportSUB WHERE TMMId=' + quotedstr(trim(Order_Main.fieldbyname('TMMId').AsString))); + sql.Add('insert into Finance_Need_Up(UType,UDataId,UOperation,UOperator,UModule,UDetails) '); sql.Add('values(''óײ'' '); sql.Add(',' + quotedstr(trim(Order_Main.fieldbyname('TMMId').AsString))); @@ -975,75 +1119,134 @@ begin if Order_Main.IsEmpty then exit; - if canshu1 <> 'Ȩ' then - begin - if Trim(Order_Main.fieldbyname('Filler').AsString) <> Trim(DName) then - begin - Application.MessageBox('ܲ˵!', 'ʾ', 0); - Exit; - end; - end; +// if canshu1 <> 'Ȩ' then +// begin +// if Trim(Order_Main.fieldbyname('Filler').AsString) <> Trim(DName) then +// begin +// Application.MessageBox('ܲ˵!', 'ʾ', 0); +// Exit; +// end; +// end; if cxTabControl1.TabIndex <> 0 then begin Application.MessageBox('ֻڴύ״̬½ύ!', 'ʾ', 0); Exit; end; - if Application.MessageBox('ȷҪύ', 'ʾ', 32 + 4) <> IDYES then - Exit; - try - with ADOQueryCmd do - begin - close; - sql.Clear; - sql.Add('update Trade_Market_Main SET status=''2'' '); - sql.Add(' where TMMId=' + quotedstr(trim(Order_Main.fieldbyname('TMMId').AsString))); - sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); - sql.Add(' ' + quotedstr(trim(DName))); - sql.Add(',getdate() '); - sql.Add(',' + quotedstr(trim(self.Caption))); - sql.Add(',' + quotedstr(trim('ƻύ'))); - sql.Add(',' + quotedstr(trim('ƻţ' + trim(Order_Main.FieldByName('TMMNO').AsString)))); - sql.Add(',' + quotedstr(trim('ɹ'))); - sql.Add(')'); - execsql; - end; - SendMessageQR(trim(Order_Main.FieldByName('TMMId').AsString), trim(Order_Main.FieldByName('Filler').AsString), trim(Order_Main.FieldByName('TMMNO').AsString), Trim(FormatDateTime('yyyy-MM-dd', Order_Main.FieldByName('TMMDate').asdatetime))); + if Application.MessageBox('ǷǷ', 'ʾ', 32 + 4) <> IDYES then + begin + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update Trade_Market_Main SET status=''2'' '); + sql.Add(' where TMMId=' + quotedstr(trim(Order_Main.fieldbyname('TMMId').AsString))); + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); + sql.Add(' ' + quotedstr(trim(DName))); + sql.Add(',getdate() '); + sql.Add(',' + quotedstr(trim(self.Caption))); + sql.Add(',' + quotedstr(trim('ƻύ'))); + sql.Add(',' + quotedstr(trim('ƻţ' + trim(Order_Main.FieldByName('TMMNO').AsString)))); + sql.Add(',' + quotedstr(trim('ɹ'))); + sql.Add(')'); + execsql; + end; + SendMessageQR(trim(Order_Main.FieldByName('TMMId').AsString), trim(Order_Main.FieldByName('Filler').AsString), trim(Order_Main.FieldByName('TMMNO').AsString), Trim(FormatDateTime('yyyy-MM-dd', Order_Main.FieldByName('TMMDate').asdatetime))); - with ADOQueryCmd do - begin - close; - sql.Clear; - sql.Add('exec P_MSG_in '); - sql.Add(' @MSG=' + QuotedStr(trim('ƻţ' + trim(Order_Main.FieldByName('TMMNO').AsString) + ' Ҫ'))); - sql.Add(',@FillUserid=' + QuotedStr(trim(DCode))); - sql.Add(',@FillUserName=' + QuotedStr(trim(DName))); - sql.Add(',@FillType=' + QuotedStr(trim('Ҫȷ'))); - sql.Add(',@MegType=' + QuotedStr(trim('ƻύ'))); - execsql; - end; - application.MessageBox('ƻύɹ', 'ʾϢ'); + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('exec P_MSG_in '); + sql.Add(' @MSG=' + QuotedStr(trim('ƻţ' + trim(Order_Main.FieldByName('TMMNO').AsString) + ' Ҫ'))); + sql.Add(',@FillUserid=' + QuotedStr(trim(DCode))); + sql.Add(',@FillUserName=' + QuotedStr(trim(DName))); + sql.Add(',@FillType=' + QuotedStr(trim('Ҫȷ'))); + sql.Add(',@MegType=' + QuotedStr(trim('ƻύ'))); + execsql; + end; + application.MessageBox('ƻύɹ', 'ʾϢ'); - except - application.MessageBox('ƻύʧܣ', 'ʾϢ', 0); + except + application.MessageBox('ƻύʧܣ', 'ʾϢ', 0); + end; + TBRafresh.Click; + end + else + begin + try + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('exec P_Trade_Market_QD '); + Sql.Add(' @TMMID=' + quotedstr(Trim(Order_Main.fieldbyname('TMMId').AsString))); + Sql.Add(',@DCode=' + quotedstr(Trim(DCode))); + Sql.Add(',@DName=' + quotedstr(Trim(DName))); + + Open; + end; + if ADOQueryTemp.FieldByName('intReturn').AsInteger = -1 then + begin + Application.MessageBox(PChar(ADOQueryTemp.fieldbyname('ShowMsg').AsString), 'ʾ', 0); + exit; + end; + with ADOQueryCmd do + begin + close; + sql.Clear; + + sql.Add('update Trade_Market_Main SET status=''2'' '); + sql.Add(' where TMMId=' + quotedstr(trim(Order_Main.fieldbyname('TMMId').AsString))); + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); + sql.Add(' ' + quotedstr(trim(DName))); + sql.Add(',getdate() '); + sql.Add(',' + quotedstr(trim(self.Caption))); + sql.Add(',' + quotedstr(trim('ƻύ'))); + sql.Add(',' + quotedstr(trim('ƻţ' + trim(Order_Main.FieldByName('TMMNO').AsString)))); + sql.Add(',' + quotedstr(trim('ɹ'))); + sql.Add(')'); + execsql; + end; + SendMessageQR(trim(Order_Main.FieldByName('TMMId').AsString), trim(Order_Main.FieldByName('Filler').AsString), trim(Order_Main.FieldByName('TMMNO').AsString), Trim(FormatDateTime('yyyy-MM-dd', Order_Main.FieldByName('TMMDate').asdatetime))); + + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('exec P_MSG_in '); + sql.Add(' @MSG=' + QuotedStr(trim('ƻţ' + trim(Order_Main.FieldByName('TMMNO').AsString) + ' Ҫ'))); + sql.Add(',@FillUserid=' + QuotedStr(trim(DCode))); + sql.Add(',@FillUserName=' + QuotedStr(trim(DName))); + sql.Add(',@FillType=' + QuotedStr(trim('Ҫȷ'))); + sql.Add(',@MegType=' + QuotedStr(trim('ƻύ'))); + execsql; + end; + application.MessageBox('ƻύɹ', 'ʾϢ'); + + except + application.MessageBox('ƻύʧܣ', 'ʾϢ', 0); + end; + TBRafresh.Click; end; - TBRafresh.Click; + end; procedure TfrmTradeMarketList.TBTJCXClick(Sender: TObject); begin if Order_Main.IsEmpty then exit; - if canshu1 <> 'Ȩ' then - begin - if Trim(Order_Main.fieldbyname('Filler').AsString) <> Trim(DName) then - begin - Application.MessageBox('ܲ˵!', 'ʾ', 0); - Exit; - end; - end; +// if canshu1 <> 'Ȩ' then +// begin +// if Trim(Order_Main.fieldbyname('Filler').AsString) <> Trim(DName) then +// begin +// Application.MessageBox('ܲ˵!', 'ʾ', 0); +// Exit; +// end; +// end; - if cxTabControl1.TabIndex <> 1 then + if (cxTabControl1.TabIndex <> 1) and (cxTabControl1.TabIndex <> 2) then begin Application.MessageBox('ֻڴ״̬½ύ!', 'ʾ', 0); Exit; @@ -1128,18 +1331,58 @@ end; procedure TfrmTradeMarketList.ToolButton2Click(Sender: TObject); begin - WriteCxGrid(Self.Caption, Tv1, '֪ͨ¼'); + + WriteCxGrid('ָʾбFF11', Tv1, 'ָʾ'); +end; + +procedure TfrmTradeMarketList.ToolButton3Click(Sender: TObject); +begin + if Order_Main.IsEmpty then + exit; +// if Trim(Order_Main.fieldbyname('Filler').AsString) <> Trim(DName) then +// begin +// Application.MessageBox('ܲ˵!', 'ʾ', 0); +// Exit; +// end; + + if Application.MessageBox('Ƿʵݣ', 'ʾ', 32 + 4) <> IDYES then + Exit; + + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update Trade_Market_Main SET status=''9'', hdTIME=NULL '); + sql.Add('where TMMId=' + quotedstr(trim(Order_Main.fieldbyname('TMMId').AsString))); + + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); + sql.Add(' ' + quotedstr(trim(DName))); + sql.Add(',getdate() '); + sql.Add(',' + quotedstr(trim(self.Caption))); + sql.Add(',' + quotedstr(trim('ƻص'))); + sql.Add(',' + quotedstr(trim('ƻţ' + trim(Order_Main.FieldByName('TMMNO').AsString)))); + sql.Add(',' + quotedstr(trim('ɹ'))); + sql.Add(')'); + execsql; + end; + application.MessageBox('ƻصɹ', 'ʾϢ'); + TBRafresh.Click; + except + application.MessageBox('ƻصʧܣ', 'ʾϢ', 0); + end; + end; procedure TfrmTradeMarketList.TBZFClick(Sender: TObject); begin if Order_Main.IsEmpty then exit; - if Trim(Order_Main.fieldbyname('Filler').AsString) <> Trim(DName) then - begin - Application.MessageBox('ܲ˵!', 'ʾ', 0); - Exit; - end; +// if Trim(Order_Main.fieldbyname('Filler').AsString) <> Trim(DName) then +// begin +// Application.MessageBox('ܲ˵!', 'ʾ', 0); +// Exit; +// end; if Application.MessageBox('Ƿʵݣ', 'ʾ', 32 + 4) <> IDYES then Exit; try diff --git a/T05贸易门市管理/U_TradeMarketList_JD.dfm b/T05贸易门市管理/U_TradeMarketList_JD.dfm index a04078c..a7cdde5 100644 --- a/T05贸易门市管理/U_TradeMarketList_JD.dfm +++ b/T05贸易门市管理/U_TradeMarketList_JD.dfm @@ -9,7 +9,6 @@ inherited frmTradeMarketList_JD: TfrmTradeMarketList_JD FormStyle = fsMDIChild Position = poScreenCenter Visible = True - ExplicitLeft = -338 ExplicitWidth = 1439 ExplicitHeight = 673 PixelsPerInch = 96 @@ -68,7 +67,10 @@ inherited frmTradeMarketList_JD: TfrmTradeMarketList_JD Width = 782 Height = 370 Align = alTop + PopupMenu = PM_1 TabOrder = 1 + ExplicitLeft = -3 + ExplicitTop = 37 object Tv1: TcxGridDBTableView Navigator.Buttons.CustomButtons = <> ScrollbarAnnotations.CustomAnnotations = <> @@ -160,7 +162,9 @@ inherited frmTradeMarketList_JD: TfrmTradeMarketList_JD Width = 782 Height = 202 Align = alClient + PopupMenu = PM_1 TabOrder = 2 + ExplicitLeft = -3 object Tv2: TcxGridDBTableView Navigator.Buttons.CustomButtons = <> ScrollbarAnnotations.CustomAnnotations = <> @@ -323,6 +327,7 @@ inherited frmTradeMarketList_JD: TfrmTradeMarketList_JD Width = 637 Height = 364 Align = alTop + PopupMenu = PM_1 TabOrder = 1 object Tv3: TcxGridDBTableView Navigator.Buttons.CustomButtons = <> @@ -407,6 +412,7 @@ inherited frmTradeMarketList_JD: TfrmTradeMarketList_JD Width = 637 Height = 208 Align = alClient + PopupMenu = PM_1 TabOrder = 2 object Tv4: TcxGridDBTableView Navigator.Buttons.CustomButtons = <> @@ -524,7 +530,8 @@ inherited frmTradeMarketList_JD: TfrmTradeMarketList_JD Left = 37 Top = 280 end - object cxgrdpmn1: TcxGridPopupMenu + object GPM4: TcxGridPopupMenu + Grid = cxGrid4 PopupMenus = <> Left = 220 Top = 284 @@ -612,10 +619,11 @@ inherited frmTradeMarketList_JD: TfrmTradeMarketList_JD Left = 252 Top = 240 end - object GPM_3: TcxGridPopupMenu + object GPM3: TcxGridPopupMenu + Grid = cxGrid3 PopupMenus = <> Left = 188 - Top = 236 + Top = 238 end object CDS_1: TClientDataSet Aggregates = <> @@ -684,4 +692,24 @@ inherited frmTradeMarketList_JD: TfrmTradeMarketList_JD Left = 832 Top = 200 end + object PM_1: TPopupMenu + Left = 988 + Top = 355 + object N1: TMenuItem + Caption = #20445#23384#26684#24335 + OnClick = N1Click + end + end + object GPM1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 437 + Top = 251 + end + object GPM2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 433 + Top = 310 + end end diff --git a/T05贸易门市管理/U_TradeMarketList_JD.pas b/T05贸易门市管理/U_TradeMarketList_JD.pas index caace47..44149fa 100644 --- a/T05贸易门市管理/U_TradeMarketList_JD.pas +++ b/T05贸易门市管理/U_TradeMarketList_JD.pas @@ -20,7 +20,7 @@ uses type TfrmTradeMarketList_JD = class(TfrmBaseList) - cxgrdpmn1: TcxGridPopupMenu; + GPM4: TcxGridPopupMenu; ADOQueryCmd: TADOQuery; ADOQueryMain: TADOQuery; ADOQueryTemp: TADOQuery; @@ -36,7 +36,7 @@ type cxgrdpmn2: TcxGridPopupMenu; CDS_WXTS: TClientDataSet; N2: TMenuItem; - GPM_3: TcxGridPopupMenu; + GPM3: TcxGridPopupMenu; Panel1: TPanel; ToolBar1: TToolBar; cxGrid1: TcxGrid; @@ -99,9 +99,15 @@ type ToolBar4: TToolBar; Label5: TLabel; Timer1: TTimer; + PM_1: TPopupMenu; + N1: TMenuItem; + GPM1: TcxGridPopupMenu; + GPM2: TcxGridPopupMenu; procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure FormShow(Sender: TObject); procedure Timer1Timer(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure N1Click(Sender: TObject); private DQdate: TDateTime; procedure InitGrid(); @@ -136,6 +142,15 @@ begin Action := caFree; end; +procedure TfrmTradeMarketList_JD.FormCreate(Sender: TObject); +begin + inherited; + ReadCxGrid(Self.Caption, Tv1, 'DWSY'); + ReadCxGrid(Self.Caption, Tv2, 'DWSY'); + ReadCxGrid(Self.Caption, Tv3, 'DWSY'); + ReadCxGrid(Self.Caption, Tv4, 'DWSY'); +end; + procedure TfrmTradeMarketList_JD.FormShow(Sender: TObject); begin inherited; @@ -162,9 +177,9 @@ begin begin Close; sql.clear; - sql.add('select cast((case when isnull(Urgent,'''')<>'''' then 0 else 1 end )as int) as Urgent,* from Trade_Market_Main A inner join Trade_Market_Sub B on B.TMMId=A.TMMId '); + sql.add('select cast((case when isnull(isUrgent,'''')<>'''' then 0 else 1 end )as int) as Urgent,* from Trade_Market_Main A '); sql.add('where 1=1 '); - sql.add('and AddressArea=''W'' '); + sql.add('and AddressArea=''W'' AND isnull(STORE,'''')<>'''' '); Open; end; SCreateCDS(ADO_1, CDS_1); @@ -177,9 +192,9 @@ begin begin Close; sql.clear; - sql.add('select cast((case when isnull(Urgent,'''')<>'''' then 0 else 1 end )as int) as Urgent,* from Trade_Market_Main A inner join Trade_Market_Sub B on B.TMMId=A.TMMId '); + sql.add('select cast((case when isnull(isUrgent,'''')<>'''' then 0 else 1 end )as int) as Urgent,* from Trade_Market_Main A '); sql.add('where 1=1'); - sql.add('and AddressArea=''D'' '); + sql.add('and AddressArea=''D'' AND isnull(STORE,'''')<>'''' '); Open; end; SCreateCDS(ADO_2, CDS_2); @@ -192,9 +207,9 @@ begin begin Close; sql.clear; - sql.add('select cast((case when isnull(Urgent,'''')<>'''' then 0 else 1 end )as int) as Urgent,* from Trade_Market_Main A inner join Trade_Market_Sub B on B.TMMId=A.TMMId '); + sql.add('select cast((case when isnull(isUrgent,'''')<>'''' then 0 else 1 end )as int) as Urgent,* from Trade_Market_Main A '); sql.add('where 1=1'); - sql.add('and AddressArea=''ʯճS'' '); + sql.add('and AddressArea=''ʯճS'' AND isnull(STORE,'''')<>'''' '); Open; end; SCreateCDS(ADO_3, CDS_3); @@ -207,15 +222,23 @@ begin begin Close; sql.clear; - sql.add('select cast((case when isnull(Urgent,'''')<>'''' then 0 else 1 end )as int) as Urgent,* from Trade_Market_Main A inner join Trade_Market_Sub B on B.TMMId=A.TMMId '); + sql.add('select cast((case when isnull(isUrgent,'''')<>'''' then 0 else 1 end )as int) as Urgent,* from Trade_Market_Main A '); sql.add('where 1=1'); - sql.add('and AddressArea=''Y'' '); + sql.add('and AddressArea=''Y'' AND isnull(STORE,'''')<>'''' '); Open; end; SCreateCDS(ADO_4, CDS_4); SInitCDSData(ADO_4, CDS_4); end; +procedure TfrmTradeMarketList_JD.N1Click(Sender: TObject); +begin + WRITECxGrid(Self.Caption, Tv1, 'DWSY'); + WRITECxGrid(Self.Caption, Tv2, 'DWSY'); + WRITECxGrid(Self.Caption, Tv3, 'DWSY'); + WRITECxGrid(Self.Caption, Tv4, 'DWSY'); +end; + procedure TfrmTradeMarketList_JD.Timer1Timer(Sender: TObject); begin for var v in TArray.Create(TV1, TV2, TV3, TV4) do @@ -230,7 +253,7 @@ begin end else begin - InitGrid(); + InitGrid(); v.Controller.FocusedRowIndex := 0; v.Controller.MakeFocusedItemVisible; end; diff --git a/T05贸易门市管理/U_TradeMarketList_JDT.dfm b/T05贸易门市管理/U_TradeMarketList_JDT.dfm index 4ce88e3..1f50c59 100644 --- a/T05贸易门市管理/U_TradeMarketList_JDT.dfm +++ b/T05贸易门市管理/U_TradeMarketList_JDT.dfm @@ -67,7 +67,10 @@ inherited frmTradeMarketList_JDT: TfrmTradeMarketList_JDT Width = 782 Height = 370 Align = alTop + PopupMenu = PM_1 TabOrder = 1 + ExplicitLeft = -3 + ExplicitTop = 37 object Tv1: TcxGridDBTableView Navigator.Buttons.CustomButtons = <> ScrollbarAnnotations.CustomAnnotations = <> @@ -159,6 +162,7 @@ inherited frmTradeMarketList_JDT: TfrmTradeMarketList_JDT Width = 782 Height = 202 Align = alClient + PopupMenu = PM_1 TabOrder = 2 object Tv2: TcxGridDBTableView Navigator.Buttons.CustomButtons = <> @@ -322,6 +326,7 @@ inherited frmTradeMarketList_JDT: TfrmTradeMarketList_JDT Width = 637 Height = 364 Align = alTop + PopupMenu = PM_1 TabOrder = 1 object Tv3: TcxGridDBTableView Navigator.Buttons.CustomButtons = <> @@ -406,6 +411,7 @@ inherited frmTradeMarketList_JDT: TfrmTradeMarketList_JDT Width = 637 Height = 208 Align = alClient + PopupMenu = PM_1 TabOrder = 2 object Tv4: TcxGridDBTableView Navigator.Buttons.CustomButtons = <> @@ -524,11 +530,6 @@ inherited frmTradeMarketList_JDT: TfrmTradeMarketList_JDT Left = 37 Top = 280 end - object cxgrdpmn1: TcxGridPopupMenu - PopupMenus = <> - Left = 220 - Top = 284 - end object ADOQueryCmd: TADOQuery Connection = DataLink_TradeMarket.ADOLink Parameters = <> @@ -612,11 +613,6 @@ inherited frmTradeMarketList_JDT: TfrmTradeMarketList_JDT Left = 252 Top = 240 end - object GPM_3: TcxGridPopupMenu - PopupMenus = <> - Left = 188 - Top = 236 - end object CDS_1: TClientDataSet Aggregates = <> Params = <> @@ -684,4 +680,36 @@ inherited frmTradeMarketList_JDT: TfrmTradeMarketList_JDT Left = 832 Top = 200 end + object GPM2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 433 + Top = 310 + end + object GPM1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 437 + Top = 252 + end + object GPM4: TcxGridPopupMenu + Grid = cxGrid4 + PopupMenus = <> + Left = 220 + Top = 284 + end + object GPM3: TcxGridPopupMenu + Grid = cxGrid3 + PopupMenus = <> + Left = 188 + Top = 238 + end + object PM_1: TPopupMenu + Left = 880 + Top = 288 + object N1: TMenuItem + Caption = #20445#23384#26684#24335 + OnClick = N1Click + end + end end diff --git a/T05贸易门市管理/U_TradeMarketList_JDT.pas b/T05贸易门市管理/U_TradeMarketList_JDT.pas index 4febc48..e2245c5 100644 --- a/T05贸易门市管理/U_TradeMarketList_JDT.pas +++ b/T05贸易门市管理/U_TradeMarketList_JDT.pas @@ -20,7 +20,6 @@ uses type TfrmTradeMarketList_JDT = class(TfrmBaseList) - cxgrdpmn1: TcxGridPopupMenu; ADOQueryCmd: TADOQuery; ADOQueryMain: TADOQuery; ADOQueryTemp: TADOQuery; @@ -36,7 +35,6 @@ type cxgrdpmn2: TcxGridPopupMenu; CDS_WXTS: TClientDataSet; N2: TMenuItem; - GPM_3: TcxGridPopupMenu; Panel1: TPanel; ToolBar1: TToolBar; cxGrid1: TcxGrid; @@ -99,9 +97,17 @@ type ToolBar4: TToolBar; Label5: TLabel; Timer1: TTimer; + GPM2: TcxGridPopupMenu; + GPM1: TcxGridPopupMenu; + GPM4: TcxGridPopupMenu; + GPM3: TcxGridPopupMenu; + PM_1: TPopupMenu; + N1: TMenuItem; procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure FormShow(Sender: TObject); procedure Timer1Timer(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure N1Click(Sender: TObject); private DQdate: TDateTime; procedure InitGrid(); @@ -136,6 +142,15 @@ begin Action := caFree; end; +procedure TfrmTradeMarketList_JDT.FormCreate(Sender: TObject); +begin + inherited; + ReadCxGrid(Self.Caption, Tv1, 'DWSY'); + ReadCxGrid(Self.Caption, Tv2, 'DWSY'); + ReadCxGrid(Self.Caption, Tv3, 'DWSY'); + ReadCxGrid(Self.Caption, Tv4, 'DWSY'); +end; + procedure TfrmTradeMarketList_JDT.FormShow(Sender: TObject); begin inherited; @@ -161,9 +176,9 @@ begin begin Close; sql.clear; - sql.add('select cast((case when isnull(Urgent,'''')<>'''' then 0 else 1 end )as int) as Urgent,* from Trade_Market_Main A inner join Trade_Market_Sub B on B.TMMId=A.TMMId '); + sql.add('select cast((case when isnull(isUrgent,'''')<>'''' then 0 else 1 end )as int) as Urgent,* from Trade_Market_Main A '); sql.add('where 1=1 '); - sql.add('and AddressArea=''P'' '); + sql.add('and AddressArea=''P'' AND isnull(STORE,'''')<>'''' '); Open; end; SCreateCDS(ADO_1, CDS_1); @@ -176,9 +191,9 @@ begin begin Close; sql.clear; - sql.add('select cast((case when isnull(Urgent,'''')<>'''' then 0 else 1 end )as int) as Urgent,* from Trade_Market_Main A inner join Trade_Market_Sub B on B.TMMId=A.TMMId '); + sql.add('select cast((case when isnull(isUrgent,'''')<>'''' then 0 else 1 end )as int) as Urgent,* from Trade_Market_Main A '); sql.add('where 1=1'); - sql.add('and AddressArea=''ʯͷC'' '); + sql.add('and AddressArea=''ʯͷC'' AND isnull(STORE,'''')<>'''' '); Open; end; SCreateCDS(ADO_2, CDS_2); @@ -191,9 +206,9 @@ begin begin Close; sql.clear; - sql.add('select cast((case when isnull(Urgent,'''')<>'''' then 0 else 1 end )as int) as Urgent,* from Trade_Market_Main A inner join Trade_Market_Sub B on B.TMMId=A.TMMId '); + sql.add('select cast((case when isnull(isUrgent,'''')<>'''' then 0 else 1 end )as int) as Urgent,* from Trade_Market_Main A '); sql.add('where 1=1'); - sql.add('and AddressArea=''M'' '); + sql.add('and AddressArea=''M'' AND isnull(STORE,'''')<>'''' '); Open; end; SCreateCDS(ADO_3, CDS_3); @@ -206,20 +221,28 @@ begin begin Close; sql.clear; - sql.add('select cast((case when isnull(Urgent,'''')<>'''' then 0 else 1 end )as int) as Urgent,* from Trade_Market_Main A inner join Trade_Market_Sub B on B.TMMId=A.TMMId '); - sql.add('where 1=1 and isnull(Status,0)=''9'' '); + sql.add('select cast((case when isnull(isUrgent,'''')<>'''' then 0 else 1 end )as int) as Urgent,* from Trade_Market_Main A '); + sql.add('where 1=1 and isnull(Status,0)=''9'' AND isnull(STORE,'''')<>'''' '); Open; end; SCreateCDS(ADO_4, CDS_4); SInitCDSData(ADO_4, CDS_4); end; -procedure TfrmTradeMarketList_JDT.Timer1Timer(Sender: TObject); - +procedure TfrmTradeMarketList_JDT.N1Click(Sender: TObject); begin - for var v in TArray.Create(TV1,TV2, TV3, TV4) do + WRITECxGrid(Self.Caption, Tv1, 'PCM'); + WRITECxGrid(Self.Caption, Tv2, 'PCM'); + WRITECxGrid(Self.Caption, Tv3, 'PCM'); + WRITECxGrid(Self.Caption, Tv4, 'PCM'); +end; + +procedure TfrmTradeMarketList_JDT.Timer1Timer(Sender: TObject); +begin + for var v in TArray.Create(TV1, TV2, TV3, TV4) do begin - if v.DataController.RecordCount = 0 then Continue; + if v.DataController.RecordCount = 0 then + Continue; if v.Controller.FocusedRowIndex < v.DataController.RecordCount - 1 then begin v.Controller.FocusedRowIndex := v.Controller.FocusedRowIndex + 1; diff --git a/T05贸易门市管理/U_TradeMarketList_XY.dfm b/T05贸易门市管理/U_TradeMarketList_XY.dfm index d24d2e9..7db79e6 100644 --- a/T05贸易门市管理/U_TradeMarketList_XY.dfm +++ b/T05贸易门市管理/U_TradeMarketList_XY.dfm @@ -266,7 +266,6 @@ inherited frmTradeMarketList_XY: TfrmTradeMarketList_XY Align = alClient PopupMenu = PM_1 TabOrder = 3 - ExplicitLeft = 40 object Tv1: TcxGridDBTableView OnDblClick = Tv1DblClick Navigator.Buttons.CustomButtons = <> @@ -565,8 +564,8 @@ inherited frmTradeMarketList_XY: TfrmTradeMarketList_XY object ADOQueryCmd: TADOQuery Connection = DataLink_TradeMarket.ADOLink Parameters = <> - Left = 568 - Top = 240 + Left = 567 + Top = 239 end object ADOQueryMain: TADOQuery Connection = DataLink_TradeMarket.ADOLink diff --git a/T05贸易门市管理/U_TradeMarketList_XY.pas b/T05贸易门市管理/U_TradeMarketList_XY.pas index 78c54fe..6b60889 100644 --- a/T05贸易门市管理/U_TradeMarketList_XY.pas +++ b/T05贸易门市管理/U_TradeMarketList_XY.pas @@ -464,8 +464,8 @@ begin sql.Add('delete Trade_Market_Main where TMMId=''' + Trim(Order_Main.fieldbyname('TMMId').AsString) + ''''); sql.Add('delete Trade_Market_Sub where TMMId=''' + Trim(Order_Main.fieldbyname('TMMId').AsString) + ''''); - sql.Add('delete Trade_Market_Sub_Qty where TMMId=''' + Trim(Order_Main.fieldbyname('TMMId').AsString) + ''''); - + sql.Add('delete Trade_Market_Sub_Qty where TMSID IN (SELECT TMSID FROM Trade_Market_Sub E WHERE E.TMMID=''' + Trim(Order_Main.fieldbyname('TMMId').AsString) + ''''); + SQL.ADD(')'); sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); sql.Add(' ' + quotedstr(trim(DName))); sql.Add(',getdate() '); diff --git a/T05贸易门市管理/U_TradeMarketList_XYTH.dfm b/T05贸易门市管理/U_TradeMarketList_XYTH.dfm new file mode 100644 index 0000000..872106a --- /dev/null +++ b/T05贸易门市管理/U_TradeMarketList_XYTH.dfm @@ -0,0 +1,595 @@ +inherited frmTradeMarketList_XYth: TfrmTradeMarketList_XYth + Left = 165 + Top = 13 + Caption = #26032#20313#36864#36135#21333 + ClientHeight = 594 + ClientWidth = 1540 + Color = clBtnFace + Font.Height = -16 + FormStyle = fsMDIChild + Position = poScreenCenter + Visible = True + ExplicitWidth = 1556 + ExplicitHeight = 633 + PixelsPerInch = 96 + TextHeight = 21 + object ToolBar1: TToolBar [0] + Tag = 1 + Left = 0 + Top = 0 + Width = 1540 + Height = 30 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 99 + Caption = 'ToolBar1' + Images = DataLink_TradeMarket.cxImageList_bar + List = True + ShowCaptions = True + TabOrder = 4 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 1 + OnClick = TBRafreshClick + end + object TBAdd: TToolButton + Left = 71 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 9 + OnClick = TBAddClick + end + object btnCopy: TToolButton + Left = 142 + Top = 0 + AutoSize = True + Caption = #22797#21046 + ImageIndex = 13 + OnClick = btnCopyClick + end + object TBEdit: TToolButton + Left = 213 + Top = 0 + AutoSize = True + Caption = #20462#25913 + ImageIndex = 3 + OnClick = TBEditClick + end + object TBDel: TToolButton + Left = 284 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 5 + OnClick = TBDelClick + end + object TBPrint: TToolButton + Left = 355 + Top = 0 + AutoSize = True + Caption = #25171#21360 + ImageIndex = 21 + OnClick = TBPrintClick + end + object TBCK: TToolButton + Left = 426 + Top = 0 + AutoSize = True + Caption = #26597#30475 + ImageIndex = 8 + OnClick = TBCKClick + end + object ToolButton4: TToolButton + Left = 497 + Top = 0 + AutoSize = True + Caption = #38468#20214 + ImageIndex = 22 + OnClick = ToolButton4Click + end + object TWC: TToolButton + Left = 568 + Top = 0 + AutoSize = True + Caption = #24050#23436#25104 + ImageIndex = 12 + OnClick = TWCClick + end + object TNowc: TToolButton + Left = 655 + Top = 0 + AutoSize = True + Caption = #25764#38144#23436#25104 + ImageIndex = 11 + OnClick = TNowcClick + end + object ToolButton2: TToolButton + Left = 758 + Top = 0 + AutoSize = True + Caption = #20445#23384#26684#24335 + ImageIndex = 16 + OnClick = ToolButton2Click + end + object ToolButton1: TToolButton + Left = 861 + Top = 0 + AutoSize = True + Caption = #23548#20986 + ImageIndex = 28 + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 932 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 7 + OnClick = TBCloseClick + end + end + object Panel1: TPanel [1] + Left = 0 + Top = 30 + Width = 1540 + Height = 91 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + ParentBackground = False + TabOrder = 5 + object Label3: TLabel + Left = 24 + Top = 51 + Width = 64 + Height = 21 + Caption = #21333#25454#32534#21495 + end + object Label1: TLabel + Left = 408 + Top = 51 + Width = 32 + Height = 21 + Caption = #23458#25143 + end + object Label2: TLabel + Left = 216 + Top = 51 + Width = 64 + Height = 21 + Caption = #33394#24067#21517#31216 + end + object Label4: TLabel + Left = 568 + Top = 51 + Width = 48 + Height = 21 + Caption = #21512#21516#21495 + end + object TMMNo: TcxTextEdit + Tag = 2 + Left = 92 + Top = 47 + TabOrder = 0 + OnKeyPress = TMMNoKeyPress + Width = 120 + end + object CustName: TcxTextEdit + Tag = 2 + Left = 444 + Top = 47 + TabOrder = 1 + OnKeyPress = TMMNoKeyPress + Width = 120 + end + object C_Name: TcxTextEdit + Tag = 2 + Left = 284 + Top = 47 + TabOrder = 2 + OnKeyPress = TMMNoKeyPress + Width = 120 + end + object ConNo: TcxTextEdit + Tag = 2 + Left = 620 + Top = 47 + TabOrder = 3 + OnKeyPress = TMMNoKeyPress + Width = 120 + end + inline frmFrameDateSel1: TfrmFrameDateSel + Left = 2 + Top = 2 + Width = 1536 + Height = 37 + Align = alTop + Color = clWhite + ParentBackground = False + ParentColor = False + TabOrder = 4 + ExplicitLeft = 2 + ExplicitTop = 2 + ExplicitWidth = 1536 + ExplicitHeight = 37 + inherited lbl2: TLabel + Width = 16 + Height = 21 + ExplicitWidth = 16 + ExplicitHeight = 21 + end + end + end + object cxGrid1: TcxGrid [2] + Left = 0 + Top = 152 + Width = 1540 + Height = 442 + Align = alClient + PopupMenu = PM_1 + TabOrder = 3 + object Tv1: TcxGridDBTableView + OnDblClick = Tv1DblClick + Navigator.Buttons.CustomButtons = <> + ScrollbarAnnotations.CustomAnnotations = <> + OnCellDblClick = Tv1CellDblClick + DataController.DataSource = DataSource1 + DataController.Filter.AutoDataSetFilter = True + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.CellHints = True + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.IndicatorWidth = 30 + object v1Column16: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + HeaderAlignmentHorz = taCenter + Width = 77 + end + object Tv1Column7: TcxGridDBColumn + Caption = #21333#25454#32534#21495 + DataBinding.FieldName = 'TMMNo' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 77 + end + object v1OrdDate: TcxGridDBColumn + Caption = #21046#21333#26085#26399 + DataBinding.FieldName = 'TMMDate' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object Tv1Column2: TcxGridDBColumn + Caption = #32463#33829#21333#20301 + DataBinding.FieldName = 'OurCoName' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object Tv1Column4: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustName' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object v1DeliveryDate: TcxGridDBColumn + Caption = #20132#36135#26085#26399 + DataBinding.FieldName = 'DlyDate' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + OnCustomDrawCell = v1DeliveryDateCustomDrawCell + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object Tv1Column6: TcxGridDBColumn + Caption = #21046#21333#20154 + DataBinding.FieldName = 'FILLER' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object Tv1Column1: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'OrdNote' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object Tv1Column3: TcxGridDBColumn + Caption = #21457#36135#22320#22336 + DataBinding.FieldName = 'ShippingAddress' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 77 + end + object Tv1Column5: TcxGridDBColumn + Caption = #32852#31995#26041#24335 + DataBinding.FieldName = 'CONTACT' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object Tv1Column8: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'C_Code' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object Tv1Column9: TcxGridDBColumn + Caption = #33394#24067#21517#31216 + DataBinding.FieldName = 'C_Name' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object Tv1Column12: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'C_Color' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object Tv1Column17: TcxGridDBColumn + Caption = #33394#21495 + DataBinding.FieldName = 'C_ColorNo' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 58 + end + object Tv1Column11: TcxGridDBColumn + Caption = #36864#36135#25968#37327 + DataBinding.FieldName = 'OrderQty' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 104 + end + object Tv1Column23: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'Price' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 70 + end + object Tv1Column24: TcxGridDBColumn + Caption = #37329#39069 + DataBinding.FieldName = 'Amount' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 70 + end + object Tv1Column13: TcxGridDBColumn + Caption = #36864#36135#21333#20301 + DataBinding.FieldName = 'OrderUnit' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 91 + end + object Tv1Column14: TcxGridDBColumn + Caption = #24211#23384#38656#27714 + DataBinding.FieldName = 'TMSQty' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 95 + end + object Tv1Column16: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'OrdSNote' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object Tv1Column25: TcxGridDBColumn + Caption = #35746#21333#31867#22411 + DataBinding.FieldName = 'OrdType' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 60 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxTabControl1: TcxTabControl [3] + Left = 0 + Top = 121 + Width = 1540 + Height = 31 + Align = alTop + TabOrder = 2 + Properties.CustomButtons.Buttons = <> + Properties.Style = 9 + Properties.TabIndex = 0 + Properties.Tabs.Strings = ( + ' '#26410#23436#25104' ' + ' '#24050#23436#25104' ' + ' '#20840#37096' ') + OnChange = cxTabControl1Change + ClientRectBottom = 31 + ClientRectRight = 1540 + ClientRectTop = 28 + end + inherited loadProcess: TPanel + Left = 720 + Top = 354 + ExplicitLeft = 720 + ExplicitTop = 354 + end + inherited cxProgressBar2: TcxProgressBar + Left = 720 + Top = 296 + ExplicitLeft = 720 + ExplicitTop = 296 + ExplicitHeight = 29 + end + inherited ADOQueryBaseCmd: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + Left = 255 + Top = 314 + end + inherited ADOQueryBaseTemp: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + Left = 157 + Top = 256 + end + object cxgrdpmn1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 660 + Top = 428 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + Parameters = <> + Left = 568 + Top = 240 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 420 + Top = 216 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 320 + Top = 224 + end + object DataSource1: TDataSource + DataSet = Order_Main + Left = 812 + Top = 440 + end + object Order_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 724 + Top = 432 + end + object ADOQuerySub: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + Parameters = <> + Left = 312 + Top = 600 + end + object DataSource2: TDataSource + DataSet = ORDER_SUB + Left = 408 + Top = 604 + end + object ADOQueryImage: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + EnableBCD = False + Parameters = <> + Left = 316 + Top = 283 + end + object DSImage: TDataSource + DataSet = ADOQueryImage + Left = 416 + Top = 288 + end + object IdFTP1: TIdFTP + ConnectTimeout = 0 + NATKeepAlive.UseKeepAlive = False + NATKeepAlive.IdleTimeMS = 0 + NATKeepAlive.IntervalMS = 0 + ProxySettings.ProxyType = fpcmNone + ProxySettings.Port = 0 + ReadTimeout = 0 + Left = 92 + Top = 258 + end + object ORDER_SUB: TClientDataSet + Aggregates = <> + Params = <> + Left = 212 + Top = 608 + end + object PopupMenu2: TPopupMenu + Left = 532 + Top = 636 + object N3: TMenuItem + Caption = #20840#36873 + OnClick = N3Click + end + object N4: TMenuItem + Caption = #20840#24323 + OnClick = N4Click + end + object N2: TMenuItem + Caption = #22797#21046 + end + end + object cxgrdpmn2: TcxGridPopupMenu + PopupMenus = <> + Left = 660 + Top = 636 + end + object CDS_WXTS: TClientDataSet + Aggregates = <> + Params = <> + Left = 412 + Top = 424 + end + object PM_1: TPopupMenu + Left = 988 + Top = 356 + object N1: TMenuItem + Caption = #22797#21046 + OnClick = N1Click + end + object N5: TMenuItem + Caption = #20840#36873 + OnClick = N5Click + end + object N6: TMenuItem + Caption = #20840#24323 + OnClick = N6Click + end + end + object GPM_3: TcxGridPopupMenu + PopupMenus = <> + Left = 860 + Top = 228 + end +end diff --git a/T05贸易门市管理/U_TradeMarketList_XYTH.pas b/T05贸易门市管理/U_TradeMarketList_XYTH.pas new file mode 100644 index 0000000..257c912 --- /dev/null +++ b/T05贸易门市管理/U_TradeMarketList_XYTH.pas @@ -0,0 +1,1208 @@ +unit U_TradeMarketList_XYTH; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage, + cxEdit, DB, cxDBData, cxGridLevel, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxClasses, cxControls, cxGridCustomView, cxGrid, cxMemo, + cxRichEdit, ComCtrls, cxContainer, cxTextEdit, cxMaskEdit, cxButtonEdit, + StdCtrls, ToolWin, DBClient, ADODB, ExtCtrls, BtnEdit, cxCalendar, StrUtils, + cxCurrencyEdit, cxImage, cxDBEdit, Menus, RM_Common, RM_Class, RM_e_Xls, + RM_Dataset, RM_System, RM_GridReport, cxGridCustomPopupMenu, cxGridPopupMenu, + cxPC, cxSplitter, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, + IdFTP, ShellAPI, cxDropDownEdit, cxCheckBox, RM_e_Graphic, RM_e_Jpeg, + cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, dxBarBuiltInMenu, Math, + dxDateRanges, IdExplicitTLSClientServerBase, U_BaseList, Vcl.Clipbrd, + dxScrollbarAnnotations, cxProgressBar, FrameDateSel, dxSkinsCore, + dxSkinsDefaultPainters, dxSkinWXI; + +type + TfrmTradeMarketList_XYth = class(TfrmBaseList) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBAdd: TToolButton; + TBEdit: TToolButton; + TBDel: TToolButton; + TBPrint: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + Tv1: TcxGridDBTableView; + cxGrid1Level1: TcxGridLevel; + cxGrid1: TcxGrid; + cxgrdpmn1: TcxGridPopupMenu; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + Label3: TLabel; + TMMNo: TcxTextEdit; + v1OrdDate: TcxGridDBColumn; + v1DeliveryDate: TcxGridDBColumn; + Order_Main: TClientDataSet; + TBCK: TToolButton; + btnCopy: TToolButton; + ADOQuerySub: TADOQuery; + DataSource2: TDataSource; + ToolButton4: TToolButton; + cxTabControl1: TcxTabControl; + TWC: TToolButton; + TNowc: TToolButton; + ADOQueryImage: TADOQuery; + DSImage: TDataSource; + IdFTP1: TIdFTP; + v1Column16: TcxGridDBColumn; + ORDER_SUB: TClientDataSet; + PopupMenu2: TPopupMenu; + N3: TMenuItem; + N4: TMenuItem; + Label1: TLabel; + CustName: TcxTextEdit; + Tv1Column6: TcxGridDBColumn; + cxgrdpmn2: TcxGridPopupMenu; + Tv1Column2: TcxGridDBColumn; + Tv1Column1: TcxGridDBColumn; + Label2: TLabel; + C_Name: TcxTextEdit; + CDS_WXTS: TClientDataSet; + Label4: TLabel; + ConNo: TcxTextEdit; + ToolButton2: TToolButton; + PM_1: TPopupMenu; + N1: TMenuItem; + N2: TMenuItem; + GPM_3: TcxGridPopupMenu; + Tv1Column4: TcxGridDBColumn; + Tv1Column3: TcxGridDBColumn; + Tv1Column5: TcxGridDBColumn; + frmFrameDateSel1: TfrmFrameDateSel; + Tv1Column7: TcxGridDBColumn; + Tv1Column8: TcxGridDBColumn; + Tv1Column9: TcxGridDBColumn; + Tv1Column12: TcxGridDBColumn; + Tv1Column14: TcxGridDBColumn; + Tv1Column16: TcxGridDBColumn; + ToolButton1: TToolButton; + Tv1Column11: TcxGridDBColumn; + Tv1Column13: TcxGridDBColumn; + Tv1Column17: TcxGridDBColumn; + N5: TMenuItem; + N6: TMenuItem; + Tv1Column23: TcxGridDBColumn; + Tv1Column24: TcxGridDBColumn; + Tv1Column25: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure TBEditClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure TBPrintClick(Sender: TObject); + procedure TBRafreshClick(Sender: TObject); + procedure TBAddClick(Sender: TObject); + procedure OrderNoMChange(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBTPClick(Sender: TObject); + procedure CheckBox1Click(Sender: TObject); + procedure CheckBox2Click(Sender: TObject); + procedure Tv1StylesGetContentStyle(Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); + procedure v1DeliveryDateCustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); + procedure TBCKClick(Sender: TObject); + procedure btnCopyClick(Sender: TObject); + procedure TMMNoKeyPress(Sender: TObject; var Key: Char); + procedure ToolButton4Click(Sender: TObject); + procedure cxTabControl1Change(Sender: TObject); +// procedure TchkClick(Sender: TObject); +// procedure TnochkClick(Sender: TObject); + procedure TWCClick(Sender: TObject); + procedure TNowcClick(Sender: TObject); + procedure TBTJClick(Sender: TObject); + procedure TBTJCXClick(Sender: TObject); + procedure N3Click(Sender: TObject); + procedure N4Click(Sender: TObject); + procedure ComboBox1Change(Sender: TObject); + procedure CustomerNoNameKeyPress(Sender: TObject; var Key: Char); + procedure ToolButton10Click(Sender: TObject); + procedure JGTypeChange(Sender: TObject); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); + procedure ToolButton2Click(Sender: TObject); + procedure N1Click(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure N5Click(Sender: TObject); + procedure N6Click(Sender: TObject); + procedure TBZFClick(Sender: TObject); + procedure TBNOZFClick(Sender: TObject); + procedure Tv1DblClick(Sender: TObject); + private + DQdate: TDateTime; + procedure InitGrid(); + procedure InitForm(); + function DelData(): Boolean; + procedure SetStatus(); + procedure InitImage(fwbid: string); + procedure SendMessageQR(MDateId, KeyWord1, KeyWord2, KeyWord3: string); + { Private declarations } + public + FFInt, FCloth: Integer; + canshu1, canshu2, canshu4: string; + fFlileFlag: string; + FNOTE: string; + FOrdType: string; + { Public declarations } + end; + +var + frmTradeMarketList_XYth: TfrmTradeMarketList_XYth; + +implementation + +uses + U_DataLink, U_RTFun, U_ZDYHelp, U_LabelPrint, U_AttachmentUpload, + U_TradeMarketInPut_XYth; + +{$R *.dfm} + +procedure TfrmTradeMarketList_XYth.InitImage(fwbid: string); +begin + ADOQueryImage.close; + if fwbid = '' then + exit; + with ADOQueryImage do + begin + close; + sql.Clear; + sql.Add('select * from TP_File A'); + sql.Add('where WBID=' + quotedstr(trim(fwbid))); + open; + end; +end; + +procedure TfrmTradeMarketList_XYth.SetStatus(); +begin + btnCopy.Enabled := false; + tbadd.Enabled := false; + TBEdit.Enabled := False; + TBDel.Enabled := False; + +// tchk.Enabled := false; +// tnochk.Enabled := false; + TWC.Enabled := False; + TNowc.Enabled := False; + TBDel.Enabled := False; + + case cxTabControl1.TabIndex of + 0: + begin + tbadd.Enabled := True; + TBEdit.Enabled := True; + TBDel.Enabled := True; +// TBTJ.Enabled := True; + btnCopy.Enabled := True; + TWC.Enabled := True; + end; + 1: + begin + TNowc.Enabled := True; + tbadd.Enabled := True; + btnCopy.Enabled := True; + end; + + 2: + begin +// TNowc.Enabled := True; + tbadd.Enabled := True; + btnCopy.Enabled := True; + end; + end; + +end; + +procedure TfrmTradeMarketList_XYth.JGTypeChange(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmTradeMarketList_XYth.FormDestroy(Sender: TObject); +begin + inherited; +// frmProductOrderList:=nil; +end; + +procedure TfrmTradeMarketList_XYth.FormClose(Sender: TObject; var Action: TCloseAction); +begin + inherited; + Action := caFree; +end; + +procedure TfrmTradeMarketList_XYth.FormCreate(Sender: TObject); +begin + inherited; + cxgrid1.Align := alClient; + DQdate := SGetServerDate(ADOQueryTemp); + +end; + +procedure TfrmTradeMarketList_XYth.TBCloseClick(Sender: TObject); +begin + + Close; + +end; + +procedure TfrmTradeMarketList_XYth.InitGrid(); +var + SqlStr, FilterStr: string; +begin + FilterStr := SGetFilters(Panel1, 1, 2); + + SqlStr := ' exec P_Trade_Market_th_View '; + SqlStr := SqlStr + ' @BegDate=' + quotedstr(Trim(FormatDateTime('yyyy-MM-dd', frmFrameDateSel1.BegDate.Date))); + SqlStr := SqlStr + ' ,@EndDate=' + quotedstr(Trim(FormatDateTime('yyyy-MM-dd', frmFrameDateSel1.enddate.Date + 1))); + SqlStr := SqlStr + ' ,@StkPosition= ' + QuotedStr(Trim(canshu2)); + if canshu1 = '¼' then + SqlStr := SqlStr + ' ,@Filler= ' + QuotedStr(Trim(DName)); + + SqlStr := SqlStr + ' ,@Stores= ' + QuotedStr(Trim(canshu4)); + case cxTabControl1.TabIndex of // 1 δ 10 + 0: + begin + SqlStr := SqlStr + ' , @Status=''1'' '; //δ + end; + 1: + begin + SqlStr := SqlStr + ' , @Status=''10'' '; // + end; + + end; +// showmessage(SqlStr); + InitCDSData(ADOQueryMain, Order_Main, Tv1, SqlStr, FilterStr, 'TMMId'); +end; + +procedure TfrmTradeMarketList_XYth.SendMessageQR(MDateId, KeyWord1, KeyWord2, KeyWord3: string); +begin +// with ADOQueryTemp do +// begin +// Close; +// SQL.Clear; +// sql.Add('select distinct A.* from SY_User A inner join SY_Purview B on A.UserID=B.UserID where A.Valid=''Y'' '); +// SQL.Add('and isnull(A.wxid,'''')<>'''''); +// SQL.Add(' and exists(select 1 from SY_ModuleSub X where X.ModuleID=B.ModuleID and X.ModuleSubID=B.ModuleSubID and X.FormName=''ƻ'' )'); +//// showmessage(sql.text); +// Open; +// end; +// SCreateCDS(ADOQueryTemp, CDS_WXTS); +// SInitCDSData(ADOQueryTemp, CDS_WXTS); +// +// if CDS_WXTS.IsEmpty then +// begin +// Application.MessageBox('ûδ΢,ύʧܣ', 'ʾϢ', 0); +// Exit; +// end; +// CDS_WXTS.First; +// while not CDS_WXTS.eof do +// begin +// with ADOQueryCmd do +// begin +// Close; +// SQL.Clear; +// SQL.Add('select * from WeixinMessage where 1<>1'); +// Open; +// Append; +// FieldByName('MessageType').Value := 'OrderToAudit'; +// FieldByName('MessageName').Value := 'ƻ'; +// FieldByName('Title').Value := 'µƻ'; +// FieldByName('URL').Value := 'subpages/plan/view?id=' + Trim(MDateId); +// FieldByName('OpenId').Value := Trim(CDS_WXTS.FieldByName('wxid').AsString); +// FieldByName('Status').Value := '0'; +// FieldByName('CreateDate').Value := FormatDateTime('yyyymmdd', SGetServerDateTime(ADOQueryTemp)); +// FieldByName('CreateTime').Value := FormatDateTime('HH:mm:ss', SGetServerDateTime(ADOQueryTemp)); +// FieldByName('BusinessId').Value := Trim(MDateId); +// FieldByName('KeyWord1').Value := Trim(KeyWord1); +// FieldByName('KeyWord2').Value := Trim(KeyWord2); +// FieldByName('KeyWord3').Value := Trim(KeyWord3); +// FieldByName('Remark').Value := 'ɲѯ飡'; +// Post; +// end; +// CDS_WXTS.Next; +// end; +// +// GetHTTP('http://aotang.rightsoft.top/api/message/send/OrderToAudit'); +end; + +procedure TfrmTradeMarketList_XYth.InitForm(); +begin + ReadCxGrid('ָʾбFF1', Tv1, 'ָʾ'); + frmFrameDateSel1.BegDate.Date := SGetServerDate(ADOQueryTemp) - 180; + frmFrameDateSel1.EndDate.Date := SGetServerDate(ADOQueryTemp); + + SetStatus(); + InitGrid(); +end; + +procedure TfrmTradeMarketList_XYth.TBEditClick(Sender: TObject); +begin + if Order_Main.IsEmpty then + Exit; + + if Trim(Order_Main.fieldbyname('Filler').AsString) <> Trim(DName) then + begin + Application.MessageBox('ܲ˵!', 'ʾ', 0); + Exit; + end; + + try + frmTradeMarketInPut_XYTH := TfrmTradeMarketInPut_XYTH.Create(Application); + with frmTradeMarketInPut_XYTH do + begin + + PState := 1; + FTMMId := Trim(Self.Order_Main.fieldbyname('TMMId').AsString); + FTMMNo := Trim(Self.Order_Main.fieldbyname('TMMNo').AsString); + canshu1 := self.canshu1; + canshu4 := self.canshu4; + frmTradeMarketInPut_XYTH.fordtype := self.fordtype; + if ShowModal = 1 then + begin + + end; + end; + finally + frmTradeMarketInPut_XYTH.Free; + end; + +end; + +procedure TfrmTradeMarketList_XYth.TBNOZFClick(Sender: TObject); +begin + if Order_Main.IsEmpty then + exit; + if Trim(Order_Main.fieldbyname('Filler').AsString) <> Trim(DName) then + begin + Application.MessageBox('ܲ˵!', 'ʾ', 0); + Exit; + end; + if Application.MessageBox('Ƿʵݣ', 'ʾ', 32 + 4) <> IDYES then + Exit; + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update Trade_Market_Main SET status=''1'' '); + sql.Add('where TMMId=' + quotedstr(trim(Order_Main.fieldbyname('TMMId').AsString))); + + sql.Add('insert into Finance_Need_Up(UType,UDataId,UOperation,UOperator,UModule,UDetails) '); + sql.Add('values(''óײ'' '); + sql.Add(',' + quotedstr(trim(Order_Main.fieldbyname('TMMId').AsString))); + sql.Add(','''' '); + sql.Add(',' + quotedstr(DName)); + sql.Add(',' + quotedstr(trim(self.Caption))); + sql.Add(',' + quotedstr(trim(Order_Main.fieldbyname('TMMId').AsString))); + sql.Add(') '); + + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); + sql.Add(' ' + quotedstr(trim(DName))); + sql.Add(',getdate() '); + sql.Add(',' + quotedstr(trim(self.Caption))); + sql.Add(',' + quotedstr(trim('ƻ'))); + sql.Add(',' + quotedstr(trim('ƻţ' + trim(Order_Main.FieldByName('TMMNO').AsString)))); + sql.Add(',' + quotedstr(trim('ɹ'))); + sql.Add(')'); + execsql; + end; + application.MessageBox('ƻϳɹ', 'ʾϢ'); + TBRafresh.Click; + except + application.MessageBox('ƻʧܣ', 'ʾϢ', 0); + end; +end; + +procedure TfrmTradeMarketList_XYth.TBDelClick(Sender: TObject); +begin + if Order_Main.IsEmpty then + Exit; + if Trim(Order_Main.fieldbyname('Filler').AsString) <> Trim(DName) then + begin + Application.MessageBox('ܲ˵!', 'ʾ', 0); + Exit; + end; + + if Application.MessageBox('ȷҪɾ', 'ʾ', 32 + 4) <> IDYES then + Exit; + + while Order_Main.Locate('SSel', true, []) do + begin + if Trim(Order_Main.fieldbyname('TMMId').AsString) <> '' then + begin + DelData() + end; + Order_Main.Delete; + end; +end; + +function TfrmTradeMarketList_XYth.DelData(): Boolean; +begin + try + Result := false; + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('exec P_Fin_Flow_Judge '); + Sql.Add(' @FFIDS=' + quotedstr(Order_Main.fieldbyname('TMMId').AsString)); + Sql.Add(',@DCode=' + quotedstr(Trim(DCode))); + Sql.Add(',@DName=' + quotedstr(Trim(DName))); + Open; + end; + if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox(PChar(ADOQueryTemp.fieldbyname('ShowMsg').AsString), 'ʾ', 0); + exit; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete Trade_Market_TH_Main where TMMId=''' + Trim(Order_Main.fieldbyname('TMMId').AsString) + ''''); + sql.Add('delete Trade_Market_TH_Sub where TMMId=''' + Trim(Order_Main.fieldbyname('TMMId').AsString) + ''''); + + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); + sql.Add(' ' + quotedstr(trim(DName))); + sql.Add(',getdate() '); + sql.Add(',' + quotedstr(trim(self.Caption))); + sql.Add(',' + quotedstr(trim('˻ɾ'))); + sql.Add(',' + quotedstr(trim('˻ţ' + trim(Order_Main.FieldByName('TMMNo').AsString)))); + sql.Add(',' + quotedstr(trim('ɹ'))); + sql.Add(')'); + ExecSQL; + end; + + ADOQueryCmd.Connection.CommitTrans; + Result := True; + except + ADOQueryCmd.Connection.RollbackTrans; + Result := False; + Application.MessageBox('ɾ쳣', 'ʾ', 0); + end; +end; + +procedure TfrmTradeMarketList_XYth.TBPrintClick(Sender: TObject); +var + WSql: string; +begin + if Order_Main.IsEmpty then + Exit; + if Order_Main.Locate('SSel', True, []) = False then + begin + Application.MessageBox('ûѡ', 'ʾ', 0); + Exit; + end; + WSql := ''; + Order_Main.DisableControls; + with Order_Main do + begin + First; + while not Eof do + begin + if Order_Main.fieldbyname('SSel').AsBoolean then + begin + if WSql <> '' then + begin + WSql := WSql + ',' + Trim(Order_Main.fieldbyname('TMSId').AsString); + end + else + begin + WSql := Trim(Order_Main.fieldbyname('TMSId').AsString); + end; + end; + Next; + end; + end; + Order_Main.Locate('SSel', True, []); + Order_Main.EnableControls; + try + frmLabelPrint := TfrmLabelPrint.Create(Application); + with frmLabelPrint do + begin + + FLMType := 'TradePlanPrintxyth'; + + FFiltration1 := Trim(WSql); + if ShowModal = 1 then + begin +// Self.InitGrid(); + end; + end; + finally + frmLabelPrint.Free; + end; +end; + +procedure TfrmTradeMarketList_XYth.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmTradeMarketList_XYth.TBAddClick(Sender: TObject); +begin + try + frmTradeMarketInPut_XYTh := TfrmTradeMarketInPut_XYTh.Create(Application); + with frmTradeMarketInPut_XYTh do + begin + PState := 0; + FTMMId := ''; + canshu1 := self.canshu1; + canshu4 := self.canshu4; + frmTradeMarketInPut_XYTh.fordtype := self.fordtype; + if ShowModal = 1 then + begin + InitGrid(); + end; + end; + finally + frmTradeMarketInPut_XYTh.Free; + end; +end; + +procedure TfrmTradeMarketList_XYth.OrderNoMChange(Sender: TObject); +begin + if ADOQueryMain.Active = False then + Exit; + SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2)); + SCreateCDS(ADOQueryMain, Order_Main); + SInitCDSData(ADOQueryMain, Order_Main); +end; + +procedure TfrmTradeMarketList_XYth.FormShow(Sender: TObject); +begin + inherited; + canshu1 := trim(self.fParameters1); + canshu2 := trim(self.fParameters2); + canshu4 := trim(self.fParameters4); + fFlileFlag := UserDataFlag + 'HX'; + cxTabControl1.TabIndex := 0; + InitForm(); +end; + +procedure TfrmTradeMarketList_XYth.TBTPClick(Sender: TObject); +var + FQty, FQty1, FMxQty, FPQty, FMxQtyS, FPQtyS: string; +begin +end; + +procedure TfrmTradeMarketList_XYth.CheckBox1Click(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmTradeMarketList_XYth.CheckBox2Click(Sender: TObject); +begin + TBRafresh.Click; +end; + +procedure TfrmTradeMarketList_XYth.Tv1StylesGetContentStyle(Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; out AStyle: TcxStyle); +var + id, id10: Integer; +begin + {try + if Tv1.GroupedItemCount=0 then + begin + Id:=Tv1.GetColumnByFieldName('DeliveryDate').Index-tv1.GroupedItemCount; + Id10:=Tv1.GetColumnByFieldName('SubStatus').Index-tv1.GroupedItemCount; + if Trim(VarToStr(ARecord.Values[id]))='' then Exit; + if Id<0 then Exit; + if ARecord.Values[id10]='' then exit; + if (ARecord.Values[id]-DQdate)>=4 then Exit; + if ((ARecord.Values[id]-DQdate)>=0) and ((ARecord.Values[id]-DQdate)<4) then + AStyle:=DataLink_.QHuangSe + else + if ARecord.Values[id]-DQdate<0 then + begin + AStyle:=DataLink_OrderManage.FenHongS; + end; + end else + begin + + end; + except + end; } +end; + +procedure TfrmTradeMarketList_XYth.v1DeliveryDateCustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +begin + { Id:=TV1.GetColumnByFieldName('DeliveryDate').Index;//;-TV1.GroupedItemCount; + Id10:=TV1.GetColumnByFieldName('SubStatus').Index; + if Id<0 then Exit; + if AViewInfo.GridRecord.Values[Id10]='' then Exit; + if AViewInfo.GridRecord.Values[Id]-SGetServerDate(ADOQueryTemp)>=4 then Exit; + if ((AViewInfo.GridRecord.Values[id]-SGetServerDate(ADOQueryTemp))>=0) and ((AViewInfo.GridRecord.Values[id]-SGetServerDate(ADOQueryTemp))<4) then + ACanvas.Brush.Color:=clYellow + else + if (AViewInfo.GridRecord.Values[id])-(SGetServerDate(ADOQueryTemp)<0) then + begin + ACanvas.Brush.Color:=clRed; + end; + begin + ACanvas.Brush.Color:=clRed; + end else + if AViewInfo.GridRecord.Values[Id]='Purple' then + begin + ACanvas.Brush.Color:=clPurple; + end else + if AViewInfo.GridRecord.Values[Id]='Olive' then + begin + ACanvas.Brush.Color:=clOlive; + end else + if AViewInfo.GridRecord.Values[Id]='Teal' then + begin + ACanvas.Brush.Color:=clTeal; + end else + if AViewInfo.GridRecord.Values[Id]='Background' then + begin + ACanvas.Brush.Color:=clBackground; + end; } +end; + +procedure TfrmTradeMarketList_XYth.TBCKClick(Sender: TObject); +begin + if Order_Main.IsEmpty then + Exit; + + try + frmTradeMarketInPut_XYTh := TfrmTradeMarketInPut_XYTh.Create(Application); + with frmTradeMarketInPut_XYTh do + begin + PState := 1; + FTMMId := Trim(Self.Order_Main.fieldbyname('TMMId').AsString); + ToolBar2.Visible := False; + TBSave.Visible := False; + ScrollBox1.Enabled := True; + N2.Visible := False; + frmTradeMarketInPut_XYTh.fordtype := self.fordtype; + TvMX.OnCellDblClick := nil; + Panel5.Visible := False; + if ShowModal = 1 then + begin + + end; + end; + finally + frmTradeMarketInPut_XYTh.Free; + end; + +end; + +procedure TfrmTradeMarketList_XYth.btnCopyClick(Sender: TObject); +begin + if Order_Main.IsEmpty then + Exit; + + try + frmTradeMarketInPut_XYTh := TfrmTradeMarketInPut_XYTh.Create(Application); + with frmTradeMarketInPut_XYTh do + begin + PState := 1; + CopyInt := 99; + FTMMId := Trim(Self.Order_Main.fieldbyname('TMMId').AsString); + canshu1 := self.canshu1; + canshu4 := self.canshu4; + frmTradeMarketInPut_XYTh.fordtype := self.fordtype; + if ShowModal = 1 then + begin + + end; + end; + finally + frmTradeMarketInPut_XYTh.Free; + end; + +end; + +procedure TfrmTradeMarketList_XYth.TMMNoKeyPress(Sender: TObject; var Key: Char); +begin + + if Key = #13 then + begin + initgrid(); + end; +end; + +procedure TfrmTradeMarketList_XYth.Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); +begin + Clipboard.SetTextBuf(PChar(Trim(Order_Main.fieldbyname(TV1.Controller.FocusedColumn.DataBinding.FilterFieldName).AsString))); +end; + +procedure TfrmTradeMarketList_XYth.Tv1DblClick(Sender: TObject); +begin + if Order_Main.IsEmpty then + Exit; + + try + frmTradeMarketInPut_XYTh := TfrmTradeMarketInPut_XYTh.Create(Application); + with frmTradeMarketInPut_XYTh do + begin + PState := 1; + FTMMId := Trim(Self.Order_Main.fieldbyname('TMMId').AsString); + ToolBar2.Enabled := False; + TBSave.Enabled := False; + ScrollBox1.Enabled := False; + N2.Visible := False; + frmTradeMarketInPut_XYTh.fordtype := self.fordtype; + TvMX.OnCellDblClick := nil; + Panel5.Enabled := False; + canshu4 := self.canshu4; + if ShowModal = 1 then + begin + + end; + end; + finally + frmTradeMarketInPut_XYTh.Free; + end; + +end; + +procedure TfrmTradeMarketList_XYth.ToolButton4Click(Sender: TObject); +begin + if Order_Main.IsEmpty then + Exit; + try + frmAttachmentUpload := TfrmAttachmentUpload.Create(Application); + with frmAttachmentUpload do + begin + if Trim(canshu1) <> 'ѯ' then + FEditAuthority := True; + fkeyNO := Trim(Self.Order_Main.fieldbyname('TMMId').AsString); + fType := '˻ָʾ'; + if ShowModal = 1 then + begin + + end; + end; + finally + frmAttachmentUpload.Free; + end; +end; + +procedure TfrmTradeMarketList_XYth.cxTabControl1Change(Sender: TObject); +begin + SetStatus(); + InitGrid(); +end; + +//procedure TfrmTradeMarketList.TchkClick(Sender: TObject); +//begin +// if Order_Main.IsEmpty then +// exit; +// if cxTabControl1.TabIndex <> 1 then +// begin +// Application.MessageBox('ֻڴ״̬½˲!', 'ʾ', 0); +// Exit; +// end; +// if Application.MessageBox('Ƿʵݣ', 'ʾ', 32 + 4) <> IDYES then +// Exit; +// try +// with ADOQueryCmd do +// begin +// close; +// sql.Clear; +// sql.Add('update Trade_Market_Main SET status=''9'',chker=''' + trim(DName) + ''',Chktime=getdate() '); +// sql.Add('where TMMId=' + quotedstr(trim(Order_Main.fieldbyname('TMMId').AsString))); +// sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); +// sql.Add(' ' + quotedstr(trim(DName))); +// sql.Add(',getdate() '); +// sql.Add(',' + quotedstr(trim(self.Caption))); +// sql.Add(',' + quotedstr(trim('ƻ'))); +// sql.Add(',' + quotedstr(trim('ƻţ' + trim(Order_Main.FieldByName('TMMNO').AsString)))); +// sql.Add(',' + quotedstr(trim('ɹ'))); +// sql.Add(')'); +// execsql; +// end; +// +// except +// application.MessageBox('ƻʧܣ', 'ʾϢ', 0); +// end; +// TBRafresh.Click; +//end; + +//procedure TfrmTradeMarketList.TnochkClick(Sender: TObject); +//begin +// if Order_Main.IsEmpty then +// exit; +// if cxTabControl1.TabIndex <> 2 then +// begin +// Application.MessageBox('ֻ״̬½˲!', 'ʾ', 0); +// Exit; +// end; +// try +// with ADOQueryCmd do +// begin +// close; +// sql.Clear; +// sql.Add('update Trade_Market_Main SET status=''1'',chker=null,Chktime=null '); +// sql.Add('where TMMId=' + quotedstr(trim(Order_Main.fieldbyname('TMMId').AsString))); +// sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); +// sql.Add(' ' + quotedstr(trim(DName))); +// sql.Add(',getdate() '); +// sql.Add(',' + quotedstr(trim(self.Caption))); +// sql.Add(',' + quotedstr(trim('ƻ'))); +// sql.Add(',' + quotedstr(trim('ƻţ' + trim(Order_Main.FieldByName('TMMNO').AsString)))); +// sql.Add(',' + quotedstr(trim('ɹ'))); +// sql.Add(')'); +// execsql; +// end; +// TBRafresh.Click; +// except +// application.MessageBox('ƻʧܣ', 'ʾϢ', 0); +// end; +//end; + +procedure TfrmTradeMarketList_XYth.TWCClick(Sender: TObject); +begin + if Order_Main.IsEmpty then + exit; + if Trim(Order_Main.fieldbyname('Filler').AsString) <> Trim(DName) then + begin + Application.MessageBox('ܲ˵!', 'ʾ', 0); + Exit; + end; + if Application.MessageBox('Ƿʵݣ', 'ʾ', 32 + 4) <> IDYES then + Exit; + try + + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update Trade_Market_th_Main SET status=''10'' '); + sql.Add('where TMMId=' + quotedstr(trim(Order_Main.fieldbyname('TMMId').AsString))); + + execsql; + end; + + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('exec P_Trade_Market_th '); + Sql.Add(' @TMMID=' + quotedstr(Trim(Order_Main.fieldbyname('TMMId').AsString))); + Sql.Add(',@DCode=' + quotedstr(Trim(DCode))); + Sql.Add(',@DName=' + quotedstr(Trim(DName))); + + Open; + end; + if ADOQueryTemp.FieldByName('intReturn').AsInteger = -1 then + begin + Application.MessageBox(PChar(ADOQueryTemp.fieldbyname('ShowMsg').AsString), 'ʾ', 0); + exit; + end; + + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('insert into Finance_Need_Up(UType,UDataId,UOperation,UOperator,UModule,UDetails) '); + sql.Add('values(''óײ'' '); + sql.Add(',' + quotedstr(trim(Order_Main.fieldbyname('TMMId').AsString))); + sql.Add(','''' '); + sql.Add(',' + quotedstr(DName)); + sql.Add(',' + quotedstr(trim(self.Caption))); + sql.Add(',' + quotedstr(trim(Order_Main.fieldbyname('TMMId').AsString))); + sql.Add(') '); + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); + sql.Add(' ' + quotedstr(trim(DName))); + sql.Add(',getdate() '); + sql.Add(',' + quotedstr(trim(self.Caption))); + sql.Add(',' + quotedstr(trim('˻'))); + sql.Add(',' + quotedstr(trim('˻ţ' + trim(Order_Main.FieldByName('TMMNO').AsString)))); + sql.Add(',' + quotedstr(trim('ɹ'))); + sql.Add(')'); + execsql; + end; + + application.MessageBox('˻ɳɹ', 'ʾϢ'); + TBRafresh.Click; + except + application.MessageBox('˻ʧܣ', 'ʾϢ', 0); + end; +end; + +procedure TfrmTradeMarketList_XYth.TNowcClick(Sender: TObject); +begin + if Order_Main.IsEmpty then + exit; + if Trim(Order_Main.fieldbyname('Filler').AsString) <> Trim(DName) then + begin + Application.MessageBox('ܲ˵!', 'ʾ', 0); + Exit; + end; + if Application.MessageBox('Ƿʵݣ', 'ʾ', 32 + 4) <> IDYES then + Exit; + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update Trade_Market_th_Main SET status=''1'' '); + sql.Add('where TMMId=' + quotedstr(trim(Order_Main.fieldbyname('TMMId').AsString))); + + execsql; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('exec P_Trade_Market_th '); + Sql.Add(' @TMMID=' + quotedstr(Trim(Order_Main.fieldbyname('TMMId').AsString))); + Sql.Add(',@DCode=' + quotedstr(Trim(DCode))); + Sql.Add(',@DName=' + quotedstr(Trim(DName))); + Open; + end; + if ADOQueryTemp.FieldByName('intReturn').AsInteger = -1 then + begin + Application.MessageBox(PChar(ADOQueryTemp.fieldbyname('ShowMsg').AsString), 'ʾ', 0); + exit; + end; + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('insert into Finance_Need_Up(UType,UDataId,UOperation,UOperator,UModule,UDetails) '); + sql.Add('values(''óײ'' '); + sql.Add(',' + quotedstr(trim(Order_Main.fieldbyname('TMMId').AsString))); + sql.Add(','''' '); + sql.Add(',' + quotedstr(DName)); + sql.Add(',' + quotedstr(trim(self.Caption))); + sql.Add(',' + quotedstr(trim(Order_Main.fieldbyname('TMMId').AsString))); + sql.Add(') '); + + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); + sql.Add(' ' + quotedstr(trim(DName))); + sql.Add(',getdate() '); + sql.Add(',' + quotedstr(trim(self.Caption))); + sql.Add(',' + quotedstr(trim('˻'))); + sql.Add(',' + quotedstr(trim('˻ţ' + trim(Order_Main.FieldByName('TMMNO').AsString)))); + sql.Add(',' + quotedstr(trim('ɹ'))); + sql.Add(')'); + execsql; + end; + application.MessageBox('˻ɳɹ', 'ʾϢ'); + TBRafresh.Click; + except + application.MessageBox('˻ʧܣ', 'ʾϢ', 0); + end; +end; + +procedure TfrmTradeMarketList_XYth.TBTJClick(Sender: TObject); +begin + if Order_Main.IsEmpty then + exit; + + if canshu1 <> 'Ȩ' then + begin + if Trim(Order_Main.fieldbyname('Filler').AsString) <> Trim(DName) then + begin + Application.MessageBox('ܲ˵!', 'ʾ', 0); + Exit; + end; + end; + + if cxTabControl1.TabIndex <> 0 then + begin + Application.MessageBox('ֻڴύ״̬½ύ!', 'ʾ', 0); + Exit; + end; + if Application.MessageBox('ȷҪύ', 'ʾ', 32 + 4) <> IDYES then + Exit; + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update Trade_Market_th_Main SET status=''2'' '); + sql.Add(' where TMMId=' + quotedstr(trim(Order_Main.fieldbyname('TMMId').AsString))); + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); + sql.Add(' ' + quotedstr(trim(DName))); + sql.Add(',getdate() '); + sql.Add(',' + quotedstr(trim(self.Caption))); + sql.Add(',' + quotedstr(trim('ƻύ'))); + sql.Add(',' + quotedstr(trim('ƻţ' + trim(Order_Main.FieldByName('TMMNO').AsString)))); + sql.Add(',' + quotedstr(trim('ɹ'))); + sql.Add(')'); + execsql; + end; + SendMessageQR(trim(Order_Main.FieldByName('TMMId').AsString), trim(Order_Main.FieldByName('Filler').AsString), trim(Order_Main.FieldByName('TMMNO').AsString), Trim(FormatDateTime('yyyy-MM-dd', Order_Main.FieldByName('TMMDate').asdatetime))); + + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('exec P_MSG_in '); + sql.Add(' @MSG=' + QuotedStr(trim('ƻţ' + trim(Order_Main.FieldByName('TMMNO').AsString) + ' Ҫ'))); + sql.Add(',@FillUserid=' + QuotedStr(trim(DCode))); + sql.Add(',@FillUserName=' + QuotedStr(trim(DName))); + sql.Add(',@FillType=' + QuotedStr(trim('Ҫȷ'))); + sql.Add(',@MegType=' + QuotedStr(trim('ƻύ'))); + execsql; + end; + application.MessageBox('ƻύɹ', 'ʾϢ'); + + except + application.MessageBox('ƻύʧܣ', 'ʾϢ', 0); + end; + TBRafresh.Click; +end; + +procedure TfrmTradeMarketList_XYth.TBTJCXClick(Sender: TObject); +begin + if Order_Main.IsEmpty then + exit; + if canshu1 <> 'Ȩ' then + begin + if Trim(Order_Main.fieldbyname('Filler').AsString) <> Trim(DName) then + begin + Application.MessageBox('ܲ˵!', 'ʾ', 0); + Exit; + end; + end; + + if cxTabControl1.TabIndex <> 1 then + begin + Application.MessageBox('ֻڴ״̬½ύ!', 'ʾ', 0); + Exit; + end; + if Application.MessageBox('ȷҪύ', 'ʾ', 32 + 4) <> IDYES then + Exit; + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update Trade_Market_Main SET status=''1'' '); + sql.Add(' where TMMId=' + quotedstr(trim(Order_Main.fieldbyname('TMMId').AsString))); + sql.Add(' and isnull(status,''0'')=''2'' '); + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); + sql.Add(' ' + quotedstr(trim(DName))); + sql.Add(',getdate() '); + sql.Add(',' + quotedstr(trim(self.Caption))); + sql.Add(',' + quotedstr(trim('ƻύ'))); + sql.Add(',' + quotedstr(trim('ƻţ' + trim(Order_Main.FieldByName('TMMNO').AsString)))); + sql.Add(',' + quotedstr(trim('ɹ'))); + sql.Add(')'); + execsql; + end; + application.MessageBox('ƻύɹ', 'ʾϢ'); + TBRafresh.Click; + except + application.MessageBox('ƻύʧܣ', 'ʾϢ', 0); + end; +end; + +procedure TfrmTradeMarketList_XYth.N1Click(Sender: TObject); +begin + Clipboard.SetTextBuf(PChar(Trim(Order_Main.fieldbyname(TV1.Controller.FocusedColumn.DataBinding.FilterFieldName).AsString))); +end; + +procedure TfrmTradeMarketList_XYth.N3Click(Sender: TObject); +begin + SelOKNoFiler(Tv1, True); //ȫѡ +end; + +procedure TfrmTradeMarketList_XYth.N4Click(Sender: TObject); +begin + SelOKNoFiler(Tv1, False); //ȫ +end; + +procedure TfrmTradeMarketList_XYth.N5Click(Sender: TObject); +begin + SelOKNo(Order_Main, True); + +end; + +procedure TfrmTradeMarketList_XYth.N6Click(Sender: TObject); +begin + SelOKNo(Order_Main, False); + +end; + +procedure TfrmTradeMarketList_XYth.ComboBox1Change(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmTradeMarketList_XYth.CustomerNoNameKeyPress(Sender: TObject; var Key: Char); +begin + if Key = #13 then + begin + InitGrid(); + end; +end; + +procedure TfrmTradeMarketList_XYth.ToolButton10Click(Sender: TObject); +begin + WriteCxGrid('ָʾбFF1', Tv1, 'ָʾ'); + application.MessageBox('ɹ', 'ʾϢ', 0); +end; + +procedure TfrmTradeMarketList_XYth.ToolButton1Click(Sender: TObject); +begin + TcxGridToExcel(Trim(Self.Caption), cxGrid1); +end; + +procedure TfrmTradeMarketList_XYth.ToolButton2Click(Sender: TObject); +begin + WriteCxGrid('ָʾбFF1', Tv1, 'ָʾ'); +end; + +procedure TfrmTradeMarketList_XYth.TBZFClick(Sender: TObject); +begin + if Order_Main.IsEmpty then + exit; + if Trim(Order_Main.fieldbyname('Filler').AsString) <> Trim(DName) then + begin + Application.MessageBox('ܲ˵!', 'ʾ', 0); + Exit; + end; + if Application.MessageBox('Ƿʵݣ', 'ʾ', 32 + 4) <> IDYES then + Exit; + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update Trade_Market_Main SET status=''11'' '); + sql.Add('where TMMId=' + quotedstr(trim(Order_Main.fieldbyname('TMMId').AsString))); + + sql.Add('insert into Finance_Need_Up(UType,UDataId,UOperation,UOperator,UModule,UDetails) '); + sql.Add('values(''óײ'' '); + sql.Add(',' + quotedstr(trim(Order_Main.fieldbyname('TMMId').AsString))); + sql.Add(','''' '); + sql.Add(',' + quotedstr(DName)); + sql.Add(',' + quotedstr(trim(self.Caption))); + sql.Add(',' + quotedstr(trim(Order_Main.fieldbyname('TMMId').AsString))); + sql.Add(') '); + + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); + sql.Add(' ' + quotedstr(trim(DName))); + sql.Add(',getdate() '); + sql.Add(',' + quotedstr(trim(self.Caption))); + sql.Add(',' + quotedstr(trim('ƻ'))); + sql.Add(',' + quotedstr(trim('ƻţ' + trim(Order_Main.FieldByName('TMMNO').AsString)))); + sql.Add(',' + quotedstr(trim('ɹ'))); + sql.Add(')'); + execsql; + end; + + application.MessageBox('ƻϳɹ', 'ʾϢ'); + TBRafresh.Click; + except + application.MessageBox('ƻʧܣ', 'ʾϢ', 0); + end; +end; + +end. + diff --git a/T05贸易门市管理/U_TradeMarketQtyInPut.dfm b/T05贸易门市管理/U_TradeMarketQtyInPut.dfm index 775e556..77a3254 100644 --- a/T05贸易门市管理/U_TradeMarketQtyInPut.dfm +++ b/T05贸易门市管理/U_TradeMarketQtyInPut.dfm @@ -20,8 +20,6 @@ inherited frmTradeMarketQtyInPut: TfrmTradeMarketQtyInPut Align = alClient Caption = 'pnl1' TabOrder = 0 - ExplicitWidth = 505 - ExplicitHeight = 427 object tlb1: TToolBar Tag = 1 Left = 1 @@ -44,7 +42,6 @@ inherited frmTradeMarketQtyInPut: TfrmTradeMarketQtyInPut ParentFont = False ShowCaptions = True TabOrder = 0 - ExplicitWidth = 503 object TBSave: TToolButton Left = 0 Top = 0 @@ -87,7 +84,6 @@ inherited frmTradeMarketQtyInPut: TfrmTradeMarketQtyInPut Align = alTop TabOrder = 1 Visible = False - ExplicitWidth = 503 object Label9: TLabel Left = 33 Top = 7 @@ -138,8 +134,6 @@ inherited frmTradeMarketQtyInPut: TfrmTradeMarketQtyInPut Align = alClient Caption = #26126#32454#20449#24687 TabOrder = 2 - ExplicitWidth = 503 - ExplicitHeight = 354 object cxGrid1: TcxGrid Left = 2 Top = 23 @@ -147,10 +141,9 @@ inherited frmTradeMarketQtyInPut: TfrmTradeMarketQtyInPut Height = 274 Align = alClient TabOrder = 0 - ExplicitWidth = 499 - ExplicitHeight = 329 object Tv1: TcxGridDBTableView OnDblClick = Tv1DblClick + OnKeyDown = Tv1KeyDown Navigator.Buttons.CustomButtons = <> Navigator.Buttons.Delete.Enabled = False Navigator.Buttons.Delete.Visible = False @@ -196,7 +189,6 @@ inherited frmTradeMarketQtyInPut: TfrmTradeMarketQtyInPut PropertiesClassName = 'TcxTextEditProperties' Properties.Alignment.Horz = taCenter HeaderAlignmentHorz = taCenter - Options.Editing = False Options.Sorting = False Width = 66 end @@ -207,6 +199,24 @@ inherited frmTradeMarketQtyInPut: TfrmTradeMarketQtyInPut HeaderAlignmentHorz = taCenter Width = 95 end + object Tv1Column2: TcxGridDBColumn + Tag = 2 + Caption = #20462#25913#20154 + DataBinding.FieldName = 'editer' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 68 + end + object Tv1Column3: TcxGridDBColumn + Tag = 2 + Caption = #20462#25913#26102#38388 + DataBinding.FieldName = 'edittime' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 98 + end end object cxGridLevel1: TcxGridLevel GridView = Tv1 diff --git a/T05贸易门市管理/U_TradeMarketQtyInPut.pas b/T05贸易门市管理/U_TradeMarketQtyInPut.pas index 449b266..7fc4b9d 100644 --- a/T05贸易门市管理/U_TradeMarketQtyInPut.pas +++ b/T05贸易门市管理/U_TradeMarketQtyInPut.pas @@ -42,6 +42,8 @@ type cxGridLevel1: TcxGridLevel; btnAdd: TToolButton; Tv1Column1: TcxGridDBColumn; + Tv1Column2: TcxGridDBColumn; + Tv1Column3: TcxGridDBColumn; procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure FormShow(Sender: TObject); procedure FromCoNameDblClick(Sender: TObject); @@ -54,6 +56,7 @@ type private { Private declarations } function SaveData(): Boolean; + function SaveData2(): Boolean; function Split(const s: string; Separator: char): TStringDynArray; public { Public declarations } @@ -74,6 +77,126 @@ uses {$R *.dfm} // ַָ + +function TfrmTradeMarketQtyInPut.SaveData2(): Boolean; +var + MBCIOID, Maxno: string; +begin + try + ADOQueryCmd.Connection.BeginTrans; + CDS_1.DisableControls; + with CDS_1 do + begin + First; + while not eof do + begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from BS_Cloth_IO where BCIOID=''' + Trim(CDS_1.fieldbyname('BCIOID').AsString) + ''''); + Open; + end; + MBCIOID := Trim(ADOQueryTemp.fieldbyname('BCIOID').AsString); + if Trim(MBCIOID) = '' then + begin + if not GetLSNo(ADOQueryCmd, Maxno, 'MC', 'BS_Cloth_IO', 4, 1) then + raise Exception.Create('ȡȾɫʧܣ'); + end + else + begin + Maxno := Trim(MBCIOID); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from BS_Cloth_IO where BCIOID=''' + Trim(Maxno) + ''''); + Open; + end; + with ADOQueryCmd do + begin + if Trim(MBCIOID) = '' then + begin + Append; + FieldByName('Fillid').Value := Trim(Dcode); + FieldByName('Filler').Value := Trim(DName); + FieldByName('status').value := '0'; + end + else + begin + Edit; + FieldByName('Editid').Value := Trim(Dcode); + FieldByName('Editer').Value := Trim(DName); + FieldByName('EditTime').Value := SGetServerDate(ADOQueryTemp); + + end; + RTSetSaveDataCDS(ADOQueryCmd, Tv1, CDS_1, 'BS_Cloth_IO', 0); + + Post; + end; +// with ADOQueryCmd do +// begin +// Close; +// sql.Clear; +// sql.Add('Update BS_Cloth_IO Set StkPiece=(select Sum(isnull(Piece,0)*IOQtyFlag) from BS_Cloth_IO A where A.STKID=BS_Cloth_IO.BCIOID)'); +//// sql.Add(',STKQty=(select Sum(isnull(Qty,0)*IOQtyFlag) from BS_Cloth_IO A where A.STKID=BS_Cloth_IO.BCIOID )'); +// sql.Add(',StkQty=(select Sum([dbo].[F_UnitConversion](A.QTYUNIT,A.NETWeight ,A.Meter ,A.Yardage ) *IOQtyFlag) from BS_Cloth_IO A where A.STKID=BS_Cloth_IO.BCIOID )'); +// +// sql.Add('where BCIOID=''' + Trim(CDS_1.fieldbyname('STKID').AsString) + ''''); +// ExecSQL; +// end; +// with ADOQueryTemp do +// begin +// Close; +// sql.Clear; +// sql.Add('select * from BS_Cloth_IO where BCIOID=''' + Trim(CDS_1.fieldbyname('STKID').AsString) + ''''); +// Open; +// end; +// if ADOQueryTemp.FieldByName('STKQty').Value < 0 then +// raise Exception.Create('ܱ棡'); + +// with ADOQueryCmd do +// begin +// Close; +// Sql.Clear; +// Sql.Add('exec P_BS_Cloth_Move '); +// Sql.Add(' @BCIOID=' + quotedstr(Trim(Maxno))); +// Open; +// end; +// if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then +// raise Exception.Create(pchar(trim(ADOQueryCmd.FieldByName('ShowMsg').AsString))); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('insert into Finance_Need_Up(UType,UDataId,UOperation,UOperator,UModule,UDetails) '); + sql.Add('values(''óײ'' '); + sql.Add(',' + quotedstr(Maxno)); + sql.Add(','''' '); + sql.Add(',' + quotedstr(DName)); + sql.Add(',' + quotedstr(trim(self.Caption))); + sql.Add(',' + quotedstr(Maxno)); + sql.Add(') '); + ExecSQL; + end; + Edit; + FieldByName('BCIOID').Value := Trim(Maxno); + Post; + Next; + end; + end; + CDS_1.EnableControls; + ADOQueryCmd.Connection.CommitTrans; + Result := True; + except + Result := False; + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox(PChar(Exception(ExceptObject).Message), 'ʾϢ', 0); + end; + +end; + function TfrmTradeMarketQtyInPut.Split(const s: string; Separator: char): TStringDynArray; var i, ItemIndex: Integer; @@ -147,6 +270,8 @@ end; function TfrmTradeMarketQtyInPut.SaveData(): Boolean; var Maxno, PTMSQID: string; + // ӣжǷǰ + bSkip: Boolean; begin try ADOQueryCmd.Connection.BeginTrans; @@ -156,9 +281,22 @@ begin First; while not eof do begin + // ====================== жϣQty=0 ʱ ====================== + bSkip := False; + if FieldByName('Qty').AsFloat = 0 then // =0 + begin + // жϵǰ¼ǷAppend״̬ + if (CDS_1.State = dsInsert) or (Trim(FieldByName('TMSQID').AsString) = '') then + begin + bSkip := True; // + Next; // ֱһ + Continue; // ִб + end; + end; + // ====================================================================== + with ADOQueryTemp do begin - Close; sql.Clear; sql.Add('select * from Trade_Market_Sub_Qty where TMSQID=''' + Trim(CDS_1.fieldbyname('TMSQID').AsString) + ''''); @@ -195,7 +333,6 @@ begin FieldByName('FillId').Value := Trim(DCode); FieldByName('Filler').Value := Trim(DName); FieldByName('TMSQID').Value := Trim(Maxno); - end else begin @@ -204,37 +341,28 @@ begin FieldByName('Editer').Value := Trim(DName); FieldByName('EditTime').Value := SGetServerDateTime(ADOQueryTemp); end; + RTSetSaveDataCDS(ADOQueryCmd, Tv1, CDS_1, 'Trade_Market_Sub_Qty', 0); FieldByName('TMSQID').AsString := Trim(Maxno); FieldByName('TMSId').AsString := CDS_1.FieldByName('TMSId').AsString; FieldByName('TMMId').AsString := CDS_1.FieldByName('TMMId').AsString; -// FieldByName('Qty').value := StrTofloatDef(inQty.Text, 0); Post; end; + Next; end; end; CDS_1.EnableControls; -// with ADOQueryCmd do -// begin -// Close; -// Sql.Clear; -// -// Sql.Add('exec P_BS_Cloth_UpdateByTradeMarket '); -// Sql.Add(' @TIMId=' + quotedstr(Trim(FTMMID))); -// Sql.Add(',@DCode=' + quotedstr(Trim(DCode))); -// Sql.Add(',@DName=' + quotedstr(Trim(DName))); -// Open; -// end; + with ADOQueryCmd do begin - close; - SQL.Clear; - sql.Add('update Trade_Market_Sub set outqty = (select sum(qty) from Trade_Market_Sub_Qty X where X.TMSID = Trade_Market_Sub.TMSID) where TMSID = ' + QuotedStr(PMTMSId)); -// ShowMessage(sql.Text); - ExecSQL; + close; + SQL.Clear; + sql.Add('update Trade_Market_Sub set outqty = (select sum(qty) from Trade_Market_Sub_Qty X where X.TMSID = Trade_Market_Sub.TMSID) where TMSID = ' + QuotedStr(PMTMSId)); + ExecSQL; end; + ADOQueryCmd.Connection.CommitTrans; Result := True; @@ -243,14 +371,13 @@ begin ADOQueryCmd.Connection.RollbackTrans; application.MessageBox(PChar(Exception(ExceptObject).Message), 'ʾϢ', 0); end; - end; procedure TfrmTradeMarketQtyInPut.FormShow(Sender: TObject); begin inherited; ReadCxGrid('', Tv1, 'óй'); - + TBSave.Visible := true; with ADOQueryTemp do begin Close; @@ -269,7 +396,7 @@ begin begin pnl2.Visible := true; btnAdd.Visible := true; - TBSave.Visible := true; + with ADOQueryTemp do begin Close; @@ -321,28 +448,53 @@ begin end; end; - procedure TfrmTradeMarketQtyInPut.TBSaveClick(Sender: TObject); var Maxno: string; begin + with cds_1 do + begin + while cds_1.Locate('Qty', null, []) do + begin + cds_1.Delete + end; + end; + with cds_1 do + begin + while cds_1.Locate('Qty', 0, []) do + begin + cds_1.Delete + end; + end; +// if CDS_1.Locate('Qty', null, []) = True then +// begin +// Application.MessageBox('Ϊ!', 'ʾ', 0); +// Exit; +// end; +// if CDS_1.Locate('Qty', 0, []) = True then +// begin +// Application.MessageBox('Ϊ0!', 'ʾ', 0); +// Exit; +// end; + if canshu4 = '' then + begin + if SaveData() then + begin + Application.MessageBox('ɹ!', 'ʾ', 0); + ModalResult := 1; - if CDS_1.Locate('Qty', null, []) = True then + end; + end + else begin - Application.MessageBox('Ϊ!', 'ʾ', 0); - Exit; - end; - if CDS_1.Locate('Qty', 0, []) = True then - begin - Application.MessageBox('Ϊ0!', 'ʾ', 0); - Exit; - end; - if SaveData() then - begin - Application.MessageBox('ɹ!', 'ʾ', 0); - ModalResult := 1; + if SaveData2() then + begin + Application.MessageBox('ɹ!', 'ʾ', 0); + ModalResult := 1; + end; end; + end; procedure TfrmTradeMarketQtyInPut.TBCloseClick(Sender: TObject); @@ -367,13 +519,17 @@ end; procedure TfrmTradeMarketQtyInPut.Tv1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); begin - - // Ƿ Ctrl+V - if (Key = Ord('V')) and (Shift = [ssCtrl]) then + if Key = VK_DOWN then begin - pasteDatatTocxGrid(Tv1); + btnAdd.Click(); end; + // Ƿ Ctrl+V +// if (Key = Ord('V')) and (Shift = [ssCtrl]) then +// begin +// pasteDatatTocxGrid(Tv1); +// +// end; end; diff --git a/T05贸易门市管理/U_TradeMarketQtyTHInPut.dfm b/T05贸易门市管理/U_TradeMarketQtyTHInPut.dfm new file mode 100644 index 0000000..f2d4563 --- /dev/null +++ b/T05贸易门市管理/U_TradeMarketQtyTHInPut.dfm @@ -0,0 +1,262 @@ +inherited frmTradeMarketQtyTHnPut: TfrmTradeMarketQtyTHnPut + Left = 67 + Top = 126 + Caption = #26126#32454#20837#24211#30331#35760 + ClientHeight = 372 + ClientWidth = 396 + Font.Charset = GB2312_CHARSET + Font.Height = -16 + Position = poScreenCenter + OnClose = FormClose + ExplicitWidth = 412 + ExplicitHeight = 411 + PixelsPerInch = 96 + TextHeight = 21 + object pnl1: TPanel [0] + Left = 0 + Top = 0 + Width = 396 + Height = 372 + Align = alClient + Caption = 'pnl1' + TabOrder = 0 + object tlb1: TToolBar + Tag = 1 + Left = 1 + Top = 1 + Width = 394 + Height = 30 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 83 + Caption = 'ToolBar1' + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeMarket.cxImageList_bar + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBSave: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #20445#23384 + ImageIndex = 16 + Visible = False + OnClick = TBSaveClick + end + object btnAdd: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 2 + OnClick = btnAddClick + end + object TBClose: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 7 + OnClick = TBCloseClick + end + object btn4: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #20445#23384#26684#24335 + ImageIndex = 16 + end + end + object pnl2: TPanel + Left = 1 + Top = 31 + Width = 394 + Height = 41 + Align = alTop + TabOrder = 1 + Visible = False + object Label9: TLabel + Left = 33 + Top = 7 + Width = 32 + Height = 21 + Caption = #21305#25968 + end + object Label13: TLabel + Left = 193 + Top = 7 + Width = 32 + Height = 21 + Caption = #25968#37327 + end + object Label1: TLabel + Left = 377 + Top = 6 + Width = 5 + Height = 22 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -16 + Font.Name = #24494#36719#38597#40657 + Font.Style = [fsBold] + ParentFont = False + end + object inPiece: TcxCurrencyEdit + Left = 71 + Top = 6 + Properties.AssignedValues.DisplayFormat = True + TabOrder = 0 + Width = 98 + end + object inQty: TcxCurrencyEdit + Left = 231 + Top = 6 + Properties.AssignedValues.DisplayFormat = True + TabOrder = 1 + OnKeyPress = inQtyKeyPress + Width = 98 + end + end + object GroupBox1: TGroupBox + Left = 1 + Top = 72 + Width = 394 + Height = 299 + Align = alClient + Caption = #26126#32454#20449#24687 + TabOrder = 2 + object cxGrid1: TcxGrid + Left = 2 + Top = 23 + Width = 390 + Height = 274 + Align = alClient + TabOrder = 0 + object Tv1: TcxGridDBTableView + OnDblClick = Tv1DblClick + Navigator.Buttons.CustomButtons = <> + Navigator.Buttons.Delete.Enabled = False + Navigator.Buttons.Delete.Visible = False + ScrollbarAnnotations.CustomAnnotations = <> + DataController.DataSource = DS_1 + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Kind = skCount + Position = spFooter + end + item + Kind = skSum + Position = spFooter + Column = cxGridDBColumn8 + end + item + Kind = skCount + end + item + Kind = skSum + Column = cxGridDBColumn8 + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = cxGridDBColumn8 + end + item + Kind = skCount + Column = cxGridDBColumn8 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + OptionsView.IndicatorWidth = 33 + object cxGridDBColumn8: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'Qty' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxTextEditProperties' + Properties.Alignment.Horz = taCenter + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 86 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv1 + end + end + end + end + inherited ADOQueryBaseCmd: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + Left = 268 + Top = 159 + end + inherited ADOQueryBaseTemp: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + Left = 368 + Top = 119 + end + inherited ImageList_new32: TImageList + Left = 376 + Top = 303 + end + inherited cxImageList_bar: TcxImageList + FormatVersion = 1 + Left = 580 + Top = 235 + DesignInfo = 15401540 + end + object DS_1: TDataSource + DataSet = CDS_1 + Left = 292 + Top = 423 + end + object CDS_1: TClientDataSet + Aggregates = <> + Params = <> + Left = 340 + Top = 415 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + Parameters = <> + Left = 512 + Top = 135 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 580 + Top = 167 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 308 + Top = 235 + end + object GPM_1: TcxGridPopupMenu + PopupMenus = <> + Left = 512 + Top = 235 + end + object CDS_LM: TClientDataSet + Aggregates = <> + Params = <> + Left = 536 + Top = 435 + end +end diff --git a/T05贸易门市管理/U_TradeMarketQtyTHInPut.pas b/T05贸易门市管理/U_TradeMarketQtyTHInPut.pas new file mode 100644 index 0000000..7eafef7 --- /dev/null +++ b/T05贸易门市管理/U_TradeMarketQtyTHInPut.pas @@ -0,0 +1,477 @@ +unit U_TradeMarketQtyTHInPut; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + System.Types, Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, cxCalendar, cxDropDownEdit, ComCtrls, + ToolWin, cxGridLevel, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxClasses, cxControls, cxGridCustomView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, ADODB, DBClient, cxButtonEdit, + cxTextEdit, StdCtrls, ExtCtrls, cxLookAndFeels, cxLookAndFeelPainters, + cxNavigator, dxDateRanges, dxBarBuiltInMenu, U_BaseInput, System.ImageList, + Vcl.ImgList, ComObj, dxScrollbarAnnotations, cxContainer, dxCore, cxDateUtils, + cxMaskEdit, cxImageList, cxCurrencyEdit, Vcl.Menus, Clipbrd, dxSkinsCore, + dxSkinsDefaultPainters, dxSkinWXI; + +type + TfrmTradeMarketQtyTHnPut = class(TfrmBaseInput) + DS_1: TDataSource; + CDS_1: TClientDataSet; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + GPM_1: TcxGridPopupMenu; + CDS_LM: TClientDataSet; + pnl1: TPanel; + tlb1: TToolBar; + btn4: TToolButton; + pnl2: TPanel; + inPiece: TcxCurrencyEdit; + Label9: TLabel; + inQty: TcxCurrencyEdit; + Label13: TLabel; + TBSave: TToolButton; + TBClose: TToolButton; + Label1: TLabel; + GroupBox1: TGroupBox; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + cxGridDBColumn8: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + btnAdd: TToolButton; + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormShow(Sender: TObject); + procedure FromCoNameDblClick(Sender: TObject); + procedure inQtyKeyPress(Sender: TObject; var Key: Char); + procedure TBCloseClick(Sender: TObject); + procedure TBSaveClick(Sender: TObject); + procedure btnAddClick(Sender: TObject); + procedure Tv1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); + procedure Tv1DblClick(Sender: TObject); + private + { Private declarations } + function SaveData(): Boolean; + function SaveData2(): Boolean; + function Split(const s: string; Separator: char): TStringDynArray; + public + { Public declarations } + PMTMSId, PFTMMID: string; + canshu4: string; + FName, FColor, FColorNo: string; + MTMSId, FTMMID: string; + end; + +var + frmTradeMarketQtyTHnPut: TfrmTradeMarketQtyTHnPut; + +implementation + +uses + U_DataLink, U_RTFun, U_RPFun; + +{$R *.dfm} + +// ַָ + +function TfrmTradeMarketQtyTHnPut.SaveData2(): Boolean; +var + MBCIOID, Maxno: string; +begin + try + ADOQueryCmd.Connection.BeginTrans; + CDS_1.DisableControls; + with CDS_1 do + begin + First; + while not eof do + begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from BS_Cloth_IO where BCIOID=''' + Trim(CDS_1.fieldbyname('BCIOID').AsString) + ''''); + Open; + end; + MBCIOID := Trim(ADOQueryTemp.fieldbyname('BCIOID').AsString); + if Trim(MBCIOID) = '' then + begin + if not GetLSNo(ADOQueryCmd, Maxno, 'MC', 'BS_Cloth_IO', 4, 1) then + raise Exception.Create('ȡȾɫʧܣ'); + end + else + begin + Maxno := Trim(MBCIOID); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from BS_Cloth_IO where BCIOID=''' + Trim(Maxno) + ''''); + Open; + end; + with ADOQueryCmd do + begin + if Trim(MBCIOID) = '' then + begin + Append; + FieldByName('Fillid').Value := Trim(Dcode); + FieldByName('Filler').Value := Trim(DName); + FieldByName('status').value := '0'; + end + else + begin + Edit; + FieldByName('Editid').Value := Trim(Dcode); + FieldByName('Editer').Value := Trim(DName); + FieldByName('EditTime').Value := SGetServerDate(ADOQueryTemp); + + end; + RTSetSaveDataCDS(ADOQueryCmd, Tv1, CDS_1, 'BS_Cloth_IO', 0); + + Post; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('Update BS_Cloth_IO Set StkPiece=(select Sum(isnull(Piece,0)*IOQtyFlag) from BS_Cloth_IO A where A.STKID=BS_Cloth_IO.BCIOID)'); +// sql.Add(',STKQty=(select Sum(isnull(Qty,0)*IOQtyFlag) from BS_Cloth_IO A where A.STKID=BS_Cloth_IO.BCIOID )'); + sql.Add(',StkQty=(select Sum([dbo].[F_UnitConversion](A.QTYUNIT,A.NETWeight ,A.Meter ,A.Yardage ) *IOQtyFlag) from BS_Cloth_IO A where A.STKID=BS_Cloth_IO.BCIOID )'); + + sql.Add('where BCIOID=''' + Trim(CDS_1.fieldbyname('STKID').AsString) + ''''); + ExecSQL; + end; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from BS_Cloth_IO where BCIOID=''' + Trim(CDS_1.fieldbyname('STKID').AsString) + ''''); + Open; + end; + if ADOQueryTemp.FieldByName('STKQty').Value < 0 then + raise Exception.Create('ܱ棡'); + + with ADOQueryCmd do + begin + Close; + Sql.Clear; + Sql.Add('exec P_BS_Cloth_Move '); + Sql.Add(' @BCIOID=' + quotedstr(Trim(Maxno))); + Open; + end; + if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then + raise Exception.Create(pchar(trim(ADOQueryCmd.FieldByName('ShowMsg').AsString))); + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('insert into Finance_Need_Up(UType,UDataId,UOperation,UOperator,UModule,UDetails) '); + sql.Add('values(''óײ'' '); + sql.Add(',' + quotedstr(Maxno)); + sql.Add(','''' '); + sql.Add(',' + quotedstr(DName)); + sql.Add(',' + quotedstr(trim(self.Caption))); + sql.Add(',' + quotedstr(Maxno)); + sql.Add(') '); + ExecSQL; + end; + Edit; + FieldByName('BCIOID').Value := Trim(Maxno); + Post; + Next; + end; + end; + CDS_1.EnableControls; + ADOQueryCmd.Connection.CommitTrans; + Result := True; + except + Result := False; + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox(PChar(Exception(ExceptObject).Message), 'ʾϢ', 0); + end; + +end; + +function TfrmTradeMarketQtyTHnPut.Split(const s: string; Separator: char): TStringDynArray; +var + i, ItemIndex: Integer; + len: Integer; + SeparatorCount: Integer; + Start: Integer; +begin + len := Length(s); + if len = 0 then + begin + Result := nil; + Exit; + end; + + // ָ + SeparatorCount := 0; + for i := 1 to len do + if s[i] = Separator then + Inc(SeparatorCount); + + SetLength(Result, SeparatorCount + 1); + ItemIndex := 0; + Start := 1; + + // ַ + for i := 1 to len do + begin + if s[i] = Separator then + begin + Result[ItemIndex] := Copy(s, Start, i - Start); + Inc(ItemIndex); + Start := i + 1; + end; + end; + + Result[ItemIndex] := Copy(s, Start, len - Start + 1); +end; + +procedure TfrmTradeMarketQtyTHnPut.btnAddClick(Sender: TObject); +begin + if CDS_1.IsEmpty = False then + begin + CopyAddRowCDS(CDS_1); + with CDS_1 do + begin + Edit; + FieldByName('TMSQID').Value := null; + + post; + end; + end + else + begin + with CDS_1 do + begin + Append; + + FieldByName('tmsid').Value := MTMSId; + Post; + end; + end; +end; + +procedure TfrmTradeMarketQtyTHnPut.FormClose(Sender: TObject; var Action: TCloseAction); +begin + inherited; + Action := caFree; +end; + +function TfrmTradeMarketQtyTHnPut.SaveData(): Boolean; +var + Maxno, PTMSQID: string; +begin + try + ADOQueryCmd.Connection.BeginTrans; + CDS_1.DisableControls; + with CDS_1 do + begin + First; + while not eof do + begin + with ADOQueryTemp do + begin + + Close; + sql.Clear; + sql.Add('select * from Trade_Market_Sub_Qty where TMSQID=''' + Trim(CDS_1.fieldbyname('TMSQID').AsString) + ''''); + open; + end; + + PTMSQID := Trim(ADOQueryTemp.fieldbyname('TMSQID').AsString); + if Trim(PTMSQID) = '' then + begin + if GetLSNo(ADOQueryTemp, Maxno, 'MX', 'Trade_Market_Sub_Qty', 4, 1) = False then + begin + Application.MessageBox('ȡʧ!', 'ʾ', 0); + Exit; + end; + end + else + begin + Maxno := Trim(PTMSQID); + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add('select * from Trade_Market_Sub_Qty where TMSQID=''' + Trim(Maxno) + ''''); + Open; + end; + + with ADOQueryCmd do + begin + if Trim(PTMSQID) = '' then + begin + Append; + FieldByName('FillId').Value := Trim(DCode); + FieldByName('Filler').Value := Trim(DName); + FieldByName('TMSQID').Value := Trim(Maxno); + + end + else + begin + Edit; + FieldByName('EditId').Value := Trim(DCode); + FieldByName('Editer').Value := Trim(DName); + FieldByName('EditTime').Value := SGetServerDateTime(ADOQueryTemp); + end; + RTSetSaveDataCDS(ADOQueryCmd, Tv1, CDS_1, 'Trade_Market_Sub_Qty', 0); + FieldByName('TMSQID').AsString := Trim(Maxno); + FieldByName('TMSId').AsString := CDS_1.FieldByName('TMSId').AsString; + FieldByName('TMMId').AsString := CDS_1.FieldByName('TMMId').AsString; +// FieldByName('Qty').value := StrTofloatDef(inQty.Text, 0); + Post; + end; + Next; + end; + end; + + CDS_1.EnableControls; +// with ADOQueryCmd do +// begin +// Close; +// Sql.Clear; +// +// Sql.Add('exec P_BS_Cloth_UpdateByTradeMarket '); +// Sql.Add(' @TIMId=' + quotedstr(Trim(FTMMID))); +// Sql.Add(',@DCode=' + quotedstr(Trim(DCode))); +// Sql.Add(',@DName=' + quotedstr(Trim(DName))); +// Open; +// end; + + ADOQueryCmd.Connection.CommitTrans; + Result := True; + + except + Result := False; + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox(PChar(Exception(ExceptObject).Message), 'ʾϢ', 0); + end; + +end; + +procedure TfrmTradeMarketQtyTHnPut.FormShow(Sender: TObject); +begin + inherited; + ReadCxGrid('', Tv1, 'óй'); +// TBSave.Visible := true; + pnl2.Visible := true; + btnAdd.Visible := true; + TBSave.Visible := true; + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add(' select A.* from Trade_Market_Sub_Qty A'); + sql.Add('where A.TMSId=''' + Trim(MTMSId) + ''''); +// sql.Add(' select * from Bs_Cloth_IO A inner join Trade_Market_Sub B on A.TMMID=B.TMMId and A.TMSId=B.TMSId'); +// sql.Add('where A.TMSId=''' + Trim(MTMSId) + ''''); +// showmessage(sql.text); + Open; + end; + SCreateCDS(ADOQueryTemp, CDS_1); + SInitCDSData(ADOQueryTemp, CDS_1); + +end; + +procedure TfrmTradeMarketQtyTHnPut.FromCoNameDblClick(Sender: TObject); +begin + TcxButtonEdit(Sender).Text := ''; + TcxButtonEdit(Sender).Properties.LookupItems.Text := ''; +end; + +procedure TfrmTradeMarketQtyTHnPut.inQtyKeyPress(Sender: TObject; var Key: Char); +var + i: Integer; + MaxNo: string; +begin + + if Key = #13 then + begin + + with CDS_1 do + begin + DisableControls; + for i := 1 to StrToIntDef(inPiece.Text, 1) do + begin + Append; + FieldByName('Qty').Value := StrTofloatDef(inQty.Text, 0); + FieldByName('TMSQID').Value := NULL; + FieldByName('TMSId').Value := MTMSId; + FieldByName('TMMId').Value := PFTMMId; + Post; + + end; + EnableControls; + end; + inPiece.Text := '1'; + inQty.Text := ''; + end; +end; + +procedure TfrmTradeMarketQtyTHnPut.TBSaveClick(Sender: TObject); +var + Maxno: string; +begin + + if CDS_1.Locate('Qty', null, []) = True then + begin + Application.MessageBox('Ϊ!', 'ʾ', 0); + Exit; + end; + if CDS_1.Locate('Qty', 0, []) = True then + begin + Application.MessageBox('Ϊ0!', 'ʾ', 0); + Exit; + end; + if SaveData() then + begin + Application.MessageBox('ɹ!', 'ʾ', 0); + ModalResult := 1; + + end; + +end; + +procedure TfrmTradeMarketQtyTHnPut.TBCloseClick(Sender: TObject); +begin + inherited; + Close; +end; + +procedure TfrmTradeMarketQtyTHnPut.Tv1DblClick(Sender: TObject); +begin + + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add('delete Trade_Market_Sub_Qty where TMSQID=' + quotedstr(Trim(CDS_1.FieldByName('TMSQID').AsString))); + ExecSQL; + end; + CDS_1.Delete; + +end; + +procedure TfrmTradeMarketQtyTHnPut.Tv1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); +begin + + // Ƿ Ctrl+V + if (Key = Ord('V')) and (Shift = [ssCtrl]) then + begin + pasteDatatTocxGrid(Tv1); + + end; + +end; + +end. + diff --git a/T05贸易门市管理/U_TradeQDList.dfm b/T05贸易门市管理/U_TradeQDList.dfm new file mode 100644 index 0000000..0a62f14 --- /dev/null +++ b/T05贸易门市管理/U_TradeQDList.dfm @@ -0,0 +1,555 @@ +inherited frmTradeQDStkList: TfrmTradeQDStkList + Left = 105 + Top = 131 + Caption = #27424#21333#21015#34920 + ClientHeight = 515 + ClientWidth = 1404 + Color = clBtnFace + Font.Height = -16 + FormStyle = fsMDIChild + Position = poDefault + Visible = True + ExplicitWidth = 1420 + ExplicitHeight = 554 + PixelsPerInch = 96 + TextHeight = 21 + object ToolBar1: TToolBar [0] + Tag = 1 + Left = 0 + Top = 0 + Width = 1404 + Height = 30 + AutoSize = True + ButtonHeight = 30 + ButtonWidth = 95 + Caption = 'ToolBar1' + Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_TradeMarket.cxImageList_bar + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 2 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 1 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 0 + Visible = False + OnClick = TBFindClick + end + object ToolButton1: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #36716#20026#27491#24120#21333 + ImageIndex = 24 + OnClick = ToolButton1Click + end + object ToolButton3: TToolButton + Left = 225 + Top = 0 + AutoSize = True + Caption = #26631#31614#25171#21360 + ImageIndex = 21 + OnClick = ToolButton3Click + end + object ToolButton2: TToolButton + Left = 312 + Top = 0 + AutoSize = True + Caption = #20445#23384#26684#24335 + ImageIndex = 16 + OnClick = ToolButton2Click + end + object TBClose: TToolButton + Left = 399 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 7 + OnClick = TBCloseClick + end + end + inherited cxProgressBar2: TcxProgressBar + Left = 461 + Top = 353 + ExplicitLeft = 461 + ExplicitTop = 353 + ExplicitHeight = 29 + end + object cxPageControl1: TcxPageControl [3] + Left = 0 + Top = 121 + Width = 1404 + Height = 394 + Align = alClient + TabOrder = 3 + Properties.ActivePage = cxTabSheet1 + Properties.CustomButtons.Buttons = <> + Properties.Style = 5 + OnChange = cxPageControl1Change + ClientRectBottom = 394 + ClientRectRight = 1404 + ClientRectTop = 32 + object cxTabSheet1: TcxTabSheet + Caption = ' '#27424#21333#26126#32454' ' + ImageIndex = 0 + object cxGrid2: TcxGrid + Left = 0 + Top = 0 + Width = 1404 + Height = 362 + Align = alClient + TabOrder = 0 + object TV2: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + ScrollbarAnnotations.CustomAnnotations = <> + OnCustomDrawCell = TV2CustomDrawCell + DataController.DataSource = DS_2 + DataController.Filter.AutoDataSetFilter = True + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.CellHints = True + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.IndicatorWidth = 30 + object v1Column16: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + HeaderAlignmentHorz = taCenter + Width = 77 + end + object cxGridDBColumn1: TcxGridDBColumn + Caption = #21333#25454#32534#21495 + DataBinding.FieldName = 'TMMNo' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 77 + end + object v1OrdDate: TcxGridDBColumn + Caption = #21046#21333#26085#26399 + DataBinding.FieldName = 'TMMDate' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object cxGridDBColumn2: TcxGridDBColumn + Caption = #32463#33829#21333#20301 + DataBinding.FieldName = 'OurCoName' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object cxGridDBColumn3: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustName' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object v1DeliveryDate: TcxGridDBColumn + Caption = #20132#36135#26085#26399 + DataBinding.FieldName = 'DlyDate' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object cxGridDBColumn4: TcxGridDBColumn + Caption = #21046#21333#20154 + DataBinding.FieldName = 'FILLER' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object cxGridDBColumn5: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'OrdNote' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object cxGridDBColumn6: TcxGridDBColumn + Caption = #21457#36135#22320#22336 + DataBinding.FieldName = 'ShippingAddress' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 77 + end + object cxGridDBColumn7: TcxGridDBColumn + Caption = #32852#31995#26041#24335 + DataBinding.FieldName = 'CONTACT' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object cxGridDBColumn8: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'C_Code' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object cxGridDBColumn9: TcxGridDBColumn + Caption = #33394#24067#21517#31216 + DataBinding.FieldName = 'C_Name' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object cxGridDBColumn10: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'C_Color' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object cxGridDBColumn11: TcxGridDBColumn + Caption = #33394#21495 + DataBinding.FieldName = 'C_ColorNo' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 58 + end + object cxGridDBColumn12: TcxGridDBColumn + Caption = #25253#21333#25968#37327 + DataBinding.FieldName = 'TMsqty' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 104 + end + object cxGridDBColumn14: TcxGridDBColumn + Caption = #25253#21333#21333#20301 + DataBinding.FieldName = 'tmsUnit' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 91 + end + object TV2Column1: TcxGridDBColumn + Caption = #24211#23384#25968#37327 + DataBinding.FieldName = 'kcqty' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 70 + end + object cxGridDBColumn19: TcxGridDBColumn + Caption = #27004#23618 + DataBinding.FieldName = 'StkPosition' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 95 + end + object cxGridDBColumn20: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'OrdSNote' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + end + object cxGridLevel1: TcxGridLevel + GridView = TV2 + end + end + end + object cxTabSheet2: TcxTabSheet + Caption = ' '#27424#25968#27719#24635' ' + ImageIndex = 1 + object cxGrid1: TcxGrid + Left = 0 + Top = 0 + Width = 1404 + Height = 362 + Align = alClient + TabOrder = 0 + object TV1: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + ScrollbarAnnotations.CustomAnnotations = <> + DataController.DataSource = DS_1 + DataController.Filter.AutoDataSetFilter = True + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.CellHints = True + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.IndicatorWidth = 30 + object cxGridDBColumn13: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + HeaderAlignmentHorz = taCenter + Width = 77 + end + object cxGridDBColumn27: TcxGridDBColumn + Caption = #33394#24067#21517#31216 + DataBinding.FieldName = 'C_Name' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object cxGridDBColumn28: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'C_Color' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object cxGridDBColumn29: TcxGridDBColumn + Caption = #33394#21495 + DataBinding.FieldName = 'C_ColorNo' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 58 + end + object cxGridDBColumn30: TcxGridDBColumn + Caption = #25253#21333#25968#37327 + DataBinding.FieldName = 'TMsqty' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 104 + end + object cxGridDBColumn31: TcxGridDBColumn + Caption = #25253#21333#21333#20301 + DataBinding.FieldName = 'tmsUnit' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 91 + end + end + object cxGridLevel2: TcxGridLevel + GridView = TV1 + end + end + end + end + object Panel1: TPanel [4] + Left = 0 + Top = 30 + Width = 1404 + Height = 91 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + ParentBackground = False + TabOrder = 4 + object Label3: TLabel + Left = 24 + Top = 51 + Width = 64 + Height = 21 + Caption = #21333#25454#32534#21495 + end + object Label1: TLabel + Left = 408 + Top = 51 + Width = 32 + Height = 21 + Caption = #23458#25143 + end + object Label2: TLabel + Left = 216 + Top = 51 + Width = 64 + Height = 21 + Caption = #33394#24067#21517#31216 + end + object Label4: TLabel + Left = 568 + Top = 51 + Width = 48 + Height = 21 + Caption = #21512#21516#21495 + end + object TMMNo: TcxTextEdit + Tag = 2 + Left = 92 + Top = 47 + TabOrder = 0 + Width = 120 + end + object CustName: TcxTextEdit + Tag = 2 + Left = 444 + Top = 47 + TabOrder = 1 + Width = 120 + end + object C_Name: TcxTextEdit + Tag = 2 + Left = 284 + Top = 47 + TabOrder = 2 + Width = 120 + end + object ConNo: TcxTextEdit + Tag = 2 + Left = 620 + Top = 47 + TabOrder = 3 + Width = 120 + end + inline frmFrameDateSel1: TfrmFrameDateSel + Left = 2 + Top = 2 + Width = 1400 + Height = 37 + Align = alTop + Color = clWhite + ParentBackground = False + ParentColor = False + TabOrder = 4 + ExplicitLeft = 2 + ExplicitTop = 2 + ExplicitWidth = 1400 + ExplicitHeight = 37 + inherited lbl2: TLabel + Width = 16 + Height = 21 + ExplicitWidth = 16 + ExplicitHeight = 21 + end + end + end + inherited ADOQueryBaseCmd: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + Left = 524 + Top = 181 + end + inherited ADOQueryBaseTemp: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + Left = 606 + Top = 181 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + Parameters = <> + Left = 688 + Top = 181 + end + object ADO_2: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 524 + Top = 243 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 770 + Top = 181 + end + object DS_1: TDataSource + DataSet = CDS_1 + Left = 524 + Top = 305 + end + object GPM_1: TcxGridPopupMenu + PopupMenus = <> + Left = 771 + Top = 244 + end + object CDS_1: TClientDataSet + Aggregates = <> + Params = <> + Left = 606 + Top = 243 + end + object PopupMenu1: TPopupMenu + Left = 688 + Top = 306 + object N1: TMenuItem + Caption = #20840#36873 + OnClick = N1Click + end + object N2: TMenuItem + Caption = #20840#24323 + OnClick = N2Click + end + object N3: TMenuItem + Caption = #22797#21046 + OnClick = N3Click + end + end + object GPM_2: TcxGridPopupMenu + PopupMenus = <> + Left = 852 + Top = 243 + end + object CDS_2: TClientDataSet + Aggregates = <> + Params = <> + Left = 688 + Top = 243 + end + object DS_2: TDataSource + DataSet = CDS_2 + Left = 606 + Top = 305 + end + object ADO_1: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 852 + Top = 181 + end +end diff --git a/T05贸易门市管理/U_TradeQDList.pas b/T05贸易门市管理/U_TradeQDList.pas new file mode 100644 index 0000000..38782eb --- /dev/null +++ b/T05贸易门市管理/U_TradeQDList.pas @@ -0,0 +1,429 @@ +unit U_TradeQDList; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Vcl.Printers, Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, cxGridCustomTableView, cxGridTableView, + cxGridBandedTableView, cxGridDBBandedTableView, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridDBTableView, cxGrid, StdCtrls, ComCtrls, + ExtCtrls, ToolWin, cxGridCustomPopupMenu, cxGridPopupMenu, ADODB, DBClient, + cxDropDownEdit, cxCheckBox, RM_Common, RM_Class, RM_e_Xls, RM_Dataset, + RM_System, RM_GridReport, Menus, cxCalendar, cxButtonEdit, cxTextEdit, + cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, dxDateRanges, + dxBarBuiltInMenu, U_BaseList, dxScrollbarAnnotations, cxContainer, + cxProgressBar, cxButtons, cxMaskEdit, dxSkinsCore, dxSkinsDefaultPainters, + cxPC, System.Math, Clipbrd, FrameDateSel; + +type + TfrmTradeQDStkList = class(TfrmBaseList) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBClose: TToolButton; + ADOQueryCmd: TADOQuery; + ADO_2: TADOQuery; + ADOQueryTemp: TADOQuery; + DS_1: TDataSource; + GPM_1: TcxGridPopupMenu; + CDS_1: TClientDataSet; + PopupMenu1: TPopupMenu; + ToolButton2: TToolButton; + N1: TMenuItem; + N2: TMenuItem; + ToolButton3: TToolButton; + cxPageControl1: TcxPageControl; + cxTabSheet1: TcxTabSheet; + cxTabSheet2: TcxTabSheet; + GPM_2: TcxGridPopupMenu; + CDS_2: TClientDataSet; + DS_2: TDataSource; + ADO_1: TADOQuery; + N3: TMenuItem; + Panel1: TPanel; + Label3: TLabel; + Label1: TLabel; + Label2: TLabel; + Label4: TLabel; + TMMNo: TcxTextEdit; + CustName: TcxTextEdit; + C_Name: TcxTextEdit; + ConNo: TcxTextEdit; + frmFrameDateSel1: TfrmFrameDateSel; + cxGrid2: TcxGrid; + TV2: TcxGridDBTableView; + v1Column16: TcxGridDBColumn; + cxGridDBColumn1: TcxGridDBColumn; + v1OrdDate: TcxGridDBColumn; + cxGridDBColumn2: TcxGridDBColumn; + cxGridDBColumn3: TcxGridDBColumn; + v1DeliveryDate: TcxGridDBColumn; + cxGridDBColumn4: TcxGridDBColumn; + cxGridDBColumn5: TcxGridDBColumn; + cxGridDBColumn6: TcxGridDBColumn; + cxGridDBColumn7: TcxGridDBColumn; + cxGridDBColumn8: TcxGridDBColumn; + cxGridDBColumn9: TcxGridDBColumn; + cxGridDBColumn10: TcxGridDBColumn; + cxGridDBColumn11: TcxGridDBColumn; + cxGridDBColumn12: TcxGridDBColumn; + cxGridDBColumn14: TcxGridDBColumn; + cxGridDBColumn19: TcxGridDBColumn; + cxGridDBColumn20: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + cxGrid1: TcxGrid; + TV1: TcxGridDBTableView; + cxGridDBColumn13: TcxGridDBColumn; + cxGridDBColumn27: TcxGridDBColumn; + cxGridDBColumn28: TcxGridDBColumn; + cxGridDBColumn29: TcxGridDBColumn; + cxGridDBColumn30: TcxGridDBColumn; + cxGridDBColumn31: TcxGridDBColumn; + cxGridLevel2: TcxGridLevel; + TV2Column1: TcxGridDBColumn; + ToolButton1: TToolButton; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBRafreshClick(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure MPRTCodeNameChange(Sender: TObject); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); + procedure ToolButton2Click(Sender: TObject); + procedure FromCoNamePropertiesChange(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + procedure FromCoNameKeyPress(Sender: TObject; var Key: Char); + procedure ToolButton3Click(Sender: TObject); + procedure TV2DblClick(Sender: TObject); + procedure cxPageControl1Change(Sender: TObject); + procedure N3Click(Sender: TObject); + procedure TV2CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); + procedure ToolButton1Click(Sender: TObject); + private + CurrentPage, RecordsNumber: Integer; + canshu1, FSTKName, canshu3, canshu4: string; +// procedure InitGrid(); + procedure InitGrid(MWSql: string); + procedure InitGrid1(); + procedure InitGrid2(); + { Private declarations } + public + { Public declarations } + end; + +var + frmTradeQDStkList: TfrmTradeQDStkList; + +implementation + +uses + U_DataLink, U_RTFun, U_printPdf, U_LabelPrint; + +{$R *.dfm} + +procedure TfrmTradeQDStkList.FormDestroy(Sender: TObject); +begin + inherited; + frmTradeqdStkList := nil; +end; + +procedure TfrmTradeQDStkList.cxPageControl1Change(Sender: TObject); +begin + + case cxPageControl1.ActivePageIndex of + 1: + begin + + InitGrid1(); + end; + end; + +end; + +procedure TfrmTradeQDStkList.FormClose(Sender: TObject; var Action: TCloseAction); +begin + inherited; + Action := caFree; +end; + +procedure TfrmTradeQDStkList.FormCreate(Sender: TObject); +begin + inherited; + canshu1 := Trim(self.fParameters1); + FSTKName := Trim(self.fParameters2); + canshu3 := Trim(self.fParameters3); + canshu4 := Trim(self.fParameters4); +end; + +//procedure TfrmTradeClothTotalStkList.InitGrid(); +//begin +// case cxPageControl1.ActivePageIndex of +// 0: +// begin +// InitGrid2(); +// end; +// 1: +// begin +// +// InitGrid1(); +// end; +// end; +// +//end; +procedure TfrmTradeQDStkList.InitGrid(MWSql: string); +var + WSql, WDateSql: string; + SqlStr: string; +begin + + case cxPageControl1.ActivePageIndex of + 0: + begin +// WSql := CommonFiltersByContainer(dxLayoutControl_query, ' {"EquTag": 1,"LikeTag": 2,"Fields": "OrderNo|FtyPCId|FtyPCId|C_Color|C_Code|C_Name"}'); + + + SqlStr := ' select *,kcqty=(select sum(stkqty) from bs_cloth_io g where g.c_code=b.c_code and g.c_colorno=b.c_colorno) from Trade_Market_main A INNER JOIN Trade_Market_SUB B ON A.TMMID=B.TMMID '; + + SqlStr := SqlStr + ' where A.ORDTYPE=''Ƿ'' '; + + SqlStr := SqlStr + ' and TMMDate>=''' + FormatDateTime('yyyy-MM-dd', frmFrameDateSel1.begdate.Date) + ''' '; + SqlStr := SqlStr + ' and TMMDate<''' + FormatDateTime('yyyy-MM-dd', frmFrameDateSel1.Enddate.Date + 1) + ''' '; + + +// ShowMessage(SqlStr); + InitCDSData(ADO_2, CDS_2, Tv2, SqlStr, SGetFilters(Panel1, 1, 2), 'C_Code'); + + end; + + 1: + begin + SqlStr := ' select C_NAME,C_COLOR,C_ColorNo,SUM(TMSQTY)TMSQTY,TMSUNIT from Trade_Market_main A INNER JOIN Trade_Market_SUB B ON A.TMMID=B.TMMID '; + + SqlStr := SqlStr + ' where A.ORDTYPE=''Ƿ'' '; + + SqlStr := SqlStr + ' GROUP BY C_NAME,C_COLOR,C_ColorNo, TMSUNIT '; + InitCDSData(ADO_1, CDS_1, Tv1, SqlStr, '', 'C_name'); + + end; + end; + +end; + +procedure TfrmTradeQDStkList.InitGrid2(); +var + SqlStr: string; +begin + + SqlStr := ' select A.C_Code,C_Name,C_Color,C_ColorNo,C_Degree,C_Pattern,QtyUnit,StkPieceint=sum(CEILING(A.StkPiece)),StkQty=sum(StkQty),QtyUnit,StkPosition '; + SqlStr := SqlStr + ' from BS_Cloth_IO A '; + SqlStr := SqlStr + ' where A.IOFlag='''' and (isnull(StkQty,0)>0 or isnull(StkPiece,0)>0) '; + SqlStr := SqlStr + ' and isnull(stkName,'''')=''' + Trim(FstkName) + ''''; + + if Trim(canshu4) <> '' then + SqlStr := SqlStr + ' and isnull(StkCoName,'''')=''' + Trim(canshu4) + ''''; + + SqlStr := SqlStr + ' group by C_Code,C_Name,C_Color,C_ColorNo,C_Degree,C_Pattern,QtyUnit,StkPosition'; + +// ShowMessage(SqlStr); + InitCDSData(ADO_2, CDS_2, Tv2, SqlStr, SGetFilters(Panel1, 1, 2), 'C_Code'); + +end; + +procedure TfrmTradeQDStkList.InitGrid1(); +var + SqlStr, WSqlStr: string; +begin + + SqlStr := ' select A.*,StkPieceint=CEILING(A.StkPiece) '; + SqlStr := SqlStr + ' from BS_Cloth_IO A '; + SqlStr := SqlStr + ' where A.IOFlag='''' and (isnull(StkQty,0)>0 or isnull(StkPiece,0)>0) '; + SqlStr := SqlStr + ' and isnull(stkName,'''')=''' + Trim(FstkName) + ''''; + + if Trim(canshu4) <> '' then + SqlStr := SqlStr + ' and isnull(StkCoName,'''')=''' + Trim(canshu4) + ''''; + WSqlStr := CommonFiltersByTv(Tv2, '{"RemovalNull":true,"Fields":"C_Code|C_Name|C_Color|C_ColorNo|C_Pattern|C_Degree|QtyUnit"}'); + + if TRIM(WSqlStr) <> '' then + SqlStr := SqlStr + ' and ' + WSqlStr; + SqlStr := SqlStr + ' order by IOTime desc'; + + InitCDSData(ADO_1, CDS_1, Tv1, SqlStr, SGetFilters(Panel1, 1, 2), 'BCIOID'); + +end; + +procedure TfrmTradeQDStkList.TBRafreshClick(Sender: TObject); +begin + InitGrid(''); +// InitGrid2(); +end; + +procedure TfrmTradeQDStkList.TBCloseClick(Sender: TObject); +begin + + Close; +end; + +procedure TfrmTradeQDStkList.FormShow(Sender: TObject); +begin + inherited; + CurrentPage := 1; + RecordsNumber := 500; + ReadCxGrid(trim(Self.Caption) + 'Tv1', Tv1, 'óǷ'); + ReadCxGrid(trim(Self.Caption) + 'Tv2', Tv2, 'óǷ'); + frmFrameDateSel1.BegDate.Date := SGetServerDate(ADOQueryTemp) - 180; + frmFrameDateSel1.EndDate.Date := SGetServerDate(ADOQueryTemp); + + canshu4 := Trim(self.fParameters4); + InitGrid(''); +end; + +procedure TfrmTradeQDStkList.FromCoNameKeyPress(Sender: TObject; var Key: Char); +begin + if Key = #13 then + TBFind.Click; +end; + +procedure TfrmTradeQDStkList.FromCoNamePropertiesChange(Sender: TObject); +begin + if Length(Trim(TcxTextEdit(Sender).Text)) < 4 then + Exit; + TBFind.Click; +end; + +procedure TfrmTradeQDStkList.TBFindClick(Sender: TObject); +begin + case cxPageControl1.ActivePageIndex of + 0: + begin + CDSDataFilter(ADO_2, CDS_2, Tv2, '{"FilterStr":"' + CommonFiltersByContainer(Panel1, ' {"EquTag": 1,"LikeTag": 2,"Fields": "C_name|C_Color|C_ColorNo|StkPosition|FromCoName"}') + '" }'); + end; + 1: + begin + CDSDataFilter(ADO_1, CDS_1, Tv1, '{"FilterStr":"' + CommonFiltersByContainer(Panel1, ' {"EquTag": 1,"LikeTag": 2,"Fields": ""}') + '" }'); + end; + end; + +end; + +procedure TfrmTradeQDStkList.MPRTCodeNameChange(Sender: TObject); +begin + TBFind.Click; +end; + +procedure TfrmTradeQDStkList.N1Click(Sender: TObject); +begin + inherited; + SelOKNo(CDS_1, True); +end; + +procedure TfrmTradeQDStkList.N2Click(Sender: TObject); +begin + inherited; + SelOKNo(CDS_1, False); +end; + +procedure TfrmTradeQDStkList.N3Click(Sender: TObject); +begin + Clipboard.SetTextBuf(PChar(Trim(CDS_1.fieldbyname(TV1.Controller.FocusedColumn.DataBinding.FilterFieldName).AsString))); + +end; + +procedure TfrmTradeQDStkList.ToolButton1Click(Sender: TObject); +begin + if CDS_2.IsEmpty then + exit; + +// if canshu1 <> 'Ȩ' then +// begin +// if Trim(Order_Main.fieldbyname('Filler').AsString) <> Trim(DName) then +// begin +// Application.MessageBox('ܲ˵!', 'ʾ', 0); +// Exit; +// end; +// end; + + if cxPageControl1.ActivePageIndex <> 0 then + begin + Application.MessageBox('ֻϸлԭ!', 'ʾ', 0); + Exit; + end; + + try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update Trade_Market_Main SET oRDTYPE='''' '); + sql.Add(' where TMMId=' + quotedstr(trim(CDS_2.fieldbyname('TMMId').AsString))); + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); + sql.Add(' ' + quotedstr(trim(DName))); + sql.Add(',getdate() '); + sql.Add(',' + quotedstr(trim(self.Caption))); + sql.Add(',' + quotedstr(trim('תΪ'))); + sql.Add(',' + quotedstr(trim('ţ' + trim(CDS_2.FieldByName('TMMNO').AsString)))); + sql.Add(',' + quotedstr(trim('ɹ'))); + sql.Add(')'); + execsql; + end; + + application.MessageBox(' תΪɹ', 'ʾϢ'); + + except + application.MessageBox('תΪʧܣ', 'ʾϢ', 0); + end; + TBRafresh.Click; + +end; + +procedure TfrmTradeQDStkList.ToolButton2Click(Sender: TObject); +begin + WriteCxGrid(trim(Self.Caption) + 'Tv1', Tv1, 'óǷ'); + WriteCxGrid(trim(Self.Caption) + 'Tv2', Tv2, 'óǷ'); +end; + +procedure TfrmTradeQDStkList.ToolButton3Click(Sender: TObject); +begin + if CDS_1.Locate('SSel', True, []) = False then + begin + Application.MessageBox('ûѡ!', 'ʾ', 0); + Exit; + end; + try + frmLabelPrint := TfrmLabelPrint.Create(Application); + with frmLabelPrint do + begin + FLMType := 'TradeLabVolume1'; + FFiltration1 := Trim(SelCDSKey(self.CDS_1, ['BCIOID'])[0]); + if ShowModal = 1 then + begin + + end; + end; + finally + frmLabelPrint.Free; + end; +end; + +procedure TfrmTradeQDStkList.Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); +begin + ModalResult := 1; +end; + +procedure TfrmTradeQDStkList.TV2CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +begin + if AViewInfo.GridRecord.Values[cxGridDBColumn12.Index] <= AViewInfo.GridRecord.Values[TV2Column1.Index] then + ACanvas.Brush.Color := $0080FF80; +end; + +procedure TfrmTradeQDStkList.TV2DblClick(Sender: TObject); +begin + cxPageControl1.ActivePageIndex := 1; + +end; + +end. + diff --git a/T05贸易门市管理/U_TradeSampleInPut.dfm b/T05贸易门市管理/U_TradeSampleInPut.dfm new file mode 100644 index 0000000..5ac5754 --- /dev/null +++ b/T05贸易门市管理/U_TradeSampleInPut.dfm @@ -0,0 +1,925 @@ +inherited frmTradeSampleInPut: TfrmTradeSampleInPut + Left = 143 + Top = 4 + Caption = #21098#26679#21333#24405#20837 + ClientHeight = 737 + ClientWidth = 1540 + Font.Charset = GB2312_CHARSET + Font.Height = -16 + Position = poMainFormCenter + WindowState = wsMaximized + OnClose = FormClose + ExplicitLeft = -138 + ExplicitTop = -52 + ExplicitWidth = 1556 + ExplicitHeight = 776 + PixelsPerInch = 96 + TextHeight = 21 + object ToolBar1: TToolBar [0] + Tag = 1 + Left = 0 + Top = 0 + Width = 1540 + Height = 38 + AutoSize = True + ButtonHeight = 38 + ButtonWidth = 105 + Caption = 'ToolBar1' + EdgeInner = esNone + EdgeOuter = esNone + Images = cxImageList_bar + List = True + ShowCaptions = True + TabOrder = 0 + object TBSave: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #20445#23384 + DropdownMenu = PopupMenu1 + ImageIndex = 16 + Style = tbsDropDown + OnClick = TBSaveClick + end + object TBAdd: TToolButton + Left = 94 + Top = 0 + AutoSize = True + Caption = #26032#22686 + ImageIndex = 2 + OnClick = TBAddClick + end + object ToolButton6: TToolButton + Left = 165 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 6 + end + object TBEdit: TToolButton + Left = 236 + Top = 0 + AutoSize = True + Caption = #20462#25913 + ImageIndex = 3 + OnClick = TBEditClick + end + object ToolButton3: TToolButton + Left = 307 + Top = 0 + AutoSize = True + Caption = #20445#23384#26684#24335 + ImageIndex = 16 + OnClick = ToolButton3Click + end + object TBClose: TToolButton + Left = 410 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 7 + OnClick = TBCloseClick + end + end + object ToolBar2: TToolBar [1] + Tag = 1 + Left = 0 + Top = 193 + Width = 1540 + Height = 30 + ButtonHeight = 30 + ButtonWidth = 99 + EdgeInner = esNone + EdgeOuter = esNone + Images = cxImageList_bar + List = True + ShowCaptions = True + TabOrder = 1 + object ToolButton1: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #22686#34892 + ImageIndex = 2 + OnClick = ToolButton1Click + end + object ToolButton2: TToolButton + Left = 71 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 6 + OnClick = ToolButton2Click + end + object ToolButton5: TToolButton + Left = 142 + Top = 0 + Caption = #19968#38190#26367#25442 + ImageIndex = 30 + OnClick = ToolButton5Click + end + end + object Panel2: TPanel [2] + Left = 0 + Top = 223 + Width = 1540 + Height = 514 + Align = alClient + Caption = 'Panel2' + TabOrder = 2 + object Panel3: TPanel + Left = 1 + Top = 1 + Width = 1252 + Height = 512 + Align = alClient + Caption = 'Panel2' + TabOrder = 0 + object cxGrid1: TcxGrid + Left = 1 + Top = 1 + Width = 1250 + Height = 510 + Align = alClient + TabOrder = 0 + object Tv1: TcxGridDBTableView + OnDblClick = Tv1DblClick + OnKeyDown = Tv1KeyDown + OnMouseDown = Tv1MouseDown + Navigator.Buttons.CustomButtons = <> + ScrollbarAnnotations.CustomAnnotations = <> + OnCellDblClick = Tv1CellDblClick + OnFocusedRecordChanged = Tv1FocusedRecordChanged + DataController.DataSource = DS_1 + DataController.Filter.AutoDataSetFilter = True + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Format = '0' + Position = spFooter + end + item + Format = '0' + Position = spFooter + end + item + Format = '0' + Position = spFooter + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsData.Deleting = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + object Tv1Column3: TcxGridDBColumn + Caption = #24207#21495 + DataBinding.FieldName = 'SerialNo' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 77 + end + object v1Column11: TcxGridDBColumn + Tag = 99 + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Options.Sorting = False + Width = 77 + end + object Tv1Column1: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'C_Code' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = Tv1Column1PropertiesButtonClick + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object Tv1Column7: TcxGridDBColumn + Caption = #33394#24067#21517#31216 + DataBinding.FieldName = 'C_Name' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxLookupComboBoxProperties' + Properties.IncrementalFilteringOptions = [ifoUseContainsOperator] + Properties.KeyFieldNames = 'C_Name' + Properties.ListColumns = < + item + Caption = #21697#21517 + HeaderAlignment = taCenter + Width = 64 + FieldName = 'C_Name' + end> + Properties.ListSource = DS_PM + Properties.OnEditValueChanged = Tv1Column7PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 149 + end + object v1PRTColor: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'C_Color' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end + object Tv1Column12: TcxGridDBColumn + Caption = #33394#21495 + DataBinding.FieldName = 'C_ColorNo' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxLookupComboBoxProperties' + Properties.IncrementalFilteringOptions = [ifoUseContainsOperator] + Properties.KeyFieldNames = 'C_ColorNo' + Properties.ListColumns = < + item + Caption = #33394#21495 + HeaderAlignment = taCenter + FieldName = 'C_ColorNo' + end + item + Caption = #39068#33394 + HeaderAlignment = taCenter + FieldName = 'C_Color' + end> + Properties.ListSource = DS_YS + Properties.OnChange = Tv1Column12PropertiesChange + Properties.OnEditValueChanged = Tv1Column12PropertiesEditValueChanged + HeaderAlignmentHorz = taCenter + Width = 168 + end + object Tv1Column15: TcxGridDBColumn + Caption = #25253#21333#25968#37327 + DataBinding.FieldName = 'OrderQty' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 77 + end + object Tv1Column16: TcxGridDBColumn + Caption = #25253#21333#21333#20301 + DataBinding.FieldName = 'OrderUnit' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxLookupComboBoxProperties' + Properties.KeyFieldNames = 'CICUnit' + Properties.ListColumns = < + item + Caption = #21333#20301 + FieldName = 'CICUnit' + end> + Properties.ListSource = DS_DanWei + HeaderAlignmentHorz = taCenter + Width = 77 + end + object Tv1Column19: TcxGridDBColumn + Tag = 2 + Caption = #20986#24211#25968#37327 + DataBinding.FieldName = 'OutQty' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 89 + end + object Tv1Column2: TcxGridDBColumn + Caption = #21098#26679#21592 + DataBinding.FieldName = 'JYPERSON' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 76 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + end + object Panel4: TPanel + Left = 1253 + Top = 1 + Width = 286 + Height = 512 + Align = alRight + Caption = 'Panel4' + TabOrder = 1 + Visible = False + object Panel5: TPanel + Left = 1 + Top = 1 + Width = 284 + Height = 41 + Align = alTop + TabOrder = 0 + object Label33: TLabel + Left = 113 + Top = 10 + Width = 32 + Height = 21 + Caption = #25968#37327 + end + object Label38: TLabel + Left = 20 + Top = 10 + Width = 32 + Height = 21 + Caption = #24207#21495 + end + object QtyMX: TcxTextEdit + Left = 163 + Top = 2 + TabOrder = 0 + OnKeyPress = QtyMXKeyPress + Width = 89 + end + end + object GroupBox2: TGroupBox + Left = 1 + Top = 42 + Width = 284 + Height = 469 + Align = alClient + Caption = #21452#20987#21024#38500#26126#32454#20449#24687 + TabOrder = 1 + object cxGrid2: TcxGrid + Left = 2 + Top = 23 + Width = 280 + Height = 444 + Align = alClient + TabOrder = 0 + object TvMX: TcxGridDBTableView + Navigator.Buttons.CustomButtons = <> + Navigator.Buttons.Delete.Enabled = False + Navigator.Buttons.Delete.Visible = False + ScrollbarAnnotations.CustomAnnotations = <> + OnCellDblClick = TvMXCellDblClick + DataController.DataSource = DS_MX + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = < + item + Kind = skCount + Position = spFooter + end + item + Kind = skSum + Position = spFooter + Column = cxGridDBColumn8 + end + item + Kind = skCount + end + item + Kind = skSum + Column = cxGridDBColumn8 + end> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = cxGridDBColumn8 + end + item + Kind = skCount + Column = cxGridDBColumn8 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + OptionsView.IndicatorWidth = 33 + object cxGridDBColumn8: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'Qty' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxTextEditProperties' + Properties.Alignment.Horz = taCenter + HeaderAlignmentHorz = taCenter + Options.Editing = False + Options.Sorting = False + Width = 66 + end + end + object cxGridLevel2: TcxGridLevel + GridView = TvMX + end + end + end + end + end + object ScrollBox1: TScrollBox [3] + Left = 0 + Top = 38 + Width = 1540 + Height = 155 + Align = alTop + BevelInner = bvNone + BevelOuter = bvNone + BorderStyle = bsNone + Ctl3D = False + ParentCtl3D = False + TabOrder = 3 + OnClick = ScrollBox1Click + object Label3: TLabel + Left = 670 + Top = 65 + Width = 64 + Height = 21 + Caption = #21046#21333#26085#26399 + end + object Label25: TLabel + Left = 1112 + Top = 164 + Width = 64 + Height = 21 + Caption = #20132#36135#26085#26399 + Visible = False + end + object Label1: TLabel + Left = 656 + Top = 130 + Width = 64 + Height = 21 + Caption = #35746#21333#22791#27880 + Visible = False + end + object Label2: TLabel + Left = 670 + Top = 21 + Width = 64 + Height = 21 + Caption = #21333#25454#32534#21495 + end + object Label14: TLabel + Left = 29 + Top = 21 + Width = 72 + Height = 21 + Caption = #23458' '#25143 + end + object Label20: TLabel + Left = 789 + Top = 164 + Width = 64 + Height = 21 + Caption = #32463#33829#21333#20301 + Visible = False + end + object Label37: TLabel + Left = 1077 + Top = 21 + Width = 64 + Height = 21 + Caption = #35746#21333#31867#22411 + Visible = False + end + object Label18: TLabel + Left = 338 + Top = 64 + Width = 64 + Height = 21 + Caption = #21457#36135#22320#22336 + end + object Label4: TLabel + Left = 338 + Top = 21 + Width = 48 + Height = 21 + Caption = #35746#21333#21495 + Visible = False + end + object Label19: TLabel + Left = 33 + Top = 66 + Width = 80 + Height = 21 + Caption = #32852#31995#26041#24335#65306 + end + object lbl2: TLabel + Left = 33 + Top = 110 + Width = 62 + Height = 21 + Caption = #19994' '#21153' '#21592':' + end + object Label5: TLabel + Left = 338 + Top = 116 + Width = 32 + Height = 21 + Caption = #21306#22495 + end + object Label6: TLabel + Left = 1077 + Top = 103 + Width = 64 + Height = 21 + Caption = #32039#24613#31243#24230 + Visible = False + end + object TMMNo: TcxTextEdit + Tag = 2 + Left = 754 + Top = 15 + Enabled = False + TabOrder = 0 + Width = 200 + end + object TMMDate: TDateTimePicker + Tag = 2 + Left = 754 + Top = 61 + Width = 200 + Height = 29 + BevelInner = bvNone + Date = 40916.000000000000000000 + Format = 'yyyy-MM-dd' + Time = 0.670856296288548000 + TabOrder = 1 + end + object DLYDate: TDateTimePicker + Tag = 2 + Left = 1196 + Top = 160 + Width = 200 + Height = 29 + BevelInner = bvNone + Date = 40916.000000000000000000 + Format = 'yyyy-MM-dd' + Time = 0.670856296288548000 + ShowCheckbox = True + TabOrder = 2 + Visible = False + end + object OrdNote: TMemo + Tag = 2 + Left = 754 + Top = 130 + Width = 320 + Height = 90 + Hint = 'OrdNote/'#22791#27880 + ScrollBars = ssVertical + TabOrder = 3 + Visible = False + OnDblClick = PackNoteDblClick + end + object OrdType: TComboBox + Tag = 2 + Left = 1164 + Top = 17 + Width = 200 + Height = 29 + Style = csDropDownList + Ctl3D = False + Enabled = False + ItemIndex = 0 + ParentCtl3D = False + TabOrder = 4 + Text = #27491#24120#21333 + Visible = False + Items.Strings = ( + #27491#24120#21333 + #21098#26679#21333) + end + object OurCoName: TcxButtonEdit + Tag = 2 + Left = 882 + Top = 160 + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = OurCoNamePropertiesButtonClick + Style.ButtonStyle = btsDefault + TabOrder = 5 + Visible = False + OnDblClick = OurCoNameDblClick + Width = 200 + end + object ShippingAddress: TcxButtonEdit + Tag = 2 + Left = 416 + Top = 65 + Hint = 'ShippingAddress/'#21457#36135#22320#22336 + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = ShippingAddressPropertiesButtonClick + Style.ButtonStyle = btsDefault + TabOrder = 6 + OnDblClick = OurCoNameDblClick + Width = 200 + end + object BuyOrdNo: TcxTextEdit + Tag = 2 + Left = 416 + Top = 15 + TabOrder = 7 + Visible = False + Width = 200 + end + object CustName: TcxMRUEdit + Tag = 2 + Left = 122 + Top = 15 + Properties.ImmediatePost = True + Properties.ReadOnly = False + Properties.OnButtonClick = StkPositionPropertiesButtonClick + Properties.OnChange = CustNamePropertiesChange + Properties.OnCloseUp = CustNamePropertiesCloseUp + TabOrder = 8 + OnMouseDown = CustNameMouseDown + Width = 200 + end + object CONTACT: TcxButtonEdit + Tag = 2 + Left = 122 + Top = 61 + Hint = 'CONTACT/'#32852#31995#26041#24335 + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.OnButtonClick = ShippingAddressPropertiesButtonClick + Style.ButtonStyle = btsDefault + TabOrder = 9 + OnDblClick = OurCoNameDblClick + Width = 200 + end + object Saleser: TcxButtonEdit + Tag = 2 + Left = 122 + Top = 110 + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + Properties.OnButtonClick = SaleserPropertiesButtonClick + Style.ButtonStyle = btsDefault + TabOrder = 10 + OnDblClick = SaleserDblClick + Width = 200 + end + object SalesId: TcxTextEdit + Tag = 2 + Left = 1330 + Top = 134 + TabOrder = 11 + Visible = False + Width = 125 + end + object AddressArea: TcxTextEdit + Tag = 2 + Left = 416 + Top = 110 + TabOrder = 12 + Width = 200 + end + object isUrgent: TComboBox + Tag = 2 + Left = 1164 + Top = 99 + Width = 200 + Height = 29 + Style = csDropDownList + Ctl3D = False + Enabled = False + ItemIndex = 0 + ParentCtl3D = False + TabOrder = 13 + Text = #27491#24120 + Visible = False + Items.Strings = ( + #27491#24120 + #32039#24613) + end + end + inherited ADOQueryBaseCmd: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + Left = 860 + Top = 157 + end + inherited ADOQueryBaseTemp: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + Left = 942 + Top = 157 + end + inherited ImageList_new32: TImageList + Left = 1024 + Top = 467 + end + inherited cxImageList_bar: TcxImageList + FormatVersion = 1 + Left = 1024 + Top = 343 + DesignInfo = 22479872 + end + object ADOTemp: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1106 + Top = 157 + end + object ADOCmd: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + Parameters = <> + Left = 778 + Top = 157 + end + object DS_1: TDataSource + DataSet = CDS_1 + Left = 1106 + Top = 343 + end + object CDS_1: TClientDataSet + Aggregates = <> + Params = <> + Left = 1024 + Top = 281 + end + object GPM_1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 860 + Top = 343 + end + object ADOQueryLabel: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + Parameters = <> + Left = 1024 + Top = 157 + end + object ADO_I1: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + Parameters = <> + Left = 985 + Top = 286 + end + object DS_I1: TDataSource + DataSet = ADO_I1 + Left = 860 + Top = 405 + end + object IdFTP1: TIdFTP + ConnectTimeout = 0 + NATKeepAlive.UseKeepAlive = False + NATKeepAlive.IdleTimeMS = 0 + NATKeepAlive.IntervalMS = 0 + ProxySettings.ProxyType = fpcmNone + ProxySettings.Port = 0 + ReadTimeout = 0 + Left = 942 + Top = 467 + end + object ADO_I2: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + Parameters = <> + Left = 1071 + Top = 301 + end + object DS_I2: TDataSource + DataSet = ADO_I2 + Left = 942 + Top = 405 + end + object DS_MX: TDataSource + DataSet = CDS_MX + Left = 1024 + Top = 405 + end + object CDS_MX: TClientDataSet + Aggregates = <> + Params = <> + Left = 778 + Top = 343 + end + object ADO_YS: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 942 + Top = 282 + end + object DS_YS: TDataSource + DataSet = ADO_YS + Left = 860 + Top = 467 + end + object DS_RCPM: TDataSource + DataSet = ADO_RCPM + Left = 778 + Top = 467 + end + object ADO_PM: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 778 + Top = 282 + end + object ADO_RCPM: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 860 + Top = 281 + end + object DS_PM: TDataSource + DataSet = ADO_PM + Left = 1106 + Top = 405 + end + object ADO_1: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 674 + Top = 356 + end + object CDS_KH: TClientDataSet + Aggregates = <> + Params = <> + Left = 1106 + Top = 281 + end + object ADO_KH: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 1185 + Top = 360 + end + object GPM_2: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 942 + Top = 343 + end + object DS_DanWei: TDataSource + DataSet = ADO_DanWei + Left = 778 + Top = 405 + end + object ADO_DanWei: TADOQuery + Connection = DataLink_TradeMarket.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 923 + Top = 295 + end + object PopupMenu1: TPopupMenu + Left = 49 + Top = 266 + object N1: TMenuItem + Caption = #20445#23384#21518#31435#21363#23436#25104#13#10 + OnClick = N1Click + end + object N2: TMenuItem + Caption = #20445#23384#21518#31435#21363#25171#21360 + OnClick = N2Click + end + object N3: TMenuItem + Caption = #20445#23384#21518#31435#21363#26032#22686 + OnClick = N3Click + end + object N4: TMenuItem + Caption = #20445#23384#21518#25171#21360#24182#36864#20986 + OnClick = N4Click + end + end +end diff --git a/T05贸易门市管理/U_TradeSampleInPut.pas b/T05贸易门市管理/U_TradeSampleInPut.pas new file mode 100644 index 0000000..356e3bd --- /dev/null +++ b/T05贸易门市管理/U_TradeSampleInPut.pas @@ -0,0 +1,1979 @@ +unit U_TradeSampleInPut; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage, + cxEdit, DB, cxDBData, cxGridLevel, cxGridCustomTableView, cxGridTableView, + cxGridDBTableView, cxClasses, cxControls, cxGridCustomView, cxGrid, cxMemo, + cxRichEdit, ComCtrls, cxContainer, cxTextEdit, cxMaskEdit, cxButtonEdit, + StdCtrls, ToolWin, DBClient, ADODB, ExtCtrls, BtnEdit, cxCalendar, StrUtils, + cxCurrencyEdit, cxGridCustomPopupMenu, cxGridPopupMenu, cxDropDownEdit, + RM_Common, RM_Preview, RM_System, RM_Class, RM_GridReport, RM_Dataset, Menus, + cxSplitter, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, cxCheckBox, + dxDateRanges, dxBarBuiltInMenu, cxPC, System.ImageList, Vcl.ImgList, + U_BaseInput, cxImage, cxDBEdit, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdExplicitTLSClientServerBase, IdFTP, ShellAPI, + dxScrollbarAnnotations, cxImageList, dxSkinsCore, dxSkinsDefaultPainters, + cxDBLookupComboBox, cxMRUEdit, dxSkinBasic, dxSkinBlack, dxSkinBlue, + dxSkinBlueprint, dxSkinCaramel, dxSkinCoffee, dxSkinDarkroom, dxSkinDarkSide, + dxSkinDevExpressDarkStyle, dxSkinDevExpressStyle, dxSkinFoggy, + dxSkinGlassOceans, dxSkinHighContrast, dxSkiniMaginary, dxSkinLilian, + dxSkinLiquidSky, dxSkinLondonLiquidSky, dxSkinMcSkin, dxSkinMetropolis, + dxSkinMetropolisDark, dxSkinMoneyTwins, dxSkinOffice2007Black, + dxSkinOffice2007Blue, dxSkinOffice2007Green, dxSkinOffice2007Pink, + dxSkinOffice2007Silver, dxSkinOffice2010Black, dxSkinOffice2010Blue, + dxSkinOffice2010Silver, dxSkinOffice2013DarkGray, dxSkinOffice2013LightGray, + dxSkinOffice2013White, dxSkinOffice2016Colorful, dxSkinOffice2016Dark, + dxSkinOffice2019Black, dxSkinOffice2019Colorful, dxSkinOffice2019DarkGray, + dxSkinOffice2019White, dxSkinPumpkin, dxSkinSeven, dxSkinSevenClassic, + dxSkinSharp, dxSkinSharpPlus, dxSkinSilver, dxSkinSpringtime, dxSkinStardust, + dxSkinSummer2008, dxSkinTheAsphaltWorld, dxSkinTheBezier, dxSkinValentine, + dxSkinVisualStudio2013Blue, dxSkinVisualStudio2013Dark, + dxSkinVisualStudio2013Light, dxSkinVS2010, dxSkinWhiteprint, dxSkinWXI, + dxSkinXmas2008Blue, dxCoreGraphics; + +type + TfrmTradeSampleInPut = class(TfrmBaseInput) + ToolBar1: TToolBar; + TBSave: TToolButton; + TBClose: TToolButton; + ADOTemp: TADOQuery; + ADOCmd: TADOQuery; + DS_1: TDataSource; + CDS_1: TClientDataSet; + GPM_1: TcxGridPopupMenu; + ADOQueryLabel: TADOQuery; + ADO_I1: TADOQuery; + DS_I1: TDataSource; + ToolButton3: TToolButton; + IdFTP1: TIdFTP; + ADO_I2: TADOQuery; + DS_I2: TDataSource; + ToolBar2: TToolBar; + ToolButton1: TToolButton; + ToolButton2: TToolButton; + Panel2: TPanel; + Panel3: TPanel; + cxGrid1: TcxGrid; + Tv1: TcxGridDBTableView; + v1Column11: TcxGridDBColumn; + v1PRTColor: TcxGridDBColumn; + cxGrid1Level1: TcxGridLevel; + Tv1Column1: TcxGridDBColumn; + Tv1Column7: TcxGridDBColumn; + Panel4: TPanel; + Panel5: TPanel; + Label33: TLabel; + Label38: TLabel; + QtyMX: TcxTextEdit; + GroupBox2: TGroupBox; + cxGrid2: TcxGrid; + TvMX: TcxGridDBTableView; + cxGridDBColumn8: TcxGridDBColumn; + cxGridLevel2: TcxGridLevel; + DS_MX: TDataSource; + CDS_MX: TClientDataSet; + Tv1Column3: TcxGridDBColumn; + ScrollBox1: TScrollBox; + Label3: TLabel; + Label25: TLabel; + Label1: TLabel; + Label2: TLabel; + Label14: TLabel; + Label20: TLabel; + Label37: TLabel; + Label18: TLabel; + TMMNo: TcxTextEdit; + TMMDate: TDateTimePicker; + DLYDate: TDateTimePicker; + OrdNote: TMemo; + OrdType: TComboBox; + OurCoName: TcxButtonEdit; + ShippingAddress: TcxButtonEdit; + ADO_YS: TADOQuery; + DS_YS: TDataSource; + DS_RCPM: TDataSource; + ADO_PM: TADOQuery; + ADO_RCPM: TADOQuery; + DS_PM: TDataSource; + Tv1Column12: TcxGridDBColumn; + ADO_1: TADOQuery; + Label4: TLabel; + BuyOrdNo: TcxTextEdit; + CustName: TcxMRUEdit; + CDS_KH: TClientDataSet; + ADO_KH: TADOQuery; + Tv1Column15: TcxGridDBColumn; + Tv1Column16: TcxGridDBColumn; + GPM_2: TcxGridPopupMenu; + DS_DanWei: TDataSource; + ADO_DanWei: TADOQuery; + PopupMenu1: TPopupMenu; + N1: TMenuItem; + N2: TMenuItem; + N3: TMenuItem; + N4: TMenuItem; + Label19: TLabel; + CONTACT: TcxButtonEdit; + Tv1Column19: TcxGridDBColumn; + ToolButton5: TToolButton; + TBAdd: TToolButton; + ToolButton6: TToolButton; + TBEdit: TToolButton; + lbl2: TLabel; + Saleser: TcxButtonEdit; + SalesId: TcxTextEdit; + Label5: TLabel; + AddressArea: TcxTextEdit; + Label6: TLabel; + isUrgent: TComboBox; + Tv1Column2: TcxGridDBColumn; + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBSaveClick(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); + procedure v1OrderUnitPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v1PriceUnitPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure ScrollBox1Click(Sender: TObject); + procedure v1Column5PropertiesEditValueChanged(Sender: TObject); + procedure HYTTBtnUpClick(Sender: TObject); + procedure KYTTBtnUpClick(Sender: TObject); + procedure edtGYBtnUpClick(Sender: TObject); + procedure v1OrderUnitPropertiesEditValueChanged(Sender: TObject); + procedure Tv1Column4PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure cxDBImage1DblClick(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure TechnicsBtnUpClick(Sender: TObject); + procedure TechnicsBtnDnClick(Sender: TObject); + procedure PackNoteDblClick(Sender: TObject); + procedure Tv1Column1PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure ToolButton4Click(Sender: TObject); + procedure QtyMXKeyPress(Sender: TObject; var Key: Char); + procedure Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); + procedure TvMXCellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); + procedure OurCoNameDblClick(Sender: TObject); + procedure OurCoNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure ShippingAddressPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure Tv1Column7PropertiesEditValueChanged(Sender: TObject); + procedure Tv1Column12PropertiesEditValueChanged(Sender: TObject); + procedure Tv1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); + procedure FormCreate(Sender: TObject); + procedure StkPositionPropertiesButtonClick(Sender: TObject); + procedure CustNamePropertiesChange(Sender: TObject); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + procedure N3Click(Sender: TObject); + procedure N4Click(Sender: TObject); + procedure N5Click(Sender: TObject); + procedure CustNameMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); + procedure CustNamePropertiesCloseUp(Sender: TObject); + procedure Tv1DblClick(Sender: TObject); + procedure ToolButton5Click(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); + procedure TBAddClick(Sender: TObject); + procedure TBEditClick(Sender: TObject); + procedure SaleserPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure SaleserDblClick(Sender: TObject); + procedure Tv1Column12PropertiesChange(Sender: TObject); + procedure Tv1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); + private + FSCXDH: string; + procedure InitData(); + procedure ZDYHelp(FButn: TcxButtonEdit; LType: string); + function SaveData(): Boolean; + function getTMMNo(fconNo: string): string; + procedure InitImage1(); + procedure InitImage2(); + procedure LookImage(FileName: string); + procedure InitMXGrid(MTMSId: string); + procedure AddLine(); + { Private declarations } + public + PState, CopyInt, PriceFlag: Integer; + FTMMID, FTMMNo, MTMSId: string; + FXS: Integer; + btnFlag: Integer; + canshu1, canshu4: string; + fFlileFlag: string; + fordtype: string; + FName, FColor, FColorNo: string; + FTIMID: string; + FIncludeTax: Double; + { Public declarations } + end; + +var + frmTradeSampleInPut: TfrmTradeSampleInPut; + newh: hwnd; + +implementation + +uses + U_DataLink, U_ZDYHelp, U_ZDYHelpSel, U_RTFun, U_CompanySel, U_PictureUpload, + U_ProgressUpdate, U_ClothInfoSel, U_ComContactSel, U_TradeMarketList, + U_LabelPrint, U_TradeMarketQtyInPut, U_UserSel; + + +{$R *.dfm} + +procedure TfrmTradeSampleInPut.AddLine(); +var + i: Integer; + maxno: string; +begin + + i := cds_1.RecordCount; + i := i + 1; + + if GetLSNo(ADOTemp, maxno, 'JS', 'Trade_Market_Sub', 4, 1) = False then + begin + Application.MessageBox('取子流水号失败!', '提示', 0); + Exit; + end; + with cds_1 do + begin + Append; + FieldByName('SerialNo').Value := IntToStr(i); + FieldByName('TMSId').Value := Trim(maxno); + FieldByName('TMSPiece').Value := 0; + FieldByName('TMSQty').Value := 0; + FieldByName('OrderQty').Value := 0.5; + FieldByName('OrderUnit').Value := 'M'; + Post; + end; +end; + +procedure TfrmTradeSampleInPut.InitImage1(); +begin + +end; + +procedure TfrmTradeSampleInPut.InitImage2(); +begin + +end; + +function TfrmTradeSampleInPut.getTMMNo(fconNo: string): string; +var + str1: string; + i: integer; +begin + str1 := trim(fconNo) + '01'; + with ADOTemp do + begin + close; + sql.Clear; + sql.Add('select TMMID from Trade_Plan_Main where TMMNo=' + quotedstr(trim(str1))); + open; + end; + if not ADOTemp.IsEmpty then + begin + for i := 1 to 99 do + begin + str1 := trim(fconNo) + rightstr(inttostr(100 + i), 2); + with ADOCmd do + begin + close; + sql.Clear; + sql.Add('select TMMID from Trade_Plan_Main where TMMNo=' + quotedstr(trim(str1))); + open; + end; + if ADOCmd.IsEmpty then + break; + end; + end; + result := str1; +end; + +procedure TfrmTradeSampleInPut.TBAddClick(Sender: TObject); +begin + { CDS_1.Close; + InitData(); + SClearData(ScrollBox1, 2); //清空容器中控件的内容 + CustName.Text := ''; + if CDS_1.IsEmpty then + begin + AddLine(); + end; } + PState := 0; + FTMMId := ''; + FormShow(Self); + BuyOrdNo.Text := ''; + CONTACT.Text := ''; + Saleser.Text := ''; + ShippingAddress.Text := ''; + OrdNote.Text := ''; + AddressArea.Text := ''; + +end; + +procedure TfrmTradeSampleInPut.TBCloseClick(Sender: TObject); +begin + + Close; + +end; + +procedure TfrmTradeSampleInPut.TBEditClick(Sender: TObject); +begin +// if TBSave.Visible = False then +// begin + PState := 1; + FTMMId := self.FTMMId; + + TBSave.Enabled := true; + ScrollBox1.Enabled := True; + ToolBar2.Enabled := true; + ToolButton2.Enabled := True; + ToolButton1.Enabled := True; + N2.Visible := true; +// FormShow(Self); +// end; + +end; + +procedure TfrmTradeSampleInPut.InitData(); +var + FDate: TDateTime; +begin + FDate := SGetServerDateTime(ADOTemp); + TMMDate.DateTime := FDate; + DlyDate.DateTime := FDate; + + with ADOTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Trade_Market_Main where TMMID=''' + Trim(FTMMID) + ''''); + Open; + end; + SCSHData(ADOTemp, ScrollBox1, 2); + SCSHData(ADOTemp, ScrollBox1, 5); + SCSHData(ADOTemp, ScrollBox1, 9); + SCSHData(ADOTemp, ScrollBox1, 7); + OurCoName.Properties.LookupItems.Text := Trim(ADOTemp.FieldByName('OurCoNo').AsString); + CustName.Properties.OnChange := nil; + CustName.Hint := Trim(ADOTemp.FieldByName('CustNo').AsString); + CustName.Text := Trim(ADOTemp.FieldByName('CustName').AsString); + CustName.Properties.OnChange := CustNamePropertiesChange; + with ADO_1 do + begin + Close; + SQL.Clear; + sql.Add('select A.*,StkQty =(select sum(isnull(X.StkQty,0)) from Bs_Cloth_IO X where X.C_Code=A.C_Code and X.C_Color=A.C_Color) '); + sql.Add('from Trade_Market_Sub A '); + SQL.adD('where 1=1 '); + if PState = 1 then + begin + sql.Add(' and A.TMMID=''' + Trim(FTMMID) + ''''); + end; + if PState = 0 then + begin + sql.Add(' and 1<>1'); + end; +// ShowMessage(SQL.TEXT); + Open; + + end; + SCreateCDS(ADO_1, CDS_1); + SInitCDSData(ADO_1, CDS_1); + + if PState = 0 then + begin + TMMDate.DateTime := SGetServerDateTime(ADOTemp); + DlyDate.DateTime := TMMDate.DateTime; + TMMNo.Text := ''; + TMMNo.Enabled := True; + end + else + begin + end; + if CopyInt = 99 then + begin + PState := 0; + FTMMID := ''; + TMMNo.Text := ''; + TMMNo.Enabled := True; + + TMMDate.DateTime := FDate; + + with CDS_1 do + begin + First; + while not Eof do + begin + Edit; + FieldByName('TMMID').Value := ''; + FieldByName('TMSId').Value := ''; + FieldByName('TMSPiece').Value := 0; + FieldByName('TMSQty').Value := 0; + FieldByName('OrderQty').Value := 0; + FieldByName('OrderUnit').Value := NULL; + + +// FieldByName('GangFee').Value := 0; +// FieldByName('Transfee').Value := 0; +// FieldByName('Otherfee').Value := 0; + Post; + Next; + end; + end; + + end; +end; + +procedure TfrmTradeSampleInPut.ZDYHelp(FButn: TcxButtonEdit; LType: string); +var + FType, ZDYName, FText: string; +begin +end; + +procedure TfrmTradeSampleInPut.FormClose(Sender: TObject; var Action: TCloseAction); +begin + inherited; + Action := CAFREE; +end; + +procedure TfrmTradeSampleInPut.FormCreate(Sender: TObject); +begin + inherited; + OurCoName.Properties.LookupItems.Text := 'W0001'; + OurCoName.Text := '格美'; +end; + +procedure TfrmTradeSampleInPut.FormShow(Sender: TObject); +var + i: Integer; +begin + inherited; + + with ADO_KH do + begin + close; + sql.Clear; + sql.Add(' select CoCode,CoName from BS_Company where CoType=''客户'' '); + + if Trim(canshu4) = '新余' then + sql.Add(' and Stores=''新余'' '); + + Open; + +// CustName.Properties.LookupItems.Clear; +// while not Eof do +// begin +// CustName.Properties.LookupItems.Add(Trim(ADO_KH.fieldByName('CoName').AsString)); +// Next; +// end; +// CustName.ItemIndex := -1; + + SCreateCDS(ADO_KH, CDS_KH); + SInitCDSData(ADO_KH, CDS_KH); + end; + + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add(' exec P_BS_CloInfo_Hot '); + ExecSQL; + end; + readCxGrid(TRIM(SELF.Caption), Tv1, '生产指示单管理'); + TMMNo.Text := ''; + fFlileFlag := UserDataFlag + 'HX'; + InitData(); + + if CDS_1.IsEmpty then + begin + AddLine(); +// AddLine(); +// AddLine(); +// AddLine(); +// AddLine(); + end; + + with ADO_PM do + begin + Close; + sql.Clear; + sql.Add(' SELECT distinct A.C_Code,A.C_Name,A.qtyunit,A.HotQty,StkQty = 0 '); + SQL.ADD(' FROM Bs_Cloth_Info A '); + sql.add(' where 1=1 '); + if Trim(canshu4) = '新余' then + sql.Add(' and isnull(STKNAME,'''')=''新余'' '); + SQL.add('group by A.C_Code,A.C_Name,A.qtyunit,A.HotQty'); + SQL.ADD('order by A.C_Code '); +// showmessage(SQL.text); + Open; + end; + with ADO_YS do + begin + Close; + sql.Clear; + sql.Add(' SELECT distinct A.C_Code,B.C_Color,B.C_ColorNo,B.referencePrice AS Price FROM Bs_Cloth_Info A inner join BS_Cloth_Info_Sub B on A.BCIID=B.BCIID '); + sql.Add(' where 1=2 '); + Open; + end; + + with ADO_RCPM do + begin + Close; + sql.Clear; + sql.Add(' SELECT distinct C_GYSNAME FROM BS_Cloth_Info_GYSCP '); + Open; + end; + with ADO_DanWei do + begin + Close; + sql.Clear; + sql.Add(' SELECT distinct A.C_Code,B.CICUnit FROM Bs_Cloth_Info A inner join Bs_Cloth_Info_Coefficient B on A.BCIID=B.BCIID '); + sql.Add(' where 2=1 '); + Open; + end; +// frmTradeMarketlist := TfrmTradeMarketlist.Create(Application); +end; + +procedure TfrmTradeSampleInPut.SaleserDblClick(Sender: TObject); +begin + + self.Salesid.Text := ''; + self.Saleser.Text := ''; +end; + +procedure TfrmTradeSampleInPut.SaleserPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + try + frmUserSel := TfrmUserSel.Create(Application); + with frmUserSel do + begin + Fdept := '业务部'; + if ShowModal = 1 then + begin + + self.Saleser.Text := Trim(CDS_1.fieldbyname('EECode').AsString); + self.Saleser.Text := Trim(CDS_1.fieldbyname('EEName').AsString); + + end; + end; + finally + frmUserSel.Free; + end; +end; + +function TfrmTradeSampleInPut.SaveData(): Boolean; +var + maxno, Smaxno, maxTMMNo, MaxFNo, MQZ, MTMMNo: string; +begin + try + ADOCmd.Connection.BeginTrans; + +///////////////////// 保存主表 /////////////////////////// + + if Trim(FTMMID) = '' then + begin + if GetLSNo(ADOCmd, maxno, 'JM', 'Trade_Market_Main', 3, 1) = False then + raise Exception.Create('取最大号失败!'); + +// 大货单编号G50313001<-- G50313 001 +//(“G”+ 25年的“5”(每过五年辉清一下以前的数据 所以0-9循环)+0313(月日)+“001”(单号,不会超过999单)) + +// MQZ := 'G' + RightStr(Trim(FormatDateTime('yyMMdd', SGetServerDate(ADOTemp))), 6); +// if GetLSNo(ADOCmd, MTMMNo, MQZ, 'Trade_Market_Main', 3, 0) = False then +// raise Exception.Create('取最大号失败!'); +// TMMNo.Text := MTMMNo; + if not GetLSNo(ADOCmd, MTMMNo, 'GJY', 'Trade_Market_Main', 3, 1) then + raise Exception.Create('取最大号失败!'); + TMMNo.Text := MTMMNo; + end + else + begin + maxno := Trim(FTMMID); + end; + + with ADOCmd do + begin + Close; + sql.Clear; + SQL.Add('select * from Trade_Market_Main where TMMID=''' + Trim(FTMMID) + ''''); + Open; + end; + with ADOCmd do + begin + if Trim(FTMMID) = '' then + begin + Append; + FieldByName('FillId').Value := Trim(DCode); + FieldByName('Filler').Value := Trim(DName); + FieldByName('status').Value := Trim('1'); + if btnFlag = 1 then //保存后立即完成 + FieldByName('status').Value := Trim('10'); +// if btnFlag = 5 then //保存后立即提交 +// FieldByName('status').Value := Trim('1'); + end + else + begin + Edit; + FieldByName('EditId').Value := Trim(DCode); + FieldByName('Editer').Value := Trim(DName); + FieldByName('EditTime').Value := SGetServerDateTime(ADOTemp); + + end; + RTSetsavedata(ADOCmd, 'Trade_Market_Main', ScrollBox1, 2); + FieldByName('TMMID').Value := Trim(maxno); + FieldByName('ordtype').Value := Trim('门店剪样'); + FieldByName('OurCoNo').Value := Trim(OurCoName.Properties.LookupItems.Text); + FieldByName('CustNo').Value := Trim(CustName.Hint); + FieldByName('CustName').Value := Trim(CustName.Text); + FieldByName('Store').Value := Trim(canshu4); + Post; + end; + +///////////////////// 保存主表 /////////////////////////// +///////////////////// 保存子表 /////////////////////////// + with CDS_1 do + begin + First; + while not Eof do + begin + if Trim(CDS_1.fieldbyname('TMSId').AsString) = '' then + begin + if GetLSNo(ADOCmd, Smaxno, 'JS', 'Trade_Market_Sub', 4, 1) = False then + raise Exception.Create('取子流水号失败!'); + end + else + begin + Smaxno := Trim(CDS_1.fieldbyname('TMSId').AsString); + end; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from Trade_Market_Sub where TMMID=''' + Trim(maxno) + ''''); + sql.Add(' and TMSId=''' + Trim(Smaxno) + ''''); + Open; + end; + with ADOCmd do + begin + if Trim(CDS_1.fieldbyname('TMSId').AsString) = '' then + Append + else + Edit; + RTSetSaveDataCDS(ADOCmd, Tv1, CDS_1, 'Trade_Market_Sub', 0); + //RTSetSaveDataCDS(ADOCmd, Tv1, CDS_1, 'Trade_Market_Sub_Qty', 2); + //RTSetsavedata(ADOCmd, 'Trade_Market_Sub', ScrollBox1, 7); + FieldByName('TMMID').Value := Trim(maxno); + FieldByName('TMSId').Value := Trim(Smaxno); + Post; + end; + Next; + end; + end; +///////////////////// 保存子表 /////////////////////////// + + + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('select * from Trade_Market_Main where TMMNo=''' + Trim(TMMNo.Text) + ''''); + Open; + end; + if ADOCmd.RecordCount > 1 then + raise Exception.Create('订单号重复!'); + + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('select C_Code,C_Color,C_ColorNo,CF=count(TMSID) from Trade_Market_sub where TMMID=''' + Trim(maxno) + ''''); + sql.Add('group by C_Code,C_Color,C_ColorNo HAVING count(TMSID)>1 '); + Open; + end; + if not ADOCmd.IsEmpty then + raise Exception.Create('颜色重复!'); + + FTMMID := Trim(maxno); + ADOCmd.Connection.CommitTrans; + +// TradeMarketProgressUpdateByTMMID(ADOCmd, FTMMID); + + with ADO_1 do + begin + Close; + SQL.Clear; + sql.Add(' select * from Trade_Market_Sub where TMMID=''' + Trim(FTMMID) + ''''); + Open; + end; + SCreateCDS(ADO_1, CDS_1); + SInitCDSData(ADO_1, CDS_1); + Result := True; //保存后立即打印 + if (btnFlag = 2) or (btnFlag = 4) then + begin + try + frmLabelPrint := TfrmLabelPrint.Create(Application); + with frmLabelPrint do + begin + if canshu4 = '新余' then + FLMType := 'TradePlanPrintxy' + else + FLMType := 'TradePlanPrint'; + FFiltration1 := Trim(maxno); + if ShowModal = 1 then + begin + // Self.InitGrid(); + end; + end; + finally + frmLabelPrint.Free; + end; + end; + if btnFlag = 3 then //保存后立即新增 + begin + PState := 0; + FTMMId := ''; + FormShow(Self); +// CDS_1.Close; +// InitData(); +// SClearData(ScrollBox1, 2); //清空容器中控件的内容 +// CustName.Text := ''; +// if CDS_1.IsEmpty then +// begin +// AddLine(); +// end; + end; + except + Result := False; + ADOCmd.Connection.RollbackTrans; + application.MessageBox(PChar(Exception(ExceptObject).Message), '提示信息', 0); + end; +end; + +procedure TfrmTradeSampleInPut.TBSaveClick(Sender: TObject); +var + MAXNO1: string; +begin + + ToolBar1.SetFocus; + with cds_1 do + begin + while cds_1.Locate('C_Code', null, []) do + begin + cds_1.Delete + end; + end; + + if trim(CustName.Text) = '' then + begin + Application.MessageBox('客户不能为空!', '提示', 0); + Exit; + end; + + if CDS_1.IsEmpty then + begin + Application.MessageBox('明细不能为空!', '提示', 0); + Exit; + end; + + if CDS_1.Locate('C_Color', null, []) then + begin + Application.MessageBox('颜色不能为空!', '提示', 0); + Exit; + end; + if CDS_1.Locate('OrderQty', null, []) then + begin + Application.MessageBox('报单数量不能为空!', '提示', 0); + Exit; + end; + if CDS_1.Locate('OrderUnit', null, []) then + begin + Application.MessageBox('报单单位不能为空!', '提示', 0); + Exit; + end; + +// if not CDS_KH.Locate('CoName', self.CustName.Text, []) then +// begin +// Application.MessageBox('客户不存在!', '提示', 0); +// Exit; +// end +// else +// begin +// self.CustName.Properties.LookupItems.Text := Trim(CDS_KH.fieldbyname('CoCode').AsString); +// end; + + if SaveData() then + begin + + Application.MessageBox('保存成功!', '提示', 0); +// if btnFlag = 4 then //保存后打印并退出 + ModalResult := 1; + end; +end; + +procedure TfrmTradeSampleInPut.ToolButton1Click(Sender: TObject); +begin + + AddLine(); +end; + +procedure TfrmTradeSampleInPut.ToolButton2Click(Sender: TObject); +begin + if CDS_1.IsEmpty then + Exit; + if CDS_1.Locate('SSel', True, []) = False then + begin + Application.MessageBox('没有选择数据!', '提示', 0); + Exit; + end; + if Application.MessageBox('确定要删除选择的数据吗?', '提示', 32 + 4) <> IDYES then + exit; + CDS_1.DisableControls; + with CDS_1 do + begin + First; + while Locate('SSel', True, []) do + begin + if Trim(CDS_1.fieldbyname('TMSId').AsString) <> '' then + begin + with ADOCmd do + begin + Close; + sql.Clear; + sql.Add('delete Trade_Market_Sub where TMSId=''' + Trim(CDS_1.fieldbyname('TMSId').AsString) + ''''); + sql.Add('delete Trade_Market_Sub_Qty where TMSId=''' + Trim(CDS_1.fieldbyname('TMSId').AsString) + ''''); + ExecSQL; + end; + end; + Delete; + end; + end; + CDS_1.EnableControls; + +end; + +procedure TfrmTradeSampleInPut.ToolButton3Click(Sender: TObject); +begin + WriteCxGrid(TRIM(SELF.Caption), Tv1, '生产指示单管理'); + +end; + +procedure TfrmTradeSampleInPut.ToolButton4Click(Sender: TObject); +var + i: Integer; + maxno: string; +begin + inherited; + try + frmClothInfoSel := TfrmClothInfoSel.Create(Application); + with frmClothInfoSel do + begin + + if ShowModal = 1 then + begin + + + +// while CDS_1.locate('SSel', true, []) do + begin + + if self.CDS_1.locate('C_Code', trim(CDS_1.Fieldbyname('C_Code').AsString), []) then + begin + CDS_1.Edit; + CDS_1.fieldbyname('SSel').value := false; +// continue; + end; + + i := cds_1.RecordCount; + + with CDS_3 do + begin + + DisableControls; + First; + + while not eof do + begin + + if FieldByName('SSEL').AsBoolean then + begin + i := i + 1; + if GetLSNo(ADOTemp, maxno, 'JS', 'Trade_Market_Sub', 4, 1) = False then + begin + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('取子流水号失败!', '提示', 0); + Exit; + end; + with self.CDS_1 do + begin + append; + FieldByName('SSel').Value := false; + FieldByName('SerialNo').Value := IntToStr(i); + FieldByName('TMSId').Value := Trim(maxno); + FieldByName('TMSUnit').Value := trim(frmClothInfoSel.CDS_1.Fieldbyname('qtyunit').AsString); + Fieldbyname('C_Code').AsString := trim(frmClothInfoSel.CDS_1.Fieldbyname('C_Code').AsString); + Fieldbyname('C_Name').AsString := trim(frmClothInfoSel.CDS_1.Fieldbyname('C_Name').AsString); + Fieldbyname('C_Spec').AsString := trim(frmClothInfoSel.CDS_1.Fieldbyname('C_Spec').AsString); + Fieldbyname('C_Composition').AsString := trim(frmClothInfoSel.CDS_1.Fieldbyname('C_Composition').AsString); + Fieldbyname('C_Width').AsString := trim(frmClothInfoSel.CDS_1.Fieldbyname('C_Width').AsString); + Fieldbyname('C_GramWeight').AsString := trim(frmClothInfoSel.CDS_1.Fieldbyname('C_GramWeight').AsString); + +// Fieldbyname('C_ColorNo').value := trim(frmClothInfoSel.CDS_1.Fieldbyname('C_ColorNo').AsString); +// Fieldbyname('C_Color').value := trim(frmClothInfoSel.CDS_1.Fieldbyname('C_Color').AsString); +// Fieldbyname('C_Pattern').value := trim(frmClothInfoSel.CDS_1.Fieldbyname('C_Pattern').AsString); + + Fieldbyname('C_ColorNo').value := trim(frmClothInfoSel.CDS_3.Fieldbyname('C_ColorNo').AsString); + Fieldbyname('C_Color').value := trim(frmClothInfoSel.CDS_3.Fieldbyname('C_Color').AsString); + Fieldbyname('C_Pattern').value := trim(frmClothInfoSel.CDS_3.Fieldbyname('C_Pattern').AsString); +// Fieldbyname('C_StyleNo').value := trim(frmClothInfoSel.CDS_3.Fieldbyname('C_StyleNo').AsString); +// Fieldbyname('SerialNo').value := 999; + end; + end; + Next; + end; + EnableControls; + end; + +// with self.CDS_1 do +// begin +// append; +// FieldByName('SSel').Value := false; +// FieldByName('SerialNo').Value := IntToStr(i); +// FieldByName('TMSId').Value := Trim(maxno); +// FieldByName('TMSUnit').Value := 'M'; +// Fieldbyname('C_Code').AsString := trim(frmClothInfoSel.CDS_1.Fieldbyname('C_Code').AsString); +// Fieldbyname('C_Name').AsString := trim(frmClothInfoSel.CDS_1.Fieldbyname('C_Name').AsString); +// Fieldbyname('C_Spec').AsString := trim(frmClothInfoSel.CDS_1.Fieldbyname('C_Spec').AsString); +// Fieldbyname('C_Composition').AsString := trim(frmClothInfoSel.CDS_1.Fieldbyname('C_Composition').AsString); +// Fieldbyname('C_Width').AsString := trim(frmClothInfoSel.CDS_1.Fieldbyname('C_Width').AsString); +// Fieldbyname('C_GramWeight').AsString := trim(frmClothInfoSel.CDS_1.Fieldbyname('C_GramWeight').AsString); +// +// Fieldbyname('C_ColorNo').value := trim(frmClothInfoSel.CDS_1.Fieldbyname('C_ColorNo').AsString); +// Fieldbyname('C_Color').value := trim(frmClothInfoSel.CDS_1.Fieldbyname('C_Color').AsString); +// Fieldbyname('C_Pattern').value := trim(frmClothInfoSel.CDS_1.Fieldbyname('C_Pattern').AsString); +// +// end; +// CDS_1.Edit; +// CDS_1.fieldbyname('SSel').value := false; + end; + end; + end; + finally + frmClothInfoSel.Free; + end; + +end; + +procedure TfrmTradeSampleInPut.ToolButton5Click(Sender: TObject); +begin + if CDS_1.IsEmpty then + Exit; + OneKeyPost(Tv1, CDS_1); +end; + +procedure TfrmTradeSampleInPut.edtGYBtnUpClick(Sender: TObject); +var + fsj: string; + FWZ: Integer; + i: integer; +begin +// fsj := Trim(TBtnEditC(Sender).Hint); +// FWZ := Pos('/', fsj); +// i := 0; +// try +// frmZDYHelpSel := TfrmZDYHelpSel.Create(Application); +// with frmZDYHelpSel do +// begin +// flag := Copy(fsj, 1, FWZ - 1); +// flagname := Copy(fsj, FWZ + 1, Length(fsj) - FWZ); +// if ShowModal = 1 then +// begin +// TBtnEditC(Sender).text := ''; +// with ClientDataSet1 do +// begin +// First; +// while not Eof do +// begin +// if FieldByName('SSel').AsBoolean = True then +// begin +// i := i + 1; +// if TBtnEditC(Sender).text = '' then +// TBtnEditC(Sender).text := FieldByName('ZDYName').AsString +// else +// TBtnEditC(Sender).text := TBtnEditC(Sender).text + ',' + FieldByName('ZDYName').AsString; //inttostr(i)+'.'+ +// end; +// Next; +// end; +// end; +// end; +// end; +// finally +// frmZDYHelpSel.Free; +// end; +end; + +procedure TfrmTradeSampleInPut.TechnicsBtnDnClick(Sender: TObject); +begin + TcxButtonEdit(Sender).Text := ''; + TcxButtonEdit(Sender).Properties.LookupItems.Text := ''; +end; + +procedure TfrmTradeSampleInPut.TechnicsBtnUpClick(Sender: TObject); +var + fsj: string; + FWZ: Integer; +begin + fsj := Trim(TcxTextEdit(Sender).Hint); + FWZ := Pos('/', fsj); + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := Copy(fsj, 1, FWZ - 1); + flagname := Copy(fsj, FWZ + 1, Length(fsj) - FWZ); + if ShowModal = 1 then + begin + TcxTextEdit(Sender).Text := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; + +end; + +procedure TfrmTradeSampleInPut.CustNameMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + if not ADO_YS.IsEmpty then + begin + if ADO_YS.FieldByName('C_Code').AsString <> CDS_1.FieldByName('C_Code').AsString then + begin + with ADO_YS do + begin + Close; + sql.Clear; + sql.Add(' SELECT DISTINCT A.C_Code,B.C_Color,B.C_ColorNo,B.referencePrice AS Price FROM Bs_Cloth_Info A inner join BS_Cloth_Info_Sub B on A.BCIID=B.BCIID '); + sql.Add(' where A.C_Code= ' + QuotedStr(CDS_1.FieldByName('C_Code').AsString)); + SQL.ADD(' order by B.C_ColorNo'); + //ShowMessage(sql.text); + Open; + end; + end; + end + else + begin + with ADO_YS do + begin + Close; + sql.Clear; + sql.Add(' SELECT DISTINCT A.C_Code,B.C_Color,B.C_ColorNo,B.referencePrice AS Price FROM Bs_Cloth_Info A inner join BS_Cloth_Info_Sub B on A.BCIID=B.BCIID '); + sql.Add(' where A.C_Code= ' + QuotedStr(CDS_1.FieldByName('C_Code').AsString)); + SQL.ADD(' order by B.C_ColorNo'); + Open; + end; + end; +end; + +procedure TfrmTradeSampleInPut.CustNamePropertiesChange(Sender: TObject); +begin + inherited; +// if CDS_KH.Locate('CoAbbrName', Trim(self.CustName.Text), []) then +// begin +// self.CustName.Hint := Trim(CDS_KH.fieldbyname('CoCode').AsString); +// end; + if CustName.Text <> '' then + begin + with ADO_KH do + begin + close; + sql.Clear; + sql.Add(' select CoCode,CoName from BS_Company where CoType=''客户'' '); + + if Trim(canshu4) = '新余' then + sql.Add(' and Stores=''新余'' '); + + sql.Add(' and CoName like ''%' + Trim(CustName.Text) + '%'''); + Open; + + CustName.Properties.LookupItems.Clear; + while not Eof do + begin + CustName.Properties.LookupItems.Add(Trim(ADO_KH.fieldByName('CoName').AsString)); + Next; + end; +// CustName.ItemIndex := -1; + + SCreateCDS(ADO_KH, CDS_KH); + SInitCDSData(ADO_KH, CDS_KH); + end; + end; + +end; + +procedure TfrmTradeSampleInPut.CustNamePropertiesCloseUp(Sender: TObject); +begin + inherited; + with ADOtemp do + begin + Close; + sql.Clear; + sql.Add('select A.*,B.* '); + sql.Add(',BankName=(select top 1 BankName from Bs_Company_Bank X where X.CoID=A.CoID ) '); + sql.Add(',ContactsId=(select top 1 UserID from SY_User X where X.UserName=B.Contacts ) '); + sql.Add('from BS_Company A '); + sql.Add('left join BS_Company_contact B ON A.COID=B.COID and B.IsDefault=1 '); + sql.Add('where 1=1 '); + sql.Add(' and A.CoType=''' + Trim('客户') + ''''); +// if Trim(FAuthority) = '理单业务' then +// begin +// sql.Add(' and ( SalesId=' + quotedstr(trim(DCode)) + ' or exists (select * from [dbo].[F_Tool_SplitString](TallyId,'','') X where X.RTValue =' + quotedstr(trim(DCode)) + '))'); +// end; + if canshu4 = '新余' then + sql.Add(' and A.Stores=''' + Trim('新余') + ''''); + sql.Add(' and A.CoName=''' + Trim(CustName.Text) + ''''); + Open; + end; + self.ShippingAddress.Text := Trim(adotemp.fieldbyname('mxaddress').AsString); + self.CONTACT.Text := Trim(adotemp.fieldbyname('Telephone').AsString); + self.AddressArea.Text := Trim(adotemp.fieldbyname('MXAREA').AsString); + Saleser.Text := Trim(adotemp.fieldbyname('Saleser').AsString); + CustName.HINT := Trim(adotemp.fieldbyname('cocode').AsString); +end; + +procedure TfrmTradeSampleInPut.cxDBImage1DblClick(Sender: TObject); +begin + if TcxDBImage(Sender).Picture.Height = 0 then + exit; + LookImage(ADO_I1.fieldbyname(TcxDBImage(Sender).Hint).asstring); +end; + +procedure TfrmTradeSampleInPut.LookImage(FileName: string); +var + sFieldName: string; +begin + + sFieldName := leftbstr(ExtractFilePath(Application.ExeName), 1) + ':\图片查看'; + + if not DirectoryExists(pchar(sFieldName)) then + CreateDirectory(pchar(sFieldName), nil); + + sFieldName := sFieldName + '\' + trim(FileName); + + try + IdFTP1.Host := ReadINIFileStr('SYSTEMSET.INI', 'SERVER', '服务器地址', '127.0.0.1'); + IdFTP1.Username := 'three'; + IdFTP1.Password := '641010'; + IdFTP1.Connect(); + except + ; + end; + + if IdFTP1.Connected then + begin + try + IdFTP1.Get(fFlileFlag + '\' + Trim(FileName), sFieldName, true, false); + except + Application.MessageBox('客户图样文件不存在', '提示', MB_ICONWARNING); + IdFTP1.Quit; + Exit; + end; + end + else + begin + Application.MessageBox('无法连接文件服务器', '提示', MB_ICONWARNING); + IdFTP1.Quit; + Exit; + end; + if IdFTP1.Connected then + IdFTP1.Quit; + ShellExecute(Handle, 'open', PChar(sFieldName), '', '', SW_SHOWNORMAL); +end; + +procedure TfrmTradeSampleInPut.N1Click(Sender: TObject); +begin + btnFlag := 1; + TBSaveClick(Sender); +end; + +procedure TfrmTradeSampleInPut.N2Click(Sender: TObject); +begin + btnFlag := 2; + TBSaveClick(Sender); +end; + +procedure TfrmTradeSampleInPut.N3Click(Sender: TObject); +begin + btnFlag := 3; + TBSaveClick(Sender); +end; + +procedure TfrmTradeSampleInPut.N4Click(Sender: TObject); +begin + btnFlag := 4; + TBSaveClick(Sender); +end; + +procedure TfrmTradeSampleInPut.N5Click(Sender: TObject); +begin + btnFlag := 5; + TBSaveClick(Sender); +end; + +procedure TfrmTradeSampleInPut.OurCoNameDblClick(Sender: TObject); +begin + TcxButtonEdit(Sender).Text := ''; + TcxButtonEdit(Sender).Properties.LookupItems.Text := ''; +end; + +procedure TfrmTradeSampleInPut.OurCoNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + try + frmCompanySel := TfrmCompanySel.Create(Application); + with frmCompanySel do + begin + FCoType := '我司'; + if ShowModal = 1 then + begin + self.OurCoName.Properties.LookupItems.Text := Trim(frmCompanySel.CDS_1.fieldbyname('CoCode').AsString); + self.OurCoName.Text := Trim(frmCompanySel.CDS_1.fieldbyname('CoAbbrName').AsString); + end; + end; + + finally + frmCompanySel.Free; + end; +end; + +procedure TfrmTradeSampleInPut.v1OrderUnitPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +var + mvalues: string; +begin + mvalues := tv1.Columns[tv1.Controller.FocusedColumn.index].DataBinding.FieldName; + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := 'OrderUnit'; + flagname := '数量单位'; + if ShowModal = 1 then + begin + Self.CDS_1.Edit; + Self.CDS_1.FieldByName(mvalues).Value := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmTradeSampleInPut.v1OrderUnitPropertiesEditValueChanged(Sender: TObject); +var + mvalue, FFieldName, YValue: string; + FDDQty, FCPCDXS, FQty, FDKCQty: Double; +begin + mvalue := TcxComboBox(Sender).EditingText; //变化后单位 + FFieldName := Trim(Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_1 do + begin + + Edit; + FieldByName(FFieldName).Value := mvalue; + Post; + YValue := FieldByName('DDQtyUnit').AsString; //原单位=订单单位 + FDDQty := FieldByName('DDQty').AsFloat; //订单数量 + FCPCDXS := FieldByName('CPCDXS').AsFloat; + FDKCQty := FieldByName('DKCQty').AsFloat; + FQty := FieldByName('PRTOrderQty').AsFloat; + end; + if mvalue = 'Kg' then + begin + if YValue = 'Y' then + begin + FQty := FDDQty * 0.9144 / FCPCDXS; + end; + if YValue = 'M' then + begin + FQty := FDDQty / FCPCDXS; + end; + if YValue = 'Kg' then + begin + FQty := FDDQty; + end; + end; + + if mvalue = 'M' then + begin + if YValue = 'Y' then + begin + FQty := FDDQty * 0.9144; + end; + if YValue = 'Kg' then + begin + FQty := FDDQty * FCPCDXS; + end; + if YValue = 'M' then + begin + FQty := FDDQty; + end; + end; + if mvalue = 'Y' then + begin + if YValue = 'M' then + begin + FQty := FDDQty / 0.9144; + end; + if YValue = 'Kg' then + begin + FQty := FDDQty * FCPCDXS / 0.9144; + end; + if YValue = 'Y' then + begin + FQty := FDDQty; + end; + end; + + with CDS_1 do + begin + Edit; + FieldByName('PRTOrderQty').Value := FQty - FDKCQty; + Post; + end; + + Tv1.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmTradeSampleInPut.v1PriceUnitPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := 'PriceUnit'; + flagname := '价格单位'; + if Trim(DParameters1) <> '高权限' then + begin + TBAdd.Visible := False; + TBEdit.Visible := False; + TBDel.Visible := False; + end; + + if ShowModal = 1 then + begin + Self.CDS_1.Edit; + Self.CDS_1.FieldByName('PriceUnit').Value := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmTradeSampleInPut.ScrollBox1Click(Sender: TObject); +begin + TMMDate.SetFocus; +end; + +procedure TfrmTradeSampleInPut.ShippingAddressPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + + try + frmComContactSel := TfrmComContactSel.Create(Application); + with frmComContactSel do + begin + FCoCode := Trim(self.CustName.Hint); + if ShowModal = 1 then + begin + self.ShippingAddress.Text := Trim(frmComContactSel.CDS_1.fieldbyname('mxaddress').AsString); + self.CONTACT.Text := Trim(frmComContactSel.CDS_1.fieldbyname('PhoneNumber').AsString); + + self.AddressArea.Text := Trim(frmComContactSel.CDS_1.fieldbyname('MXAREA').AsString); + + end; + end; + finally + frmComContactSel.Free; + end; +end; + +procedure TfrmTradeSampleInPut.StkPositionPropertiesButtonClick(Sender: TObject); +begin + try + frmCompanySel := TfrmCompanySel.Create(Application); + with frmCompanySel do + begin + FCoType := '客户'; + FStores := Trim(canshu4); + if ShowModal = 1 then + begin + self.CustName.Hint := Trim(frmCompanySel.CDS_1.fieldbyname('CoCode').AsString); + self.CustName.Text := Trim(frmCompanySel.CDS_1.fieldbyname('CoName').AsString); + self.ShippingAddress.Text := Trim(frmCompanySel.CDS_1.fieldbyname('mxaddress').AsString); + self.CONTACT.Text := Trim(frmCompanySel.CDS_1.fieldbyname('Telephone').AsString); + self.AddressArea.Text := Trim(frmCompanySel.CDS_1.fieldbyname('MXAREA').AsString); + Saleser.Text := Trim(frmCompanySel.CDS_1.fieldbyname('Saleser').AsString); + end; + end; + + finally + frmCompanySel.Free; + end; +end; + +procedure TfrmTradeSampleInPut.PackNoteDblClick(Sender: TObject); +var + fsj: string; + FWZ: Integer; + i: integer; +begin + fsj := Trim(TMemo(Sender).Hint); + FWZ := Pos('/', fsj); + i := 0; + try + frmZDYHelpSel := TfrmZDYHelpSel.Create(Application); + with frmZDYHelpSel do + begin + flag := Copy(fsj, 1, FWZ - 1); + flagname := Copy(fsj, FWZ + 1, Length(fsj) - FWZ); + if ShowModal = 1 then + begin + TMemo(Sender).Lines.Clear; + with ClientDataSet1 do + begin + First; + while not Eof do + begin + if FieldByName('SSel').AsBoolean = True then + begin + i := i + 1; + TMemo(Sender).Lines.Add(FieldByName('ZDYName').AsString) //inttostr(i)+'.'+ + end; + Next; + end; + end; + end; + end; + finally + frmZDYHelpSel.Free; + end; +end; + +procedure TfrmTradeSampleInPut.QtyMXKeyPress(Sender: TObject; var Key: Char); +var + MaxNo: string; +begin + if Key = #13 then + begin + if Label38.Caption = '序号' then + begin + Application.MessageBox('请选择数据', '提示', 0); + Exit; + end; + if StrTofloatDef(QtyMX.Text, 0) = 0 then + Exit; + if GetLSNo(ADOTemp, MaxNo, 'MX', 'Trade_Market_Sub_Qty', 4, 1) = False then + begin + Application.MessageBox('取最大号失败!', '提示', 0); + Exit; + end; + try + ADOCmd.Connection.BeginTrans; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('insert into Trade_Market_Sub_Qty (TMSQID,TMSId,TMMID,Qty)'); + sql.Add('values(' + quotedstr(Trim(MaxNo))); + sql.Add(',' + quotedstr(Trim(MTMSId))); + sql.Add(',' + quotedstr(Trim(FTMMID))); + sql.Add(',' + QtyMX.Text); + sql.Add(')'); + ExecSQL; + end; + ADOCmd.Connection.CommitTrans; + + with CDS_MX do + begin + Append; + FieldByName('TMSQID').Value := MaxNo; + FieldByName('TMSId').Value := MTMSId; + FieldByName('TMMId').Value := FTMMId; + FieldByName('Qty').Value := QtyMX.Text; + post; + end; + except + ADOCmd.Connection.RollbackTrans; + Application.MessageBox('添加失败!', '提示', 0); + end; + QtyMX.Text := ''; + TvMX.Controller.EditingController.ShowEdit(); + end; + with cds_1 do + begin + edit; + if CDS_MX.IsEmpty then + begin + Fieldbyname('TMSPiece').Value := 0; + Fieldbyname('TMSQty').Value := 0; + end + else + begin + Fieldbyname('TMSPiece').Value := TvMX.DataController.Summary.FooterSummaryValues[1]; + Fieldbyname('TMSQty').Value := TvMX.DataController.Summary.FooterSummaryValues[0]; + end; + + post; + end; +end; + +procedure TfrmTradeSampleInPut.Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); +var + AColumn: TcxGridColumn; +begin + // 获取被双击的列 + AColumn := ACellViewInfo.Item as TcxGridColumn; + + // 检查是否双击了 Qty 列(通过列名判断) + if AColumn.Name = 'Tv1Column19' then + begin + if not CDS_1.IsEmpty then + begin + // 获取当前行的相关ID + Self.MTMSId := CDS_1.FieldByName('TMSId').AsString; + Self.FTMMID := CDS_1.FieldByName('TMMId').AsString; + + try + frmTradeMarketQtyInPut := TfrmTradeMarketQtyInPut.Create(Application); + with frmTradeMarketQtyInPut do + begin + MTMSId := Self.MTMSId; + FTMMID := Self.FTMMID; + canshu4 := self.canshu4; + if ShowModal = 1 then + begin + Self.InitMXGrid(Self.MTMSID); + + end; + end; + finally + FreeAndNil(frmTradeMarketQtyInPut); + end; + + AHandled := True; + end; + end; +end; + +procedure TfrmTradeSampleInPut.Tv1Column12PropertiesChange(Sender: TObject); +var + sInput: string; + ACombo: TcxLookupComboBox; +begin + inherited; + ACombo := TcxLookupComboBox(Sender); + sInput := Trim(ACombo.Text); // 获取你输入的文字 + if CDS_1.FieldByName('C_CODE').AsString = '' then + EXIT; + + with ADO_YS do + begin + Close; + sql.Clear; + sql.Add(' SELECT * '); + sql.Add(' FROM V_COLOR_VIEW A WHERE 1=1 and C_CODE= ' + QuotedStr(CDS_1.FieldByName('C_CODE').AsString)); + + if sInput <> '' then + begin + sql.Add(Format(' AND A.C_ColorNo LIKE ''%%%s%%'' ', [sInput])); + // ✅ 关键:DISTINCT 下绝对不报错的排序(只排查询里出现的字段) + sql.Add(Format(' ORDER BY CASE WHEN A.C_ColorNo = ''%s'' THEN 0 ELSE 1 END, A.C_ColorNo ', [sInput])); + + end + else + begin +// sql.Add(' AND C_CODE= ' + QuotedStr(CDS_1.FieldByName('C_CODE').AsString)); + end; +// ShowMessage(SQL.Text); + Open; + end; +end; + +procedure TfrmTradeSampleInPut.Tv1Column12PropertiesEditValueChanged(Sender: TObject); +var + mvalue, FFieldName: string; +begin + with ADOTemp do + begin + close; + sql.Clear; + sql.Add(' select isnull(IncludeTax,0)IncludeTax from Bs_Company a '); + sql.Add('where CoCode=' + QuotedStr(CustName.hint)); + open; + end; + + FIncludeTax := ADOTemp.Fieldbyname('IncludeTax').asfloat; + + FFieldName := Trim(Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName); + mvalue := TcxTextEdit(Sender).EditingText; + + with CDS_1 do + begin + Edit; + FieldByName(FFieldName).Value := Trim(mvalue); + Post; + ADO_YS.Locate('C_ColorNo', mvalue, []); + Edit; + FieldByName('C_Color').Value := ADO_YS.FieldByName('C_Color').Value; +// FieldByName('price').Value := ADO_YS.FieldByName('price').Value * (1 + (FIncludeTax / 100)); +// FieldByName('referencePrice').Value := ADO_YS.FieldByName('Price').Value; + Post; + end; + +end; + +procedure TfrmTradeSampleInPut.Tv1Column1PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + inherited; + try + frmClothInfoSel := TfrmClothInfoSel.Create(Application); + with frmClothInfoSel do + begin +// xzflag := 0; +// kcflag := 1; + if ShowModal = 1 then + begin + with Self.CDS_1 do + begin + edit; + Fieldbyname('C_Code').AsString := trim(frmClothInfoSel.CDS_1.Fieldbyname('C_Code').AsString); + Fieldbyname('C_Name').AsString := trim(frmClothInfoSel.CDS_1.Fieldbyname('C_Name').AsString); + Fieldbyname('C_Spec').AsString := trim(frmClothInfoSel.CDS_1.Fieldbyname('C_Spec').AsString); + Fieldbyname('C_Composition').AsString := trim(frmClothInfoSel.CDS_1.Fieldbyname('C_Composition').AsString); + Fieldbyname('C_Width').AsString := trim(frmClothInfoSel.CDS_1.Fieldbyname('C_Width').AsString); + Fieldbyname('C_GramWeight').AsString := trim(frmClothInfoSel.CDS_1.Fieldbyname('C_GramWeight').AsString); + + Fieldbyname('C_ColorNo').value := trim(frmClothInfoSel.CDS_1.Fieldbyname('C_ColorNo').AsString); + Fieldbyname('C_Color').value := trim(frmClothInfoSel.CDS_1.Fieldbyname('C_Color').AsString); + Fieldbyname('C_Pattern').value := trim(frmClothInfoSel.CDS_1.Fieldbyname('C_Pattern').AsString); + post; + end; + + end; + end; + finally + frmClothInfoSel.Free; + end; + +end; + +procedure TfrmTradeSampleInPut.Tv1Column4PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); +begin + + try + frmPictureUpload := TfrmPictureUpload.create(self); + with frmPictureUpload do + begin + fFlileFlag := self.fFlileFlag; + FDataId := Trim(self.CDS_1.fieldbyname('AttName').AsString); + FPictureName := Trim(self.CDS_1.fieldbyname('AttName').AsString); + FWidth := 450; + FHeight := 600; + FTFType := 'HX'; + if showmodal = 1 then + begin + with self.CDS_1 do + begin + Edit; + Fieldbyname('AttName').Value := frmPictureUpload.FPictureName; + Post; + end; + end; + end; + finally + frmPictureUpload.free; + end; + +end; + +procedure TfrmTradeSampleInPut.Tv1Column7PropertiesEditValueChanged(Sender: TObject); +var + mvalue, FFieldName: string; +begin + FFieldName := Trim(Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName); + mvalue := TcxTextEdit(Sender).EditingText; + + with CDS_1 do + begin + + Edit; + FieldByName(FFieldName).Value := Trim(mvalue); + Post; + ADO_PM.Locate('C_Name', mvalue, []); + Edit; + FieldByName('C_Code').Value := ADO_PM.FieldByName('C_Code').Value; + FieldByName('TMSUnit').Value := ADO_PM.FieldByName('qtyunit').Value; + + FieldByName('StkQty').Value := ADO_PM.FieldByName('StkQty').Value; + + Post; + end; + with ADO_YS do + begin + Close; + sql.Clear; + sql.Add(' SELECT DISTINCT A.C_Code,B.C_Color,B.C_ColorNo,B.referencePrice AS Price FROM Bs_Cloth_Info A inner join BS_Cloth_Info_Sub B on A.BCIID=B.BCIID '); + sql.Add(' where A.C_Code= ' + QuotedStr(CDS_1.FieldByName('C_Code').AsString)); + SQL.ADD(' order by B.C_ColorNo'); + //ShowMessage(sql.text); + Open; + end; +// with ADOTemp do +// begin +// close; +// sql.Clear; +// sql.Add(' select * from bs_cloth_info a inner join BS_Cloth_Info_GYSCP b on a.bciid=b.bciid '); +// sql.Add('where c_name=' + QuotedStr(CDS_1.FieldByName('C_name').AsString)); +// sql.Add('and factoryname=' + QuotedStr(CustName.Text)); +// +// open; +// end; +// if ADOTemp.IsEmpty = false then +// begin +// with Self.CDS_1 do +// begin +// edit; +// Fieldbyname('C_GYSNAME').AsString := trim(ADOTemp.Fieldbyname('C_GYSNAME').AsString); +// Post; +// end; +// +// end; + +end; + +procedure TfrmTradeSampleInPut.Tv1DblClick(Sender: TObject); +var + MTMSQID: string; +begin + +// try +// frmTradeMarketQtyInPut := TfrmTradeMarketQtyInPut.Create(Application); +// with frmTradeMarketQtyInPut do +// begin +// MTMSId := self.MTMSId; +// FTMMID := Self.FTMMID; +// if ShowModal = 1 then +// begin +//// Self.InitMXGrid(Self.MTMSQID); +// end; +// end; +// finally +// frmTradeMarketQtyInPut.Free; +// end; + +end; + +procedure TfrmTradeSampleInPut.Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); +begin + inherited; + Label38.Caption := '序号:' + Trim(cds_1.fieldbyname('SerialNo').AsString); + MTMSId := Trim(cds_1.fieldbyname('TMSId').AsString); + InitMXGrid(MTMSId); +end; + +procedure TfrmTradeSampleInPut.Tv1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); +begin + if Key = VK_DOWN then + begin + ToolButton1.Click(); + + end; +end; + +procedure TfrmTradeSampleInPut.Tv1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); +begin + + if not ADO_YS.IsEmpty then + begin + if ADO_YS.FieldByName('C_Code').AsString <> CDS_1.FieldByName('C_Code').AsString then + begin + with ADO_YS do + begin + Close; + sql.Clear; + sql.Add(' SELECT DISTINCT A.C_Code,B.C_Color,B.C_ColorNo,B.referencePrice AS Price FROM Bs_Cloth_Info A inner join BS_Cloth_Info_Sub B on A.BCIID=B.BCIID '); + + sql.Add(' where A.C_Code= ' + QuotedStr(CDS_1.FieldByName('C_Code').AsString)); + SQL.ADD(' order by B.C_ColorNo'); + Open; + end; + end; + end + else + begin + with ADO_YS do + begin + Close; + sql.Clear; + sql.Add(' SELECT DISTINCT A.C_Code,B.C_Color,B.C_ColorNo,B.referencePrice AS Price FROM Bs_Cloth_Info A inner join BS_Cloth_Info_Sub B on A.BCIID=B.BCIID '); + + sql.Add(' where A.C_Code= ' + QuotedStr(CDS_1.FieldByName('C_Code').AsString)); + SQL.ADD(' order by B.C_ColorNo'); + Open; + end; + end; + + if not ADO_DanWei.IsEmpty then + begin + if ADO_DanWei.FieldByName('C_Code').AsString <> CDS_1.FieldByName('C_Code').AsString then + begin + with ADO_DanWei do + begin + Close; + sql.Clear; + sql.Add(' EXEC P_Cloth_GetCICUnit @C_Code= ' + QuotedStr(CDS_1.FieldByName('C_Code').AsString)); + Open; + end; + end; + end + else + begin + with ADO_DanWei do + begin + Close; + sql.Clear; + sql.Add(' EXEC P_Cloth_GetCICUnit @C_Code= ' + QuotedStr(CDS_1.FieldByName('C_Code').AsString)); + Open; + end; + end; + + +// Bs_Cloth_Info_Coefficient +end; + +procedure TfrmTradeSampleInPut.TvMXCellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); +begin + inherited; + if ToolBar2.Enabled = False then + Exit; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add('delete Trade_Market_Sub_Qty where TMSQID=' + quotedstr(Trim(CDS_MX.FieldByName('TMSQID').AsString))); + ExecSQL; + end; + +// with ADOCmd do +// begin +// close; +// sql.Clear; +// sql.Add(' exec P_KCSD_AllNew '); +// sql.Add(' @Operation=''大货单明细删除'' '); +// sql.Add(' ,@TMMNo=' + quotedstr(trim(TMMNo.Text))); +// ExecSQL; +// end; + CDS_MX.Delete; + with cds_1 do + begin + edit; + if CDS_MX.IsEmpty then + begin + Fieldbyname('TMSPiece').Value := 0; + Fieldbyname('TMSQty').Value := 0; + end + else + begin + Fieldbyname('TMSPiece').Value := TvMX.DataController.Summary.FooterSummaryValues[1]; + Fieldbyname('TMSQty').Value := TvMX.DataController.Summary.FooterSummaryValues[0]; + end; + + post; + end; +end; + +procedure TfrmTradeSampleInPut.InitMXGrid(MTMSId: string); +begin + with ADOTemp do + begin + Close; + SQL.Clear; + sql.Add(' select A.* from Trade_Market_Sub_Qty A '); + sql.Add('where TMSId=''' + Trim(MTMSId) + ''''); + Open; + end; + SCreateCDS(ADOTemp, CDS_MX); + SInitCDSData(ADOTemp, CDS_MX); +end; + +procedure TfrmTradeSampleInPut.v1Column5PropertiesEditValueChanged(Sender: TObject); +var + mvalue, FFieldName: string; +begin + + mvalue := TcxTextEdit(Sender).EditingText; + FFieldName := Trim(Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName); + with CDS_1 do + begin + Edit; + FieldByName(FFieldName).Value := mvalue; + FieldByName('MGTMMID').Value := ''; + Post; + end; + Tv1.Controller.EditingController.ShowEdit(); +end; + +procedure TfrmTradeSampleInPut.HYTTBtnUpClick(Sender: TObject); +var + fsj: string; + FWZ: Integer; +begin + fsj := Trim(TcxTextEdit(Sender).Hint); + FWZ := Pos('/', fsj); + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := Copy(fsj, 1, FWZ - 1); + flagname := Copy(fsj, FWZ + 1, Length(fsj) - FWZ); + if ShowModal = 1 then + begin + TcxTextEdit(Sender).Text := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +procedure TfrmTradeSampleInPut.KYTTBtnUpClick(Sender: TObject); +var + fsj: string; + FWZ: Integer; +begin + fsj := Trim(TcxTextEdit(Sender).Hint); + FWZ := Pos('/', fsj); + try + frmZDYHelp := TfrmZDYHelp.Create(Application); + with frmZDYHelp do + begin + flag := Copy(fsj, 1, FWZ - 1); + flagname := Copy(fsj, FWZ + 1, Length(fsj) - FWZ); + if Trim(flag) = 'OrdDefStr2' then + begin + V1Name.Caption := '中文名称'; + V1Note.Caption := '英文名称'; + fnote := True; + end; + if ShowModal = 1 then + begin + TcxTextEdit(Sender).Text := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); + + end; + end; + finally + frmZDYHelp.Free; + end; +end; + +end. + diff --git a/T05贸易门市管理/U_TradeSampletList.dfm b/T05贸易门市管理/U_TradeSampletList.dfm index 9520490..d385916 100644 --- a/T05贸易门市管理/U_TradeSampletList.dfm +++ b/T05贸易门市管理/U_TradeSampletList.dfm @@ -9,6 +9,7 @@ inherited frmTradeSampleList: TfrmTradeSampleList FormStyle = fsMDIChild Position = poScreenCenter Visible = True + ExplicitLeft = -235 ExplicitWidth = 1556 ExplicitHeight = 633 PixelsPerInch = 96 @@ -21,7 +22,7 @@ inherited frmTradeSampleList: TfrmTradeSampleList Height = 30 AutoSize = True ButtonHeight = 30 - ButtonWidth = 131 + ButtonWidth = 99 Caption = 'ToolBar1' Images = DataLink_TradeMarket.cxImageList_bar List = True @@ -99,22 +100,22 @@ inherited frmTradeSampleList: TfrmTradeSampleList Left = 568 Top = 0 AutoSize = True - Caption = #37197#36135#23436#25104 + Caption = #23436#25104 ImageIndex = 12 Visible = False OnClick = TBTJClick end object TBTJCX: TToolButton - Left = 671 + Left = 639 Top = 0 AutoSize = True - Caption = #25764#38144#37197#36135#23436#25104 + Caption = #25764#38144#23436#25104 ImageIndex = 11 Visible = False OnClick = TBTJCXClick end object TWC: TToolButton - Left = 806 + Left = 742 Top = 0 AutoSize = True Caption = #24050#35013#36710 @@ -123,7 +124,7 @@ inherited frmTradeSampleList: TfrmTradeSampleList OnClick = TWCClick end object TNowc: TToolButton - Left = 893 + Left = 829 Top = 0 AutoSize = True Caption = #25764#38144#35013#36710 @@ -132,7 +133,7 @@ inherited frmTradeSampleList: TfrmTradeSampleList OnClick = TNowcClick end object ToolButton2: TToolButton - Left = 996 + Left = 932 Top = 0 AutoSize = True Caption = #20445#23384#26684#24335 @@ -140,7 +141,7 @@ inherited frmTradeSampleList: TfrmTradeSampleList OnClick = ToolButton2Click end object ToolButton1: TToolButton - Left = 1099 + Left = 1035 Top = 0 AutoSize = True Caption = #23548#20986 @@ -148,7 +149,7 @@ inherited frmTradeSampleList: TfrmTradeSampleList OnClick = ToolButton1Click end object TBClose: TToolButton - Left = 1170 + Left = 1106 Top = 0 AutoSize = True Caption = #20851#38381 @@ -156,7 +157,7 @@ inherited frmTradeSampleList: TfrmTradeSampleList OnClick = TBCloseClick end object TBZF: TToolButton - Left = 1241 + Left = 1177 Top = 0 AutoSize = True Caption = #20316#24223 @@ -165,7 +166,7 @@ inherited frmTradeSampleList: TfrmTradeSampleList OnClick = TBZFClick end object TBNOZF: TToolButton - Left = 1312 + Left = 1248 Top = 0 AutoSize = True Caption = #25764#38144#20316#24223 @@ -210,7 +211,28 @@ inherited frmTradeSampleList: TfrmTradeSampleList Top = 51 Width = 48 Height = 21 - Caption = #21512#21516#21495 + Caption = #21046#21333#20154 + end + object Label5: TLabel + Left = 912 + Top = 51 + Width = 32 + Height = 21 + Caption = #39068#33394 + end + object Label6: TLabel + Left = 744 + Top = 51 + Width = 32 + Height = 21 + Caption = #33394#21495 + end + object Label7: TLabel + Left = 1072 + Top = 51 + Width = 48 + Height = 21 + Caption = #21098#26679#21592 end object TMMNo: TcxTextEdit Tag = 2 @@ -236,7 +258,7 @@ inherited frmTradeSampleList: TfrmTradeSampleList OnKeyPress = TMMNoKeyPress Width = 120 end - object ConNo: TcxTextEdit + object FILLER: TcxTextEdit Tag = 2 Left = 620 Top = 47 @@ -265,6 +287,30 @@ inherited frmTradeSampleList: TfrmTradeSampleList ExplicitHeight = 21 end end + object C_Color: TcxTextEdit + Tag = 2 + Left = 948 + Top = 47 + TabOrder = 5 + OnKeyPress = TMMNoKeyPress + Width = 120 + end + object C_ColorNo: TcxTextEdit + Tag = 2 + Left = 788 + Top = 47 + TabOrder = 6 + OnKeyPress = TMMNoKeyPress + Width = 120 + end + object JYPERSON: TcxTextEdit + Tag = 2 + Left = 1124 + Top = 47 + TabOrder = 7 + OnKeyPress = TMMNoKeyPress + Width = 120 + end end object cxGrid1: TcxGrid [2] Left = 0 @@ -323,14 +369,6 @@ inherited frmTradeSampleList: TfrmTradeSampleList Options.Editing = False Width = 77 end - object Tv1Column2: TcxGridDBColumn - Caption = #32463#33829#21333#20301 - DataBinding.FieldName = 'OurCoName' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 77 - end object Tv1Column4: TcxGridDBColumn Caption = #23458#25143 DataBinding.FieldName = 'CustName' @@ -339,17 +377,6 @@ inherited frmTradeSampleList: TfrmTradeSampleList Options.Editing = False Width = 77 end - object v1DeliveryDate: TcxGridDBColumn - Caption = #20132#36135#26085#26399 - DataBinding.FieldName = 'DlyDate' - DataBinding.IsNullValueType = True - PropertiesClassName = 'TcxDateEditProperties' - Properties.ShowTime = False - OnCustomDrawCell = v1DeliveryDateCustomDrawCell - HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 77 - end object Tv1Column6: TcxGridDBColumn Caption = #21046#21333#20154 DataBinding.FieldName = 'FILLER' @@ -381,14 +408,6 @@ inherited frmTradeSampleList: TfrmTradeSampleList Options.Editing = False Width = 77 end - object Tv1Column8: TcxGridDBColumn - Caption = #20135#21697#32534#21495 - DataBinding.FieldName = 'C_Code' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 77 - end object Tv1Column9: TcxGridDBColumn Caption = #33394#24067#21517#31216 DataBinding.FieldName = 'C_Name' @@ -397,14 +416,6 @@ inherited frmTradeSampleList: TfrmTradeSampleList Options.Editing = False Width = 77 end - object Tv1Column12: TcxGridDBColumn - Caption = #39068#33394 - DataBinding.FieldName = 'C_Color' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 77 - end object Tv1Column17: TcxGridDBColumn Caption = #33394#21495 DataBinding.FieldName = 'C_ColorNo' @@ -413,6 +424,14 @@ inherited frmTradeSampleList: TfrmTradeSampleList Options.Editing = False Width = 58 end + object Tv1Column12: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'C_Color' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 77 + end object Tv1Column11: TcxGridDBColumn Caption = #25253#21333#25968#37327 DataBinding.FieldName = 'OrderQty' @@ -420,27 +439,6 @@ inherited frmTradeSampleList: TfrmTradeSampleList HeaderAlignmentHorz = taCenter Width = 104 end - object Tv1Column22: TcxGridDBColumn - Caption = #20986#24211#25968#37327 - DataBinding.FieldName = 'TMSQty' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Width = 84 - end - object Tv1Column23: TcxGridDBColumn - Caption = #21333#20215 - DataBinding.FieldName = 'Price' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Width = 70 - end - object Tv1Column24: TcxGridDBColumn - Caption = #37329#39069 - DataBinding.FieldName = 'Amount' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Width = 70 - end object Tv1Column13: TcxGridDBColumn Caption = #25253#21333#21333#20301 DataBinding.FieldName = 'OrderUnit' @@ -448,51 +446,12 @@ inherited frmTradeSampleList: TfrmTradeSampleList HeaderAlignmentHorz = taCenter Width = 91 end - object Tv1Column19: TcxGridDBColumn - Caption = #27424#21333#25968 - DataBinding.FieldName = 'OrderOweQty' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Width = 84 - end - object Tv1Column14: TcxGridDBColumn - Caption = #24211#23384#38656#27714 + object Tv1Column22: TcxGridDBColumn + Caption = #20986#24211#25968#37327 DataBinding.FieldName = 'TMSQty' DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 95 - end - object Tv1Column18: TcxGridDBColumn - Caption = #22791#36135#25968#37327 - DataBinding.FieldName = 'StkQty' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Width = 111 - end - object Tv1Column15: TcxGridDBColumn - Caption = #22791#36135#21333#20301 - DataBinding.FieldName = 'TMSUnit' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 93 - end - object Tv1Column21: TcxGridDBColumn - Caption = #22791#36135#29366#24577 - DataBinding.FieldName = 'StkStatus' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 92 - end - object Tv1Column10: TcxGridDBColumn - Caption = #27004#23618 - DataBinding.FieldName = 'StkPosition' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 95 + Width = 84 end object Tv1Column16: TcxGridDBColumn Caption = #22791#27880 @@ -502,14 +461,6 @@ inherited frmTradeSampleList: TfrmTradeSampleList Options.Editing = False Width = 77 end - object Tv1Column20: TcxGridDBColumn - Caption = #32039#24613#31243#24230 - DataBinding.FieldName = 'Urgent' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 88 - end object Tv1Column25: TcxGridDBColumn Caption = #35746#21333#31867#22411 DataBinding.FieldName = 'OrdType' @@ -517,6 +468,14 @@ inherited frmTradeSampleList: TfrmTradeSampleList HeaderAlignmentHorz = taCenter Width = 60 end + object Tv1Column10: TcxGridDBColumn + Caption = #21098#26679#21592 + DataBinding.FieldName = 'JYPERSON' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 95 + end object Tv1Column26: TcxGridDBColumn DataBinding.FieldName = 'PrintStatus' DataBinding.IsNullValueType = True diff --git a/T05贸易门市管理/U_TradeSampletList.pas b/T05贸易门市管理/U_TradeSampletList.pas index c68ee51..4787291 100644 --- a/T05贸易门市管理/U_TradeSampletList.pas +++ b/T05贸易门市管理/U_TradeSampletList.pas @@ -39,7 +39,6 @@ type Label3: TLabel; TMMNo: TcxTextEdit; v1OrdDate: TcxGridDBColumn; - v1DeliveryDate: TcxGridDBColumn; Order_Main: TClientDataSet; TBCK: TToolButton; btnCopy: TToolButton; @@ -63,13 +62,12 @@ type CustName: TcxTextEdit; Tv1Column6: TcxGridDBColumn; cxgrdpmn2: TcxGridPopupMenu; - Tv1Column2: TcxGridDBColumn; Tv1Column1: TcxGridDBColumn; Label2: TLabel; C_Name: TcxTextEdit; CDS_WXTS: TClientDataSet; Label4: TLabel; - ConNo: TcxTextEdit; + FILLER: TcxTextEdit; ToolButton2: TToolButton; PM_1: TPopupMenu; N1: TMenuItem; @@ -80,30 +78,27 @@ type Tv1Column5: TcxGridDBColumn; frmFrameDateSel1: TfrmFrameDateSel; Tv1Column7: TcxGridDBColumn; - Tv1Column8: TcxGridDBColumn; Tv1Column9: TcxGridDBColumn; Tv1Column12: TcxGridDBColumn; - Tv1Column14: TcxGridDBColumn; - Tv1Column15: TcxGridDBColumn; Tv1Column16: TcxGridDBColumn; Tv1Column10: TcxGridDBColumn; ToolButton1: TToolButton; Tv1Column11: TcxGridDBColumn; Tv1Column13: TcxGridDBColumn; Tv1Column17: TcxGridDBColumn; - Tv1Column18: TcxGridDBColumn; - Tv1Column19: TcxGridDBColumn; - Tv1Column20: TcxGridDBColumn; - Tv1Column21: TcxGridDBColumn; N5: TMenuItem; N6: TMenuItem; Tv1Column22: TcxGridDBColumn; - Tv1Column23: TcxGridDBColumn; - Tv1Column24: TcxGridDBColumn; TBZF: TToolButton; TBNOZF: TToolButton; Tv1Column25: TcxGridDBColumn; Tv1Column26: TcxGridDBColumn; + Label5: TLabel; + Label6: TLabel; + Label7: TLabel; + C_Color: TcxTextEdit; + C_ColorNo: TcxTextEdit; + JYPERSON: TcxTextEdit; procedure FormDestroy(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure FormCreate(Sender: TObject); @@ -172,7 +167,7 @@ implementation uses U_DataLink, U_RTFun, U_ZDYHelp, U_LabelPrint, U_AttachmentUpload, - U_TradeMarketInPut; + U_TradeSampleInPut; {$R *.dfm} @@ -199,8 +194,7 @@ begin TBDel.Visible := False; TBTJ.Visible := False; TBTJCX.Visible := False; -// tchk.Enabled := false; -// tnochk.Enabled := false; + TWC.Visible := False; TNowc.Visible := False; TBDel.Visible := False; @@ -213,16 +207,16 @@ begin // tbadd.Visible := True; TBEdit.Visible := True; TBDel.Visible := True; -// TBTJ.Visible := True; + TBTJ.Visible := True; // btnCopy.Visible := True; end; - + tbadd.Visible := True; end; 1: begin if self.fParameters1 = '' then begin -// TBTJCX.Visible := True; + TBTJCX.Visible := True; // tbadd.Visible := True; // btnCopy.Visible := True; TBEdit.Visible := True; @@ -374,15 +368,15 @@ begin if Order_Main.IsEmpty then Exit; - if Trim(Order_Main.fieldbyname('Filler').AsString) <> Trim(DName) then - begin - Application.MessageBox('ܲ˵!', 'ʾ', 0); - Exit; - end; +// if Trim(Order_Main.fieldbyname('Filler').AsString) <> Trim(DName) then +// begin +// Application.MessageBox('ܲ˵!', 'ʾ', 0); +// Exit; +// end; try - frmTradeMarketInPut := TfrmTradeMarketInPut.Create(Application); - with frmTradeMarketInPut do + frmTradeSampleInPut := TfrmTradeSampleInPut.Create(Application); + with frmTradeSampleInPut do begin PState := 1; @@ -390,14 +384,14 @@ begin FTMMNo := Trim(Self.Order_Main.fieldbyname('TMMNo').AsString); canshu1 := self.canshu1; canshu4 := self.canshu4; - frmTradeMarketInPut.fordtype := self.fordtype; + frmTradeSampleInPut.fordtype := self.fordtype; if ShowModal = 1 then begin - + initgrid(); end; end; finally - frmTradeMarketInPut.Free; + frmTradeSampleInPut.Free; end; end; @@ -451,11 +445,11 @@ procedure TfrmTradeSampleList.TBDelClick(Sender: TObject); begin if Order_Main.IsEmpty then Exit; - if Trim(Order_Main.fieldbyname('Filler').AsString) <> Trim(DName) then - begin - Application.MessageBox('ܲ˵!', 'ʾ', 0); - Exit; - end; +// if Trim(Order_Main.fieldbyname('Filler').AsString) <> Trim(DName) then +// begin +// Application.MessageBox('ܲ˵!', 'ʾ', 0); +// Exit; +// end; if Application.MessageBox('ȷҪɾ', 'ʾ', 32 + 4) <> IDYES then Exit; @@ -570,21 +564,21 @@ end; procedure TfrmTradeSampleList.TBAddClick(Sender: TObject); begin try - frmTradeMarketInPut := TfrmTradeMarketInPut.Create(Application); - with frmTradeMarketInPut do + frmTradeSampleInPut := TfrmTradeSampleInPut.Create(Application); + with frmTradeSampleInPut do begin PState := 0; FTMMId := ''; canshu1 := self.canshu1; canshu4 := self.canshu4; - frmTradeMarketInPut.fordtype := self.fordtype; + frmTradeSampleInPut.fordtype := self.fordtype; if ShowModal = 1 then begin InitGrid(); end; end; finally - frmTradeMarketInPut.Free; + frmTradeSampleInPut.Free; end; end; @@ -693,8 +687,8 @@ begin Exit; try - frmTradeMarketInPut := TfrmTradeMarketInPut.Create(Application); - with frmTradeMarketInPut do + frmTradeSampleInPut := TfrmTradeSampleInPut.Create(Application); + with frmTradeSampleInPut do begin PState := 1; FTMMId := Trim(Self.Order_Main.fieldbyname('TMMId').AsString); @@ -702,7 +696,7 @@ begin TBSave.Visible := False; ScrollBox1.Enabled := True; N2.Visible := False; - frmTradeMarketInPut.fordtype := self.fordtype; + frmTradeSampleInPut.fordtype := self.fordtype; TvMX.OnCellDblClick := nil; Panel5.Visible := False; if ShowModal = 1 then @@ -711,7 +705,7 @@ begin end; end; finally - frmTradeMarketInPut.Free; + frmTradeSampleInPut.Free; end; end; @@ -722,22 +716,22 @@ begin Exit; try - frmTradeMarketInPut := TfrmTradeMarketInPut.Create(Application); - with frmTradeMarketInPut do + frmTradeSampleInPut := TfrmTradeSampleInPut.Create(Application); + with frmTradeSampleInPut do begin PState := 1; CopyInt := 99; FTMMId := Trim(Self.Order_Main.fieldbyname('TMMId').AsString); canshu1 := self.canshu1; canshu4 := self.canshu4; - frmTradeMarketInPut.fordtype := self.fordtype; + frmTradeSampleInPut.fordtype := self.fordtype; if ShowModal = 1 then begin end; end; finally - frmTradeMarketInPut.Free; + frmTradeSampleInPut.Free; end; end; @@ -768,8 +762,8 @@ begin Exit; try - frmTradeMarketInPut := TfrmTradeMarketInPut.Create(Application); - with frmTradeMarketInPut do + frmTradeSampleInPut := TfrmTradeSampleInPut.Create(Application); + with frmTradeSampleInPut do begin PState := 1; FTMMId := Trim(Self.Order_Main.fieldbyname('TMMId').AsString); @@ -777,7 +771,7 @@ begin TBSave.Enabled := False; ScrollBox1.Enabled := False; N2.Visible := False; - frmTradeMarketInPut.fordtype := self.fordtype; + frmTradeSampleInPut.fordtype := self.fordtype; TvMX.OnCellDblClick := nil; Panel5.Enabled := False; canshu4 := self.canshu4; @@ -787,7 +781,7 @@ begin end; end; finally - frmTradeMarketInPut.Free; + frmTradeSampleInPut.Free; end; end; @@ -817,6 +811,7 @@ end; procedure TfrmTradeSampleList.cxTabControl1Change(Sender: TObject); begin // SetStatus(); + InitGrid(); SetStatus(); end; @@ -983,104 +978,90 @@ procedure TfrmTradeSampleList.TBTJClick(Sender: TObject); begin if Order_Main.IsEmpty then exit; - - if canshu1 <> 'Ȩ' then - begin - if Trim(Order_Main.fieldbyname('Filler').AsString) <> Trim(DName) then - begin - Application.MessageBox('ܲ˵!', 'ʾ', 0); - Exit; - end; - end; - - if cxTabControl1.TabIndex <> 0 then - begin - Application.MessageBox('ֻڴύ״̬½ύ!', 'ʾ', 0); - Exit; - end; - if Application.MessageBox('ȷҪύ', 'ʾ', 32 + 4) <> IDYES then +// if Trim(Order_Main.fieldbyname('Filler').AsString) <> Trim(DName) then +// begin +// Application.MessageBox('ܲ˵!', 'ʾ', 0); +// Exit; +// end; + if Application.MessageBox('Ƿʵݣ', 'ʾ', 32 + 4) <> IDYES then Exit; try with ADOQueryCmd do begin close; sql.Clear; - sql.Add('update Trade_Market_Main SET status=''2'' '); - sql.Add(' where TMMId=' + quotedstr(trim(Order_Main.fieldbyname('TMMId').AsString))); + sql.Add('update Trade_Market_Main SET status=''10'' '); + sql.Add('where TMMId=' + quotedstr(trim(Order_Main.fieldbyname('TMMId').AsString))); + +// sql.Add('insert into Finance_Need_Up(UType,UDataId,UOperation,UOperator,UModule,UDetails) '); +// sql.Add('values(''óײ'' '); +// sql.Add(',' + quotedstr(trim(Order_Main.fieldbyname('TMMId').AsString))); +// sql.Add(','''' '); +// sql.Add(',' + quotedstr(DName)); +// sql.Add(',' + quotedstr(trim(self.Caption))); +// sql.Add(',' + quotedstr(trim(Order_Main.fieldbyname('TMMId').AsString))); +// sql.Add(') '); + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); sql.Add(' ' + quotedstr(trim(DName))); sql.Add(',getdate() '); sql.Add(',' + quotedstr(trim(self.Caption))); - sql.Add(',' + quotedstr(trim('ƻύ'))); + sql.Add(',' + quotedstr(trim('ƻ'))); sql.Add(',' + quotedstr(trim('ƻţ' + trim(Order_Main.FieldByName('TMMNO').AsString)))); sql.Add(',' + quotedstr(trim('ɹ'))); sql.Add(')'); execsql; end; - SendMessageQR(trim(Order_Main.FieldByName('TMMId').AsString), trim(Order_Main.FieldByName('Filler').AsString), trim(Order_Main.FieldByName('TMMNO').AsString), Trim(FormatDateTime('yyyy-MM-dd', Order_Main.FieldByName('TMMDate').asdatetime))); - - with ADOQueryCmd do - begin - close; - sql.Clear; - sql.Add('exec P_MSG_in '); - sql.Add(' @MSG=' + QuotedStr(trim('ƻţ' + trim(Order_Main.FieldByName('TMMNO').AsString) + ' Ҫ'))); - sql.Add(',@FillUserid=' + QuotedStr(trim(DCode))); - sql.Add(',@FillUserName=' + QuotedStr(trim(DName))); - sql.Add(',@FillType=' + QuotedStr(trim('Ҫȷ'))); - sql.Add(',@MegType=' + QuotedStr(trim('ƻύ'))); - execsql; - end; - application.MessageBox('ƻύɹ', 'ʾϢ'); + application.MessageBox('ƻɳɹ', 'ʾϢ'); + TBRafresh.Click; except - application.MessageBox('ƻύʧܣ', 'ʾϢ', 0); + application.MessageBox('ƻʧܣ', 'ʾϢ', 0); end; - TBRafresh.Click; end; procedure TfrmTradeSampleList.TBTJCXClick(Sender: TObject); begin if Order_Main.IsEmpty then exit; - if canshu1 <> 'Ȩ' then - begin - if Trim(Order_Main.fieldbyname('Filler').AsString) <> Trim(DName) then - begin - Application.MessageBox('ܲ˵!', 'ʾ', 0); - Exit; - end; - end; - - if cxTabControl1.TabIndex <> 1 then - begin - Application.MessageBox('ֻڴ״̬½ύ!', 'ʾ', 0); - Exit; - end; - if Application.MessageBox('ȷҪύ', 'ʾ', 32 + 4) <> IDYES then +// if Trim(Order_Main.fieldbyname('Filler').AsString) <> Trim(DName) then +// begin +// Application.MessageBox('ܲ˵!', 'ʾ', 0); +// Exit; +// end; + if Application.MessageBox('Ƿʵݣ', 'ʾ', 32 + 4) <> IDYES then Exit; try with ADOQueryCmd do begin close; sql.Clear; - sql.Add('update Trade_Market_Main SET status=''1'' '); - sql.Add(' where TMMId=' + quotedstr(trim(Order_Main.fieldbyname('TMMId').AsString))); - sql.Add(' and isnull(status,''0'')=''2'' '); + sql.Add('update Trade_Market_Main SET status=''1'' '); + sql.Add('where TMMId=' + quotedstr(trim(Order_Main.fieldbyname('TMMId').AsString))); + +// sql.Add('insert into Finance_Need_Up(UType,UDataId,UOperation,UOperator,UModule,UDetails) '); +// sql.Add('values(''óײ'' '); +// sql.Add(',' + quotedstr(trim(Order_Main.fieldbyname('TMMId').AsString))); +// sql.Add(','''' '); +// sql.Add(',' + quotedstr(DName)); +// sql.Add(',' + quotedstr(trim(self.Caption))); +// sql.Add(',' + quotedstr(trim(Order_Main.fieldbyname('TMMId').AsString))); +// sql.Add(') '); + sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( '); sql.Add(' ' + quotedstr(trim(DName))); sql.Add(',getdate() '); sql.Add(',' + quotedstr(trim(self.Caption))); - sql.Add(',' + quotedstr(trim('ƻύ'))); + sql.Add(',' + quotedstr(trim('ƻ'))); sql.Add(',' + quotedstr(trim('ƻţ' + trim(Order_Main.FieldByName('TMMNO').AsString)))); sql.Add(',' + quotedstr(trim('ɹ'))); sql.Add(')'); execsql; end; - application.MessageBox('ƻύɹ', 'ʾϢ'); + application.MessageBox('ƻɳɹ', 'ʾϢ'); TBRafresh.Click; except - application.MessageBox('ƻύʧܣ', 'ʾϢ', 0); + application.MessageBox('ƻʧܣ', 'ʾϢ', 0); end; end; diff --git a/T05贸易门市管理/testDll.res b/T05贸易门市管理/testDll.res index e116c48..2465ca0 100644 Binary files a/T05贸易门市管理/testDll.res and b/T05贸易门市管理/testDll.res differ