diff --git a/A01基础公司管理/Company.dpr b/A01基础公司管理/Company.dpr index dafcc99..073be5d 100644 --- a/A01基础公司管理/Company.dpr +++ b/A01基础公司管理/Company.dpr @@ -29,7 +29,8 @@ uses U_CompressionFun in '..\..\..\public10\ThreeFun\Fun\U_CompressionFun.pas', U_BankList in 'U_BankList.pas' {frmBankList}, U_LabelMapSet in '..\A00ͨô\U_LabelMapSet.pas' {frmLabelMapSet}, - U_LabelPrint in '..\A00ͨô\U_LabelPrint.pas' {frmLabelPrint}; + U_LabelPrint in '..\A00ͨô\U_LabelPrint.pas' {frmLabelPrint}, + uSZHN_JSON in '..\..\..\public10\ThreeFun\Fun\uSZHN_JSON.pas'; {$R *.res} diff --git a/A01基础公司管理/Company.dproj b/A01基础公司管理/Company.dproj index 0203a28..f0db251 100644 --- a/A01基础公司管理/Company.dproj +++ b/A01基础公司管理/Company.dproj @@ -4,7 +4,7 @@ Company.dpr True Debug - 38017 + 1 Library VCL 19.2 @@ -13,16 +13,6 @@ true - - true - Base - true - - - true - Base - true - true Base @@ -43,24 +33,6 @@ Base true - - true - Cfg_2 - true - true - - - true - Cfg_2 - true - true - - - true - Cfg_2 - true - true - true Cfg_2 @@ -84,13 +56,6 @@ 2052 CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments= - - $(BDS)\bin\Artwork\Android\FM_LauncherIcon_192x192.png - android-support-v4.dex.jar;cloud-messaging.dex.jar;com-google-android-gms.play-services-ads-base.17.2.0.dex.jar;com-google-android-gms.play-services-ads-identifier.16.0.0.dex.jar;com-google-android-gms.play-services-ads-lite.17.2.0.dex.jar;com-google-android-gms.play-services-ads.17.2.0.dex.jar;com-google-android-gms.play-services-analytics-impl.16.0.8.dex.jar;com-google-android-gms.play-services-analytics.16.0.8.dex.jar;com-google-android-gms.play-services-base.16.0.1.dex.jar;com-google-android-gms.play-services-basement.16.2.0.dex.jar;com-google-android-gms.play-services-gass.17.2.0.dex.jar;com-google-android-gms.play-services-identity.16.0.0.dex.jar;com-google-android-gms.play-services-maps.16.1.0.dex.jar;com-google-android-gms.play-services-measurement-base.16.4.0.dex.jar;com-google-android-gms.play-services-measurement-sdk-api.16.4.0.dex.jar;com-google-android-gms.play-services-stats.16.0.1.dex.jar;com-google-android-gms.play-services-tagmanager-v4-impl.16.0.8.dex.jar;com-google-android-gms.play-services-tasks.16.0.1.dex.jar;com-google-android-gms.play-services-wallet.16.0.1.dex.jar;com-google-firebase.firebase-analytics.16.4.0.dex.jar;com-google-firebase.firebase-common.16.1.0.dex.jar;com-google-firebase.firebase-iid-interop.16.0.1.dex.jar;com-google-firebase.firebase-iid.17.1.1.dex.jar;com-google-firebase.firebase-measurement-connector.17.0.1.dex.jar;com-google-firebase.firebase-messaging.17.5.0.dex.jar;fmx.dex.jar;google-play-billing.dex.jar;google-play-licensing.dex.jar - - - $(BDS)\bin\Artwork\iOS\iPhone\FM_ApplicationIcon_1024x1024.png - System.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace) Debug @@ -113,17 +78,8 @@ false true - - Debug - - - Debug - - - Debug - - D:\Dp10Repo\项目代码\恒溢水洗\A01基础公司管理\testDll.exe + D:\Dp10Repo\项目代码\D10sxYilanbuyi\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) @@ -194,6 +150,7 @@
frmLabelPrint
dfm + Cfg_2 Base @@ -216,10 +173,6 @@ - True - True - True - True True False diff --git a/A01基础公司管理/Company.dproj.local b/A01基础公司管理/Company.dproj.local index 879e7fa..2f556e0 100644 --- a/A01基础公司管理/Company.dproj.local +++ b/A01基础公司管理/Company.dproj.local @@ -1,24 +1,25 @@  - 1899/12/30 00:00:00.000.411,D:\Dp10Repo\项目代码\RTBasics\A01基础公司管理\U_YGSel.pas= - 1899/12/30 00:00:00.000.592,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LabelPrint.pas - 1899/12/30 00:00:00.000.921,D:\Dp10Repo\项目代码\鹏华\员工管理(StaffManage.dll)\U_CompanySel.dfm=D:\Dp10Repo\项目代码\鹏华\客户供应商管理(Company.dll)\U_Company.dfm - 1899/12/30 00:00:00.000.033,D:\Dp10Repo\项目代码\瑜量\客户供应商管理(Company.dll)\U_YGSel.pas=D:\Dp10Repo\项目代码\瑜量\客户供应商管理(Company.dll)\U_ZDYHelp.pas - 1899/12/30 00:00:00.000.033,D:\Dp10Repo\项目代码\瑜量\客户供应商管理(Company.dll)\U_YGSel.dfm=D:\Dp10Repo\项目代码\瑜量\客户供应商管理(Company.dll)\U_ZDYHelp.dfm - 1899/12/30 00:00:00.000.744,D:\Dp10Repo\项目代码\鹏华\客户供应商管理(Company.dll)\U_Customer.dfm=D:\Dp10Repo\项目代码\鹏华\客户供应商管理(Company.dll)\U_Company.dfm - 1899/12/30 00:00:00.000.744,D:\Dp10Repo\项目代码\鹏华\客户供应商管理(Company.dll)\U_Customer.pas=D:\Dp10Repo\项目代码\鹏华\客户供应商管理(Company.dll)\U_Company.pas - 1899/12/30 00:00:00.000.967,D:\Dp10Repo\项目代码\鹏华\客户供应商管理(Company.dll)\U_FactoryInput.pas=D:\Dp10Repo\项目代码\鹏华\客户供应商管理(Company.dll)\U_CustInput.pas - 1899/12/30 00:00:00.000.967,D:\Dp10Repo\项目代码\鹏华\客户供应商管理(Company.dll)\U_FactoryInput.dfm=D:\Dp10Repo\项目代码\鹏华\客户供应商管理(Company.dll)\U_CustInput.dfm - 1899/12/30 00:00:00.000.294,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LbaelMapSet.pas - 1899/12/30 00:00:00.000.342,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_AttachmentUpload.pas - 1899/12/30 00:00:00.000.435,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LabelMapSet.pas - 1899/12/30 00:00:00.000.531,=D:\Dp10Repo\public10\ThreeFun\Fun\U_CompressionFun.pas - 1899/12/30 00:00:00.000.333,=D:\Dp10Repo\public10\design\U_BaseHelp.pas - 1899/12/30 00:00:00.000.921,D:\Dp10Repo\项目代码\鹏华\员工管理(StaffManage.dll)\U_CompanySel.pas=D:\Dp10Repo\项目代码\鹏华\客户供应商管理(Company.dll)\U_Company.pas + 1899/12/30 00:00:00.000.967,D:\Dp10Repo\项目代码\鹏华\客户供应商管理(Company.dll)\U_CustInput.pas=D:\Dp10Repo\项目代码\鹏华\客户供应商管理(Company.dll)\U_FactoryInput.pas + 1899/12/30 00:00:00.000.076,D:\Dp10Repo\项目代码\RTBasics\A01基础公司管理\U_ZdyAttachGYS.pas= 1899/12/30 00:00:00.000.525,=D:\Dp10Repo\项目代码\RTBasics\A01基础公司管理\U_BankList.pas 1899/12/30 00:00:00.000.956,=D:\Dp10Repo\项目代码\RTBasics\A01基础公司管理\U_EmployeeList.pas - 1899/12/30 00:00:00.000.076,D:\Dp10Repo\项目代码\RTBasics\A01基础公司管理\U_ZdyAttachGYS.pas= + 1899/12/30 00:00:00.000.592,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LabelPrint.pas + 1899/12/30 00:00:00.000.744,D:\Dp10Repo\项目代码\鹏华\客户供应商管理(Company.dll)\U_Company.dfm=D:\Dp10Repo\项目代码\鹏华\客户供应商管理(Company.dll)\U_Customer.dfm + 1899/12/30 00:00:00.000.921,D:\Dp10Repo\项目代码\鹏华\客户供应商管理(Company.dll)\U_Company.dfm=D:\Dp10Repo\项目代码\鹏华\员工管理(StaffManage.dll)\U_CompanySel.dfm + 1899/12/30 00:00:00.000.033,D:\Dp10Repo\项目代码\瑜量\客户供应商管理(Company.dll)\U_ZDYHelp.pas=D:\Dp10Repo\项目代码\瑜量\客户供应商管理(Company.dll)\U_YGSel.pas + 1899/12/30 00:00:00.000.411,D:\Dp10Repo\项目代码\RTBasics\A01基础公司管理\U_YGSel.pas= + 1899/12/30 00:00:00.000.033,D:\Dp10Repo\项目代码\瑜量\客户供应商管理(Company.dll)\U_ZDYHelp.dfm=D:\Dp10Repo\项目代码\瑜量\客户供应商管理(Company.dll)\U_YGSel.dfm + 1899/12/30 00:00:00.000.342,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_AttachmentUpload.pas + 1899/12/30 00:00:00.000.294,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LbaelMapSet.pas + 1899/12/30 00:00:00.000.531,=D:\Dp10Repo\public10\ThreeFun\Fun\U_CompressionFun.pas + 1899/12/30 00:00:00.000.967,D:\Dp10Repo\项目代码\鹏华\客户供应商管理(Company.dll)\U_CustInput.dfm=D:\Dp10Repo\项目代码\鹏华\客户供应商管理(Company.dll)\U_FactoryInput.dfm + 1899/12/30 00:00:00.000.333,=D:\Dp10Repo\public10\design\U_BaseHelp.pas + 1899/12/30 00:00:00.000.435,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LabelMapSet.pas + 1899/12/30 00:00:00.000.921,D:\Dp10Repo\项目代码\鹏华\客户供应商管理(Company.dll)\U_Company.pas=D:\Dp10Repo\项目代码\鹏华\员工管理(StaffManage.dll)\U_CompanySel.pas + 1899/12/30 00:00:00.000.744,D:\Dp10Repo\项目代码\鹏华\客户供应商管理(Company.dll)\U_Company.pas=D:\Dp10Repo\项目代码\鹏华\客户供应商管理(Company.dll)\U_Customer.pas + 2025/12/26 16:17:37.521,=D:\Dp10Repo\public10\ThreeFun\Fun\uSZHN_JSON.pas @@ -51,6 +52,7 @@ + diff --git a/A01基础公司管理/Company.identcache b/A01基础公司管理/Company.identcache index 043b812..3ade6da 100644 Binary files a/A01基础公司管理/Company.identcache and b/A01基础公司管理/Company.identcache differ diff --git a/A01基础公司管理/Company.res b/A01基础公司管理/Company.res index b3d7ee7..543f942 100644 Binary files a/A01基础公司管理/Company.res and b/A01基础公司管理/Company.res differ diff --git a/A01基础公司管理/Company.skincfg b/A01基础公司管理/Company.skincfg new file mode 100644 index 0000000..c0891d9 --- /dev/null +++ b/A01基础公司管理/Company.skincfg @@ -0,0 +1,5 @@ +[ExpressSkins] +Default=1 +ShowNotifications=1 +Enabled=1 +dxSkinsDefaultPainters=1 diff --git a/A01基础公司管理/U_BankList.dfm b/A01基础公司管理/U_BankList.dfm index 0e9eedf..eacfa2c 100644 --- a/A01基础公司管理/U_BankList.dfm +++ b/A01基础公司管理/U_BankList.dfm @@ -5,6 +5,7 @@ inherited frmBankList: TfrmBankList ClientHeight = 562 ClientWidth = 1183 KeyPreview = True + OnKeyDown = FormKeyDown ExplicitWidth = 1199 ExplicitHeight = 601 PixelsPerInch = 96 @@ -94,6 +95,7 @@ inherited frmBankList: TfrmBankList 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 = <> @@ -126,6 +128,7 @@ inherited frmBankList: TfrmBankList object v2Column1: TcxGridDBColumn Caption = #24207#21495 DataBinding.FieldName = 'SerialNo' + DataBinding.IsNullValueType = True PropertiesClassName = 'TcxTextEditProperties' Properties.OnEditValueChanged = v2Column1PropertiesEditValueChanged HeaderAlignmentHorz = taCenter @@ -134,6 +137,7 @@ inherited frmBankList: TfrmBankList object Tv2Column3: TcxGridDBColumn Caption = #21517#31216 DataBinding.FieldName = 'BankName' + DataBinding.IsNullValueType = True PropertiesClassName = 'TcxTextEditProperties' Properties.OnEditValueChanged = v2Column8PropertiesEditValueChanged HeaderAlignmentHorz = taCenter @@ -142,6 +146,7 @@ inherited frmBankList: TfrmBankList object Tv2Column4: TcxGridDBColumn Caption = #21345#21495 DataBinding.FieldName = 'BankCardNo' + DataBinding.IsNullValueType = True PropertiesClassName = 'TcxTextEditProperties' Properties.OnEditValueChanged = v2Column8PropertiesEditValueChanged HeaderAlignmentHorz = taCenter @@ -150,6 +155,7 @@ inherited frmBankList: TfrmBankList object Tv2Column1: TcxGridDBColumn Caption = #24065#31181 DataBinding.FieldName = 'Currency' + DataBinding.IsNullValueType = True PropertiesClassName = 'TcxComboBoxProperties' Properties.DropDownListStyle = lsFixedList Properties.Items.Strings = ( @@ -163,6 +169,7 @@ inherited frmBankList: TfrmBankList object Tv2Column5: TcxGridDBColumn Caption = #24320#25143#34892 DataBinding.FieldName = 'BankDeposit' + DataBinding.IsNullValueType = True PropertiesClassName = 'TcxTextEditProperties' Properties.OnEditValueChanged = v2Column8PropertiesEditValueChanged HeaderAlignmentHorz = taCenter @@ -171,6 +178,7 @@ inherited frmBankList: TfrmBankList object Tv2Column6: TcxGridDBColumn Caption = #34892#21495 DataBinding.FieldName = 'BankNo' + DataBinding.IsNullValueType = True PropertiesClassName = 'TcxTextEditProperties' Properties.OnEditValueChanged = v2Column8PropertiesEditValueChanged HeaderAlignmentHorz = taCenter diff --git a/A01基础公司管理/U_BankList.pas b/A01基础公司管理/U_BankList.pas index 73534dd..66d817d 100644 --- a/A01基础公司管理/U_BankList.pas +++ b/A01基础公司管理/U_BankList.pas @@ -14,7 +14,8 @@ uses IdTCPClient, IdFTP, ShellAPI, IniFiles, cxCheckBox, cxCalendar, cxButtonEdit, cxTextEdit, cxPC, cxCheckComboBox, cxDropDownEdit, Menus, RM_e_Xls, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, dxSkinsCore, - dxSkinsDefaultPainters, dxDateRanges, dxBarBuiltInMenu, U_BaseList; + dxSkinsDefaultPainters, dxDateRanges, dxBarBuiltInMenu, U_BaseList, + dxScrollbarAnnotations; type TfrmBankList = class(TfrmBaseList) @@ -64,6 +65,7 @@ type procedure btnokClick(Sender: TObject); procedure v2Column1PropertiesEditValueChanged(Sender: TObject); procedure ToolButton1Click(Sender: TObject); + procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); private { Private declarations } procedure InitGrid(); @@ -108,6 +110,16 @@ begin frmBankList := nil; end; +procedure TfrmBankList.FormKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); +begin + if Key = VK_ESCAPE then // VK_ESCAPE ESC ij + begin + Key := 0; // ֹ + Close; // ModalResult := mrCancel; + end; +end; + procedure TfrmBankList.FormClose(Sender: TObject; var Action: TCloseAction); begin inherited; @@ -125,7 +137,7 @@ begin inherited; ReadCxGrid(Trim(Self.Caption), Tv2, ''); InitGrid(); - + KeyPreview := True; // ȷԤ end; procedure TfrmBankList.TBRafreshClick(Sender: TObject); diff --git a/A01基础公司管理/U_Company.dfm b/A01基础公司管理/U_Company.dfm index ec98ae8..2cf7c2f 100644 --- a/A01基础公司管理/U_Company.dfm +++ b/A01基础公司管理/U_Company.dfm @@ -7,6 +7,7 @@ inherited frmCompany: TfrmCompany FormStyle = fsMDIChild Position = poScreenCenter Visible = True + OnKeyDown = FormKeyDown ExplicitWidth = 1382 ExplicitHeight = 650 PixelsPerInch = 96 @@ -105,6 +106,7 @@ inherited frmCompany: TfrmCompany 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 = <> @@ -124,6 +126,7 @@ inherited frmCompany: TfrmCompany object v2Column2: TcxGridDBColumn Caption = #20844#21496#32534#21495 DataBinding.FieldName = 'CoCode' + DataBinding.IsNullValueType = True PropertiesClassName = 'TcxTextEditProperties' HeaderAlignmentHorz = taCenter Width = 86 @@ -131,6 +134,7 @@ inherited frmCompany: TfrmCompany object v2Column6: TcxGridDBColumn Caption = #20844#21496#21517#31216 DataBinding.FieldName = 'CoName' + DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Options.Focusing = False Width = 127 @@ -138,6 +142,7 @@ inherited frmCompany: TfrmCompany object Tv1Column1: TcxGridDBColumn Caption = #20844#21496#31616#31216 DataBinding.FieldName = 'CoAbbrName' + DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Options.Editing = False Width = 151 @@ -145,6 +150,7 @@ inherited frmCompany: TfrmCompany object v2Column10: TcxGridDBColumn Caption = #20844#21496#22320#22336 DataBinding.FieldName = 'CoAddress' + DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Width = 173 end diff --git a/A01基础公司管理/U_Company.pas b/A01基础公司管理/U_Company.pas index 53fa065..ad8d628 100644 --- a/A01基础公司管理/U_Company.pas +++ b/A01基础公司管理/U_Company.pas @@ -14,7 +14,7 @@ uses IdTCPClient, IdFTP, ShellAPI, IniFiles, cxCheckBox, cxCalendar, cxButtonEdit, cxTextEdit, cxDBLookupComboBox, ComObj, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, U_BaseList, dxSkinsCore, dxSkinsDefaultPainters, dxDateRanges, - dxBarBuiltInMenu; + dxBarBuiltInMenu, dxScrollbarAnnotations; type TfrmCompany = class(TfrmBaseList) @@ -56,6 +56,7 @@ type procedure btnFindClick(Sender: TObject); procedure ToolButton2Click(Sender: TObject); procedure ToolButton5Click(Sender: TObject); + procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); private fFlileFlag: string; { Private declarations } @@ -105,6 +106,16 @@ begin // frmCustomer:=nil; end; +procedure TfrmCompany.FormKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); +begin + if Key = VK_ESCAPE then // VK_ESCAPE ESC ij + begin + Key := 0; // ֹ + Close; // ModalResult := mrCancel; + end; +end; + procedure TfrmCompany.FormClose(Sender: TObject; var Action: TCloseAction); begin inherited; @@ -143,6 +154,7 @@ begin inherited; ReadCxGrid(trim(self.Caption), Tv1, 'ͻ'); InitGrid(); + KeyPreview := True; // ȷԤ end; procedure TfrmCompany.TBRafreshClick(Sender: TObject); diff --git a/A01基础公司管理/U_Customer.dfm b/A01基础公司管理/U_Customer.dfm index edd3fc7..fe72e30 100644 --- a/A01基础公司管理/U_Customer.dfm +++ b/A01基础公司管理/U_Customer.dfm @@ -7,6 +7,7 @@ inherited frmCustomer: TfrmCustomer FormStyle = fsMDIChild Position = poScreenCenter Visible = True + OnKeyDown = FormKeyDown ExplicitWidth = 1382 ExplicitHeight = 650 PixelsPerInch = 96 @@ -217,6 +218,7 @@ inherited frmCustomer: TfrmCustomer Navigator.Buttons.CustomButtons = <> Navigator.Buttons.Delete.Enabled = False Navigator.Buttons.Delete.Visible = False + ScrollbarAnnotations.CustomAnnotations = <> OnFocusedRecordChanged = Tv1FocusedRecordChanged DataController.DataSource = DS_1 DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] @@ -245,6 +247,7 @@ inherited frmCustomer: TfrmCustomer object Tv1Column1: TcxGridDBColumn Caption = #36873#25321 DataBinding.FieldName = 'SSel' + DataBinding.IsNullValueType = True PropertiesClassName = 'TcxCheckBoxProperties' Properties.ImmediatePost = True HeaderAlignmentHorz = taCenter @@ -253,6 +256,7 @@ inherited frmCustomer: TfrmCustomer object v2Column2: TcxGridDBColumn Caption = #23458#25143#32534#21495 DataBinding.FieldName = 'CoCode' + DataBinding.IsNullValueType = True PropertiesClassName = 'TcxTextEditProperties' HeaderAlignmentHorz = taCenter Options.Editing = False @@ -261,6 +265,7 @@ inherited frmCustomer: TfrmCustomer object v2Column6: TcxGridDBColumn Caption = #23458#25143#20840#31216 DataBinding.FieldName = 'CoName' + DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Options.Editing = False Options.Focusing = False @@ -269,6 +274,7 @@ inherited frmCustomer: TfrmCustomer object v2Column15: TcxGridDBColumn Caption = #23458#25143#31616#31216 DataBinding.FieldName = 'CoAbbrName' + DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Options.Editing = False Width = 100 @@ -276,6 +282,7 @@ inherited frmCustomer: TfrmCustomer object v2Column10: TcxGridDBColumn Caption = #19994#21153#21592 DataBinding.FieldName = 'Saleser' + DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Options.Editing = False Width = 84 @@ -283,6 +290,7 @@ inherited frmCustomer: TfrmCustomer object v2Column7: TcxGridDBColumn Caption = #20844#21496#22320#22336 DataBinding.FieldName = 'CoAddress' + DataBinding.IsNullValueType = True PropertiesClassName = 'TcxTextEditProperties' HeaderAlignmentHorz = taCenter Options.Editing = False @@ -291,6 +299,7 @@ inherited frmCustomer: TfrmCustomer object v2Column1: TcxGridDBColumn Caption = #22791#27880 DataBinding.FieldName = 'Note' + DataBinding.IsNullValueType = True PropertiesClassName = 'TcxTextEditProperties' HeaderAlignmentHorz = taCenter Options.Editing = False @@ -299,6 +308,7 @@ inherited frmCustomer: TfrmCustomer object v2Column3: TcxGridDBColumn Caption = #22269#23478 DataBinding.FieldName = 'cocountry' + DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Options.Editing = False Width = 99 @@ -306,6 +316,7 @@ inherited frmCustomer: TfrmCustomer object Tv1Column2: TcxGridDBColumn Caption = #23458#25143#31561#32423 DataBinding.FieldName = 'CoLevel' + DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Options.Editing = False Width = 66 @@ -313,6 +324,7 @@ inherited frmCustomer: TfrmCustomer object Tv1Column3: TcxGridDBColumn Caption = #30331#35760#26102#38388 DataBinding.FieldName = 'Filltime' + DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Options.Editing = False Width = 66 @@ -320,6 +332,7 @@ inherited frmCustomer: TfrmCustomer object Tv1Column4: TcxGridDBColumn Caption = #30331#35760#20154 DataBinding.FieldName = 'Filler' + DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Options.Editing = False Width = 66 @@ -327,6 +340,7 @@ inherited frmCustomer: TfrmCustomer object Tv1Column5: TcxGridDBColumn Caption = #29702#21333 DataBinding.FieldName = 'Tallyer' + DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Options.Editing = False Width = 99 @@ -334,6 +348,7 @@ inherited frmCustomer: TfrmCustomer object Tv1Column7: TcxGridDBColumn Caption = #19978#32423#21333#20301 DataBinding.FieldName = 'ParentCoName' + DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Options.Editing = False Width = 86 @@ -341,6 +356,7 @@ inherited frmCustomer: TfrmCustomer object Tv1Column6: TcxGridDBColumn Caption = #23458#25143#31867#22411 DataBinding.FieldName = 'KHType' + DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Options.Editing = False Width = 66 @@ -369,6 +385,7 @@ inherited frmCustomer: TfrmCustomer Navigator.Buttons.CustomButtons = <> Navigator.Buttons.Delete.Enabled = False Navigator.Buttons.Delete.Visible = False + ScrollbarAnnotations.CustomAnnotations = <> DataController.DataSource = DS_2 DataController.Summary.DefaultGroupSummaryItems = <> DataController.Summary.FooterSummaryItems = < @@ -391,6 +408,7 @@ inherited frmCustomer: TfrmCustomer object v3Column3: TcxGridDBColumn Caption = #40664#35748 DataBinding.FieldName = 'IsDefault' + DataBinding.IsNullValueType = True PropertiesClassName = 'TcxCheckBoxProperties' HeaderAlignmentHorz = taCenter Options.Editing = False @@ -399,6 +417,7 @@ inherited frmCustomer: TfrmCustomer object cxGridDBColumn1: TcxGridDBColumn Caption = #32852#31995#20154 DataBinding.FieldName = 'Contacts' + DataBinding.IsNullValueType = True PropertiesClassName = 'TcxTextEditProperties' Properties.CharCase = ecUpperCase HeaderAlignmentHorz = taCenter @@ -407,6 +426,7 @@ inherited frmCustomer: TfrmCustomer object cxGridDBColumn2: TcxGridDBColumn Caption = #32844#20301 DataBinding.FieldName = 'position' + DataBinding.IsNullValueType = True PropertiesClassName = 'TcxTextEditProperties' Properties.CharCase = ecUpperCase HeaderAlignmentHorz = taCenter @@ -415,6 +435,7 @@ inherited frmCustomer: TfrmCustomer object cxGridDBColumn4: TcxGridDBColumn Caption = #32852#31995#30005#35805 DataBinding.FieldName = 'Telephone' + DataBinding.IsNullValueType = True PropertiesClassName = 'TcxTextEditProperties' Properties.CharCase = ecUpperCase HeaderAlignmentHorz = taCenter @@ -423,6 +444,7 @@ inherited frmCustomer: TfrmCustomer object cxGridDBColumn5: TcxGridDBColumn Caption = #25163#26426#21495 DataBinding.FieldName = 'PhoneNumber' + DataBinding.IsNullValueType = True PropertiesClassName = 'TcxTextEditProperties' Properties.CharCase = ecUpperCase HeaderAlignmentHorz = taCenter @@ -431,6 +453,7 @@ inherited frmCustomer: TfrmCustomer object Tv2Column1: TcxGridDBColumn Caption = 'EMAIL' DataBinding.FieldName = 'Email' + DataBinding.IsNullValueType = True PropertiesClassName = 'TcxTextEditProperties' Properties.CharCase = ecUpperCase HeaderAlignmentHorz = taCenter @@ -439,6 +462,7 @@ inherited frmCustomer: TfrmCustomer object v3Column2: TcxGridDBColumn Caption = #24494#20449#21495 DataBinding.FieldName = 'WeChat' + DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Width = 169 end diff --git a/A01基础公司管理/U_Customer.pas b/A01基础公司管理/U_Customer.pas index 05f27cd..c08f31f 100644 --- a/A01基础公司管理/U_Customer.pas +++ b/A01基础公司管理/U_Customer.pas @@ -14,7 +14,7 @@ uses IdTCPClient, IdFTP, ShellAPI, IniFiles, cxCheckBox, cxCalendar, cxButtonEdit, cxTextEdit, cxDBLookupComboBox, ComObj, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, U_BaseList, dxSkinsCore, dxSkinsDefaultPainters, dxDateRanges, - dxBarBuiltInMenu, cxPC; + dxBarBuiltInMenu, cxPC, dxScrollbarAnnotations; type TfrmCustomer = class(TfrmBaseList) @@ -100,6 +100,7 @@ type procedure ToolButton1Click(Sender: TObject); procedure ToolButton3Click(Sender: TObject); procedure CoCodeChange(Sender: TObject); + procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); private fFlileFlag: string; { Private declarations } @@ -233,6 +234,16 @@ begin frmCustomer := nil; end; +procedure TfrmCustomer.FormKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); +begin + if Key = VK_ESCAPE then // VK_ESCAPE ESC ij + begin + Key := 0; // ֹ + Close; // ModalResult := mrCancel; + end; +end; + procedure TfrmCustomer.FormClose(Sender: TObject; var Action: TCloseAction); begin inherited; @@ -282,6 +293,7 @@ begin ReadCxGrid(trim(self.caption) + 'Tv2', Tv2, 'ͻ'); SetStatus(); InitGrid(); + KeyPreview := True; // ȷԤ end; procedure TfrmCustomer.TBRafreshClick(Sender: TObject); diff --git a/A01基础公司管理/U_EmployeeList.dfm b/A01基础公司管理/U_EmployeeList.dfm index f7ec956..0b261bf 100644 --- a/A01基础公司管理/U_EmployeeList.dfm +++ b/A01基础公司管理/U_EmployeeList.dfm @@ -3,6 +3,7 @@ inherited frmEmployeeList: TfrmEmployeeList Caption = #21592#24037#26723#26696#21015#34920 ClientHeight = 509 ClientWidth = 1432 + OnKeyDown = FormKeyDown ExplicitWidth = 1448 ExplicitHeight = 548 PixelsPerInch = 96 @@ -292,6 +293,7 @@ inherited frmEmployeeList: TfrmEmployeeList OptionsView.CellAutoHeight = True OptionsView.Headers = False RootValue = -1 + ScrollbarAnnotations.CustomAnnotations = <> Styles.Inactive = DataLink_Company.Red Styles.Selection = DataLink_Company.Red Styles.IncSearch = DataLink_Company.Red @@ -359,6 +361,7 @@ inherited frmEmployeeList: TfrmEmployeeList TabOrder = 1 object Tv1: TcxGridDBTableView Navigator.Buttons.CustomButtons = <> + ScrollbarAnnotations.CustomAnnotations = <> DataController.DataSource = DataSource1 DataController.Filter.AutoDataSetFilter = True DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] @@ -372,6 +375,7 @@ inherited frmEmployeeList: TfrmEmployeeList object v1Column4: TcxGridDBColumn Caption = #36873#25321 DataBinding.FieldName = 'SSel' + DataBinding.IsNullValueType = True PropertiesClassName = 'TcxCheckBoxProperties' Properties.ImmediatePost = True HeaderAlignmentHorz = taCenter @@ -380,6 +384,7 @@ inherited frmEmployeeList: TfrmEmployeeList object v1RuZhiDate: TcxGridDBColumn Caption = #20837#32844#26085#26399 DataBinding.FieldName = 'EntryDate' + DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Options.Editing = False Width = 84 @@ -387,6 +392,7 @@ inherited frmEmployeeList: TfrmEmployeeList object v1YGNo: TcxGridDBColumn Caption = #32534#21495 DataBinding.FieldName = 'EECode' + DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Options.Editing = False Width = 70 @@ -394,6 +400,7 @@ inherited frmEmployeeList: TfrmEmployeeList object v1YGName: TcxGridDBColumn Caption = #22995#21517 DataBinding.FieldName = 'EEName' + DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Options.Editing = False Width = 88 @@ -401,6 +408,7 @@ inherited frmEmployeeList: TfrmEmployeeList object v1Column1: TcxGridDBColumn Caption = #37096#38376 DataBinding.FieldName = 'Dept' + DataBinding.IsNullValueType = True PropertiesClassName = 'TcxButtonEditProperties' Properties.Buttons = < item @@ -414,6 +422,7 @@ inherited frmEmployeeList: TfrmEmployeeList object v1Column2: TcxGridDBColumn Caption = #23703#20301 DataBinding.FieldName = 'Post' + DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Options.Editing = False Width = 82 @@ -421,6 +430,7 @@ inherited frmEmployeeList: TfrmEmployeeList object v1Column8: TcxGridDBColumn Caption = #31867#21035 DataBinding.FieldName = 'EEType' + DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Options.Editing = False Width = 78 @@ -428,6 +438,7 @@ inherited frmEmployeeList: TfrmEmployeeList object v1SFZNo: TcxGridDBColumn Caption = #36523#20221#35777#21495 DataBinding.FieldName = 'IdCard' + DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Options.Editing = False Width = 70 @@ -435,6 +446,7 @@ inherited frmEmployeeList: TfrmEmployeeList object v1Column6: TcxGridDBColumn Caption = #24615#21035 DataBinding.FieldName = 'Sex' + DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Options.Editing = False Width = 85 @@ -442,6 +454,7 @@ inherited frmEmployeeList: TfrmEmployeeList object v1Column29: TcxGridDBColumn Caption = #25163#26426 DataBinding.FieldName = 'Phone' + DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Options.Editing = False Width = 91 @@ -449,6 +462,7 @@ inherited frmEmployeeList: TfrmEmployeeList object v1SJLiZhiDate: TcxGridDBColumn Caption = #31163#32844#26085#26399 DataBinding.FieldName = 'SJLiZhiDate' + DataBinding.IsNullValueType = True PropertiesClassName = 'TcxDateEditProperties' Properties.SaveTime = False Properties.ShowTime = False @@ -460,12 +474,14 @@ inherited frmEmployeeList: TfrmEmployeeList object Tv1Column1: TcxGridDBColumn Caption = #31163#32844#26102#38388 DataBinding.FieldName = 'DepartureDate' + DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Width = 69 end object Tv1Column2: TcxGridDBColumn Caption = #36523#20221#35777#21040#26399#26085#26399 DataBinding.FieldName = 'IDCardEndData' + DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Options.Editing = False Width = 126 @@ -473,6 +489,7 @@ inherited frmEmployeeList: TfrmEmployeeList object Tv1Column3: TcxGridDBColumn Caption = #23478#24237#20303#22336 DataBinding.FieldName = 'HomeAddress' + DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Options.Editing = False Width = 77 @@ -480,12 +497,14 @@ inherited frmEmployeeList: TfrmEmployeeList object Tv1Column4: TcxGridDBColumn Caption = #32534#21495 DataBinding.FieldName = 'eeno' + DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Width = 70 end object Tv1Column5: TcxGridDBColumn Caption = #21047#21345#24037#24207 DataBinding.FieldName = 'glidename' + DataBinding.IsNullValueType = True PropertiesClassName = 'TcxTextEditProperties' HeaderAlignmentHorz = taCenter Width = 70 diff --git a/A01基础公司管理/U_EmployeeList.pas b/A01基础公司管理/U_EmployeeList.pas index 235c471..db80626 100644 --- a/A01基础公司管理/U_EmployeeList.pas +++ b/A01基础公司管理/U_EmployeeList.pas @@ -13,7 +13,7 @@ uses cxDropDownEdit, cxPC, cxTL, cxMaskEdit, cxInplaceContainer, cxDBTL, cxTLData, cxLookAndFeels, cxLookAndFeelPainters, cxTLdxBarBuiltInMenu, dxBarBuiltInMenu, cxNavigator, U_BaseList, dxSkinsCore, dxSkinsDefaultPainters, dxDateRanges, - cxTextEdit; + cxTextEdit, dxScrollbarAnnotations; type TfrmEmployeeList = class(TfrmBaseList) @@ -110,6 +110,7 @@ type procedure TCXLZClick(Sender: TObject); procedure ToolButton1Click(Sender: TObject); procedure ToolButton2Click(Sender: TObject); + procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); private canshu1: string; DQdate: TDateTime; @@ -141,6 +142,16 @@ begin frmEmployeeList := nil; end; +procedure TfrmEmployeeList.FormKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); +begin + if Key = VK_ESCAPE then // VK_ESCAPE ESC ij + begin + Key := 0; // ֹ + Close; // ModalResult := mrCancel; + end; +end; + procedure TfrmEmployeeList.FormClose(Sender: TObject; var Action: TCloseAction); begin inherited; @@ -375,6 +386,8 @@ begin if cxTabControl1.TabIndex <> 0 then v1SJLiZhiDate.Visible := true; InitForm(); + + KeyPreview := True; // ȷԤ end; procedure TfrmEmployeeList.CheckBox1Click(Sender: TObject); diff --git a/A01基础公司管理/U_Factory.dfm b/A01基础公司管理/U_Factory.dfm index e24c5d9..88dc8a1 100644 --- a/A01基础公司管理/U_Factory.dfm +++ b/A01基础公司管理/U_Factory.dfm @@ -7,6 +7,7 @@ inherited frmFactory: TfrmFactory FormStyle = fsMDIChild Position = poScreenCenter Visible = True + OnKeyDown = FormKeyDown ExplicitWidth = 1382 ExplicitHeight = 840 PixelsPerInch = 96 @@ -209,6 +210,7 @@ inherited frmFactory: TfrmFactory Navigator.Buttons.CustomButtons = <> Navigator.Buttons.Delete.Enabled = False Navigator.Buttons.Delete.Visible = False + ScrollbarAnnotations.CustomAnnotations = <> OnFocusedRecordChanged = Tv1FocusedRecordChanged DataController.DataSource = DS_1 DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] @@ -235,6 +237,7 @@ inherited frmFactory: TfrmFactory object v2Column5: TcxGridDBColumn Caption = #36873#25321 DataBinding.FieldName = 'SSel' + DataBinding.IsNullValueType = True PropertiesClassName = 'TcxCheckBoxProperties' Properties.ImmediatePost = True HeaderAlignmentHorz = taCenter @@ -243,6 +246,7 @@ inherited frmFactory: TfrmFactory object v2Column2: TcxGridDBColumn Caption = #20379#24212#21830#32534#21495 DataBinding.FieldName = 'CoCode' + DataBinding.IsNullValueType = True PropertiesClassName = 'TcxTextEditProperties' HeaderAlignmentHorz = taCenter Options.Editing = False @@ -251,6 +255,7 @@ inherited frmFactory: TfrmFactory object v2Column6: TcxGridDBColumn Caption = #20379#24212#21830#20840#31216 DataBinding.FieldName = 'CoName' + DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Options.Editing = False Width = 127 @@ -258,6 +263,7 @@ inherited frmFactory: TfrmFactory object v2Column15: TcxGridDBColumn Caption = #20379#24212#21830#31616#31216 DataBinding.FieldName = 'CoAbbrName' + DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Options.Editing = False Width = 100 @@ -265,6 +271,7 @@ inherited frmFactory: TfrmFactory object v2Column3: TcxGridDBColumn Caption = #20379#24212#21830#31867#22411 DataBinding.FieldName = 'CoBusinessType' + DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Options.Editing = False Width = 74 @@ -272,6 +279,7 @@ inherited frmFactory: TfrmFactory object v2Column1: TcxGridDBColumn Caption = #22791#27880 DataBinding.FieldName = 'CONote' + DataBinding.IsNullValueType = True PropertiesClassName = 'TcxTextEditProperties' HeaderAlignmentHorz = taCenter Options.Editing = False @@ -280,6 +288,7 @@ inherited frmFactory: TfrmFactory object v2Column12: TcxGridDBColumn Caption = #25805#20316#21592 DataBinding.FieldName = 'Filler' + DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Options.Editing = False Width = 60 @@ -287,6 +296,7 @@ inherited frmFactory: TfrmFactory object v2Column4: TcxGridDBColumn Caption = #36319#21333#21592 DataBinding.FieldName = 'Follower' + DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Options.Editing = False Width = 78 @@ -294,6 +304,7 @@ inherited frmFactory: TfrmFactory object Tv1Column1: TcxGridDBColumn Caption = #19978#32423#21333#20301 DataBinding.FieldName = 'ParentCoName' + DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Options.Editing = False Width = 108 @@ -322,6 +333,7 @@ inherited frmFactory: TfrmFactory Navigator.Buttons.CustomButtons = <> Navigator.Buttons.Delete.Enabled = False Navigator.Buttons.Delete.Visible = False + ScrollbarAnnotations.CustomAnnotations = <> DataController.DataSource = DS_2 DataController.Summary.DefaultGroupSummaryItems = <> DataController.Summary.FooterSummaryItems = < @@ -345,6 +357,7 @@ inherited frmFactory: TfrmFactory object v3Column3: TcxGridDBColumn Caption = #40664#35748 DataBinding.FieldName = 'IsDefault' + DataBinding.IsNullValueType = True PropertiesClassName = 'TcxCheckBoxProperties' HeaderAlignmentHorz = taCenter Options.Editing = False @@ -353,6 +366,7 @@ inherited frmFactory: TfrmFactory object Tv2Column1: TcxGridDBColumn Caption = #32852#31995#20154 DataBinding.FieldName = 'Contacts' + DataBinding.IsNullValueType = True PropertiesClassName = 'TcxTextEditProperties' Properties.CharCase = ecUpperCase HeaderAlignmentHorz = taCenter @@ -361,6 +375,7 @@ inherited frmFactory: TfrmFactory object Tv2Column2: TcxGridDBColumn Caption = #32852#31995#30005#35805 DataBinding.FieldName = 'bossphone' + DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Options.Editing = False Width = 96 @@ -368,6 +383,7 @@ inherited frmFactory: TfrmFactory object cxGridDBColumn1: TcxGridDBColumn Caption = #25163#26426#21495 DataBinding.FieldName = 'PhoneNumber' + DataBinding.IsNullValueType = True PropertiesClassName = 'TcxTextEditProperties' Properties.CharCase = ecUpperCase HeaderAlignmentHorz = taCenter @@ -376,6 +392,7 @@ inherited frmFactory: TfrmFactory object Tv2Column3: TcxGridDBColumn Caption = #22791#27880 DataBinding.FieldName = 'note' + DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Options.Editing = False Width = 120 diff --git a/A01基础公司管理/U_Factory.pas b/A01基础公司管理/U_Factory.pas index ad90530..126803b 100644 --- a/A01基础公司管理/U_Factory.pas +++ b/A01基础公司管理/U_Factory.pas @@ -14,7 +14,7 @@ uses IdTCPClient, IdFTP, ShellAPI, IniFiles, cxCheckBox, cxCalendar, cxButtonEdit, cxTextEdit, cxDBLookupComboBox, ComObj, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, dxSkinsCore, dxSkinsDefaultPainters, dxDateRanges, - dxBarBuiltInMenu, U_BaseList, cxPC; + dxBarBuiltInMenu, U_BaseList, cxPC, dxScrollbarAnnotations; type TfrmFactory = class(TFrmBaseList) @@ -92,6 +92,7 @@ type procedure ToolButton1Click(Sender: TObject); procedure ToolButton8Click(Sender: TObject); procedure CoCodeChange(Sender: TObject); + procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); private { Private declarations } procedure InitGrid(); @@ -215,6 +216,16 @@ begin frmFactory := nil; end; +procedure TfrmFactory.FormKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); +begin + if Key = VK_ESCAPE then // VK_ESCAPE ESC ij + begin + Key := 0; // ֹ + Close; // ModalResult := mrCancel; + end; +end; + procedure TfrmFactory.FactTypeChange(Sender: TObject); begin InitGrid(); @@ -270,7 +281,7 @@ begin SetStatus(); InitGrid(); - + KeyPreview := True; // ȷԤ end; procedure TfrmFactory.TBRafreshClick(Sender: TObject); diff --git a/A01基础公司管理/U_GetDllForm.pas b/A01基础公司管理/U_GetDllForm.pas index 31fa015..69fc1a9 100644 --- a/A01基础公司管理/U_GetDllForm.pas +++ b/A01基础公司管理/U_GetDllForm.pas @@ -71,11 +71,11 @@ begin if trim(DataBaseStr) = '' then begin - server := '121.40.233.100,7781'; - pswd := 'rightsoft@123'; + server := '112.14.44.145'; + dtbase := 'yilanbuyidata'; + user := 'yilansa'; + pswd := 'yilanbuyi@123'; - dtbase := 'hengyisxdata'; - user := 'sa'; DConString := 'Provider=SQLOLEDB.1;Password=' + pswd + ';Persist Security Info=True;User ID=' + user + ';Initial Catalog=' + dtbase + ';Data Source=' + server; // Parameters1 := '¼'; Parameters1 := ''; diff --git a/A01基础公司管理/U_ModulePromptList.dfm b/A01基础公司管理/U_ModulePromptList.dfm index 9656bb9..63ba250 100644 --- a/A01基础公司管理/U_ModulePromptList.dfm +++ b/A01基础公司管理/U_ModulePromptList.dfm @@ -4,6 +4,7 @@ inherited frmModulePromptList: TfrmModulePromptList Caption = #25105#30340#31649#23478 ClientHeight = 508 ClientWidth = 1321 + OnKeyDown = FormKeyDown ExplicitWidth = 1337 ExplicitHeight = 547 PixelsPerInch = 96 @@ -82,9 +83,9 @@ inherited frmModulePromptList: TfrmModulePromptList Height = 429 Align = alClient TabOrder = 2 - ExplicitTop = 83 object Tv1: TcxGridDBTableView Navigator.Buttons.CustomButtons = <> + ScrollbarAnnotations.CustomAnnotations = <> OnCellDblClick = Tv1CellDblClick DataController.DataSource = DataSource1 DataController.Summary.DefaultGroupSummaryItems = <> @@ -118,12 +119,14 @@ inherited frmModulePromptList: TfrmModulePromptList object v1Column5: TcxGridDBColumn Caption = #24453#22788#29702#20107#39033 DataBinding.FieldName = 'ModuleName' + DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Width = 235 end object v1Column1: TcxGridDBColumn Caption = #22788#29702#20154 DataBinding.FieldName = 'DName' + DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Width = 107 end diff --git a/A01基础公司管理/U_ModulePromptList.pas b/A01基础公司管理/U_ModulePromptList.pas index 7553246..bb0a8d3 100644 --- a/A01基础公司管理/U_ModulePromptList.pas +++ b/A01基础公司管理/U_ModulePromptList.pas @@ -11,7 +11,8 @@ uses cxGrid, DBClient, cxCalendar, cxButtonEdit, cxSplitter, RM_Common, RM_Class, RM_e_Xls, RM_Dataset, RM_System, RM_GridReport, cxTextEdit, cxPC, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, dxSkinsCore, - dxSkinsDefaultPainters, dxDateRanges, dxBarBuiltInMenu, U_BaseList; + dxSkinsDefaultPainters, dxDateRanges, dxBarBuiltInMenu, U_BaseList, + dxScrollbarAnnotations; type TfrmModulePromptList = class(TfrmBaseList) @@ -39,6 +40,7 @@ type procedure FormShow(Sender: TObject); procedure cxPageControl1Change(Sender: TObject); procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); + procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); private fDConString_link1: string; procedure InitGrid(); @@ -79,6 +81,16 @@ begin frmModulePromptList := nil; end; +procedure TfrmModulePromptList.FormKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); +begin + if Key = VK_ESCAPE then // VK_ESCAPE ESC ij + begin + Key := 0; // ֹ + Close; // ModalResult := mrCancel; + end; +end; + procedure TfrmModulePromptList.FormClose(Sender: TObject; var Action: TCloseAction); begin inherited; @@ -131,6 +143,7 @@ procedure TfrmModulePromptList.FormShow(Sender: TObject); begin inherited; InitForm(); + KeyPreview := True; // ȷԤ end; procedure TfrmModulePromptList.cxPageControl1Change(Sender: TObject); diff --git a/A01基础公司管理/U_SYDept.dfm b/A01基础公司管理/U_SYDept.dfm index 2fef684..7cb64c3 100644 --- a/A01基础公司管理/U_SYDept.dfm +++ b/A01基础公司管理/U_SYDept.dfm @@ -4,6 +4,7 @@ inherited frmSYDept: TfrmSYDept Caption = #32452#32455#32467#26500 ClientHeight = 470 ClientWidth = 988 + OnKeyDown = FormKeyDown ExplicitWidth = 1004 ExplicitHeight = 509 PixelsPerInch = 96 @@ -92,13 +93,12 @@ inherited frmSYDept: TfrmSYDept OptionsView.CellAutoHeight = True OptionsView.Headers = False RootValue = -1 + ScrollbarAnnotations.CustomAnnotations = <> Styles.Inactive = DataLink_Company.Red Styles.Selection = DataLink_Company.Red Styles.IncSearch = DataLink_Company.Red TabOrder = 1 OnClick = cxDBTreeList1Click - ExplicitTop = 18 - ExplicitHeight = 452 object cxDBTreeList1cxDBTreeListColumn2: TcxDBTreeListColumn DataBinding.FieldName = 'DPName' Width = 210 @@ -119,9 +119,6 @@ inherited frmSYDept: TfrmSYDept BevelOuter = bvLowered Color = clSkyBlue TabOrder = 2 - ExplicitTop = 18 - ExplicitWidth = 379 - ExplicitHeight = 452 object Label1: TLabel Left = 41 Top = 40 diff --git a/A01基础公司管理/U_SYDept.pas b/A01基础公司管理/U_SYDept.pas index 43d9250..28fb450 100644 --- a/A01基础公司管理/U_SYDept.pas +++ b/A01基础公司管理/U_SYDept.pas @@ -10,7 +10,7 @@ uses cxGridLevel, cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses, cxGridCustomView, cxGrid, cxTextEdit, cxLookAndFeels, cxLookAndFeelPainters, cxTLdxBarBuiltInMenu, cxNavigator, U_BaseList, - dxSkinsCore, dxSkinsDefaultPainters, dxDateRanges; + dxSkinsCore, dxSkinsDefaultPainters, dxDateRanges, dxScrollbarAnnotations; type TfrmSYDept = class(TfrmBaseList) @@ -48,6 +48,7 @@ type procedure TBDelClick(Sender: TObject); procedure DPNameKeyPress(Sender: TObject; var Key: Char); procedure FormShow(Sender: TObject); + procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); private { Private declarations } PState: Integer; @@ -96,6 +97,16 @@ begin frmSYDept := nil; end; +procedure TfrmSYDept.FormKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); +begin + if Key = VK_ESCAPE then // VK_ESCAPE ESC ij + begin + Key := 0; // ֹ + Close; // ModalResult := mrCancel; + end; +end; + procedure TfrmSYDept.FormClose(Sender: TObject; var Action: TCloseAction); begin inherited; @@ -270,6 +281,7 @@ procedure TfrmSYDept.FormShow(Sender: TObject); begin inherited; InitTree(); + KeyPreview := True; // ȷԤ end; end. diff --git a/A01基础公司管理/testDll.res b/A01基础公司管理/testDll.res index 2465ca0..e116c48 100644 Binary files a/A01基础公司管理/testDll.res and b/A01基础公司管理/testDll.res differ diff --git a/A02基础产品管理/ClothInfo.dproj.local b/A02基础产品管理/ClothInfo.dproj.local index b51ec98..5ed05e3 100644 --- a/A02基础产品管理/ClothInfo.dproj.local +++ b/A02基础产品管理/ClothInfo.dproj.local @@ -22,14 +22,14 @@ 1899/12/30 00:00:00.000.939,=D:\Dp10Repo\public10\design\U_BaseInput.pas 1899/12/30 00:00:00.000.290,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_ClothInfoSel.dfm=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_TatClothInfoSel.dfm 1899/12/30 00:00:00.000.305,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_ClothInfoSel.dfm=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_KnitClothInfoSel.dfm - 1899/12/30 00:00:00.000.187,D:\Dp10Repo\项目代码\RTBasics\A00通用模板\Unit1.pas= 1899/12/30 00:00:00.000.493,=D:\Dp10Repo\项目代码\RTBasics\A00通用模板\Unit1.pas + 1899/12/30 00:00:00.000.187,D:\Dp10Repo\项目代码\RTBasics\A00通用模板\Unit1.pas= 1899/12/30 00:00:00.000.431,D:\Dp10Repo\项目代码\RTBasics\A02基础产品管理\U_ClothInfo.pas=D:\Dp10Repo\项目代码\RTBasics\A02基础产品管理\U_ClothInfo_Tat.pas 1899/12/30 00:00:00.000.228,=D:\Dp10Repo\项目代码\RTBasics\A02基础产品管理\U_ClothInfo.pas - 1899/12/30 00:00:00.000.086,=D:\Dp10Repo\public10\design\U_cxGridCustomCss.pas + 1899/12/30 00:00:00.000.123,=D:\Dp10Repo\public10\design\U_globalVar.pas 1899/12/30 00:00:00.000.736,D:\Dp10Repo\项目代码\睿特\新DLL初始化(CSH.dll)\U_ModuleNote.pas= 1899/12/30 00:00:00.000.178,=D:\Dp10Repo\public10\design\U_WindowFormdesign.pas - 1899/12/30 00:00:00.000.123,=D:\Dp10Repo\public10\design\U_globalVar.pas + 1899/12/30 00:00:00.000.086,=D:\Dp10Repo\public10\design\U_cxGridCustomCss.pas 1899/12/30 00:00:00.000.217,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LabelMapSet.pas 1899/12/30 00:00:00.000.616,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LablePrint.dfm=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.dfm 1899/12/30 00:00:00.000.936,=D:\Dp10Repo\项目代码\D10sxYilanbuyi\A02基础产品管理\U_ClothInfoInput.pas diff --git a/A02基础产品管理/U_ClothInfo.pas b/A02基础产品管理/U_ClothInfo.pas index c471f54..43d4d3e 100644 --- a/A02基础产品管理/U_ClothInfo.pas +++ b/A02基础产品管理/U_ClothInfo.pas @@ -322,11 +322,20 @@ begin MBCIID := Trim(CDS_1.FieldByName('BCIID').AsString) else MBCIID := ''; - Pwhere := SGetFilters(Panel1, 1, 2); if cxTabControl1.TabIndex < 2 then - Pwhere := 'isnull(status,''0'')=''' + inttostr(cxTabControl1.TabIndex) + ''' '; + begin + if Pwhere <> '' then + begin + Pwhere := Pwhere + ' and isnull(status,''0'')=''' + inttostr(cxTabControl1.TabIndex) + ''' '; + end + else + begin + Pwhere := 'isnull(status,''0'')=''' + inttostr(cxTabControl1.TabIndex) + ''' '; + end; + end; + if trim(C_NameGY.Text) <> '' then begin diff --git a/A02基础产品管理/U_ClothInfoInput.pas b/A02基础产品管理/U_ClothInfoInput.pas index 14a096a..bcbc0aa 100644 --- a/A02基础产品管理/U_ClothInfoInput.pas +++ b/A02基础产品管理/U_ClothInfoInput.pas @@ -1144,6 +1144,7 @@ begin FieldByName('EditId').Value := Trim(DCode); FieldByName('EDITER').Value := Trim(DName); FieldByName('EDITTIME').Value := SGetServerDateTime(ADOQueryTemp); + end else begin @@ -1693,6 +1694,35 @@ begin // C_Code.Text := MC_Code; // // end; + if (CopyInt = 0) or (CopyInt = 2) then // + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add(' select * from BS_Cloth_Info where C_Name = ' + QuotedStr(Trim(C_Name.Text))); + Open; + end; + end + else if CopyInt = 3 then //޸ + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add(' select * from BS_Cloth_Info where C_Name = ' + QuotedStr(Trim(C_Name.Text))); + sql.Add(' and BCIID <> ' + QuotedStr(Trim(FBCIID))); + Open; + end; + end; + + if not ADOQueryCmd.IsEmpty then + begin + Application.MessageBox('Ʒظ','ʾϢ',MB_OK); + exit; + end; + + if SaveData() then begin diff --git a/A02基础产品管理/U_ClothType.dfm b/A02基础产品管理/U_ClothType.dfm index 3a49a83..ae53b4a 100644 --- a/A02基础产品管理/U_ClothType.dfm +++ b/A02基础产品管理/U_ClothType.dfm @@ -93,6 +93,7 @@ inherited frmClothType: TfrmClothType Styles.IncSearch = DataLink_ClothInfo.FoneRed TabOrder = 1 OnClick = cxDBTreeList1Click + ExplicitLeft = -6 object cxDBTreeList1cxDBTreeListColumn2: TcxDBTreeListColumn DataBinding.FieldName = 'CTName' Width = 210 diff --git a/A05基础资料管理/BaseInfo.dpr b/A05基础资料管理/BaseInfo.dpr index 799ef8c..071fdd0 100644 --- a/A05基础资料管理/BaseInfo.dpr +++ b/A05基础资料管理/BaseInfo.dpr @@ -23,7 +23,8 @@ uses U_MachineManage in 'U_MachineManage.pas' {frmMachineManage}, U_PositionList in 'U_PositionList.pas' {frmPositionList}, U_WarpBeamManage in 'U_WarpBeamManage.pas' {frmWarpBeamManage}, - U_TrayManage in 'U_TrayManage.pas' {frmTrayManage}; + U_TrayManage in 'U_TrayManage.pas' {frmTrayManage}, + uSZHN_JSON in '..\..\..\public10\ThreeFun\Fun\uSZHN_JSON.pas'; {$R *.res} diff --git a/A05基础资料管理/BaseInfo.dproj b/A05基础资料管理/BaseInfo.dproj index c8332c3..6914648 100644 --- a/A05基础资料管理/BaseInfo.dproj +++ b/A05基础资料管理/BaseInfo.dproj @@ -4,7 +4,7 @@ BaseInfo.dpr True Debug - 38017 + 1 Library VCL 19.2 @@ -13,16 +13,6 @@ true - - true - Base - true - - - true - Base - true - true Base @@ -43,24 +33,6 @@ Base true - - true - Cfg_2 - true - true - - - true - Cfg_2 - true - true - - - true - Cfg_2 - true - true - true Cfg_2 @@ -84,13 +56,6 @@ 2052 CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments= - - $(BDS)\bin\Artwork\Android\FM_LauncherIcon_192x192.png - android-support-v4.dex.jar;cloud-messaging.dex.jar;com-google-android-gms.play-services-ads-base.17.2.0.dex.jar;com-google-android-gms.play-services-ads-identifier.16.0.0.dex.jar;com-google-android-gms.play-services-ads-lite.17.2.0.dex.jar;com-google-android-gms.play-services-ads.17.2.0.dex.jar;com-google-android-gms.play-services-analytics-impl.16.0.8.dex.jar;com-google-android-gms.play-services-analytics.16.0.8.dex.jar;com-google-android-gms.play-services-base.16.0.1.dex.jar;com-google-android-gms.play-services-basement.16.2.0.dex.jar;com-google-android-gms.play-services-gass.17.2.0.dex.jar;com-google-android-gms.play-services-identity.16.0.0.dex.jar;com-google-android-gms.play-services-maps.16.1.0.dex.jar;com-google-android-gms.play-services-measurement-base.16.4.0.dex.jar;com-google-android-gms.play-services-measurement-sdk-api.16.4.0.dex.jar;com-google-android-gms.play-services-stats.16.0.1.dex.jar;com-google-android-gms.play-services-tagmanager-v4-impl.16.0.8.dex.jar;com-google-android-gms.play-services-tasks.16.0.1.dex.jar;com-google-android-gms.play-services-wallet.16.0.1.dex.jar;com-google-firebase.firebase-analytics.16.4.0.dex.jar;com-google-firebase.firebase-common.16.1.0.dex.jar;com-google-firebase.firebase-iid-interop.16.0.1.dex.jar;com-google-firebase.firebase-iid.17.1.1.dex.jar;com-google-firebase.firebase-measurement-connector.17.0.1.dex.jar;com-google-firebase.firebase-messaging.17.5.0.dex.jar;fmx.dex.jar;google-play-billing.dex.jar;google-play-licensing.dex.jar - - - $(BDS)\bin\Artwork\iOS\iPhone\FM_ApplicationIcon_1024x1024.png - System.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace) Debug @@ -113,17 +78,8 @@ false true - - Debug - - - Debug - - - Debug - - D:\Dp10Repo\项目代码\RTBasics\A05基础资料管理\testDll.exe + D:\Dp10Repo\项目代码\D10sxYilanbuyi\A05基础资料管理\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) @@ -177,6 +133,7 @@
frmTrayManage
dfm
+ Cfg_2 Base @@ -199,10 +156,6 @@ - True - True - True - True True False diff --git a/A05基础资料管理/BaseInfo.dproj.local b/A05基础资料管理/BaseInfo.dproj.local index a6e916d..7319dff 100644 --- a/A05基础资料管理/BaseInfo.dproj.local +++ b/A05基础资料管理/BaseInfo.dproj.local @@ -1,9 +1,10 @@  - 1899/12/30 00:00:00.000.260,D:\Dp10Repo\项目代码\RTBasics\A05基础资料管理\U_KuWeiManage.dfm=D:\Dp10Repo\项目代码\RTBasics\A05基础资料管理\U_PositionList.dfm - 1899/12/30 00:00:00.000.260,D:\Dp10Repo\项目代码\RTBasics\A05基础资料管理\U_KuWeiManage.pas=D:\Dp10Repo\项目代码\RTBasics\A05基础资料管理\U_PositionList.pas - 1899/12/30 00:00:00.000.872,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LbaelMapSet.dfm=D:\Dp10Repo\项目代码\RTBasics\A05基础资料管理\U_LbaelMapList.dfm - 1899/12/30 00:00:00.000.872,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LbaelMapSet.pas=D:\Dp10Repo\项目代码\RTBasics\A05基础资料管理\U_LbaelMapList.pas + 1899/12/30 00:00:00.000.260,D:\Dp10Repo\项目代码\RTBasics\A05基础资料管理\U_PositionList.dfm=D:\Dp10Repo\项目代码\RTBasics\A05基础资料管理\U_KuWeiManage.dfm + 1899/12/30 00:00:00.000.260,D:\Dp10Repo\项目代码\RTBasics\A05基础资料管理\U_PositionList.pas=D:\Dp10Repo\项目代码\RTBasics\A05基础资料管理\U_KuWeiManage.pas + 1899/12/30 00:00:00.000.872,D:\Dp10Repo\项目代码\RTBasics\A05基础资料管理\U_LbaelMapList.dfm=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LbaelMapSet.dfm + 1899/12/30 00:00:00.000.872,D:\Dp10Repo\项目代码\RTBasics\A05基础资料管理\U_LbaelMapList.pas=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LbaelMapSet.pas + 2025/12/26 16:33:50.878,=D:\Dp10Repo\public10\ThreeFun\Fun\uSZHN_JSON.pas diff --git a/A05基础资料管理/BaseInfo.identcache b/A05基础资料管理/BaseInfo.identcache index 18040f6..8ed7984 100644 Binary files a/A05基础资料管理/BaseInfo.identcache and b/A05基础资料管理/BaseInfo.identcache differ diff --git a/A05基础资料管理/BaseInfo.res b/A05基础资料管理/BaseInfo.res index d9b12cb..77b0e1c 100644 Binary files a/A05基础资料管理/BaseInfo.res and b/A05基础资料管理/BaseInfo.res differ diff --git a/A05基础资料管理/BaseInfo.skincfg b/A05基础资料管理/BaseInfo.skincfg new file mode 100644 index 0000000..c0891d9 --- /dev/null +++ b/A05基础资料管理/BaseInfo.skincfg @@ -0,0 +1,5 @@ +[ExpressSkins] +Default=1 +ShowNotifications=1 +Enabled=1 +dxSkinsDefaultPainters=1 diff --git a/A05基础资料管理/U_MachineManage.dfm b/A05基础资料管理/U_MachineManage.dfm index 691107b..effd61d 100644 --- a/A05基础资料管理/U_MachineManage.dfm +++ b/A05基础资料管理/U_MachineManage.dfm @@ -5,6 +5,7 @@ inherited frmMachineManage: TfrmMachineManage ClientHeight = 523 ClientWidth = 1107 KeyPreview = True + OnKeyDown = FormKeyDown ExplicitWidth = 1123 ExplicitHeight = 562 PixelsPerInch = 96 @@ -104,6 +105,7 @@ inherited frmMachineManage: TfrmMachineManage Navigator.Buttons.CustomButtons = <> Navigator.Buttons.Delete.Enabled = False Navigator.Buttons.Delete.Visible = False + ScrollbarAnnotations.CustomAnnotations = <> DataController.DataSource = DS_HZ DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] DataController.Summary.DefaultGroupSummaryItems = <> @@ -141,12 +143,14 @@ inherited frmMachineManage: TfrmMachineManage object v2Column1: TcxGridDBColumn Caption = #36873#25321 DataBinding.FieldName = 'SSel' + DataBinding.IsNullValueType = True PropertiesClassName = 'TcxCheckBoxProperties' HeaderAlignmentHorz = taCenter end object v2Column12: TcxGridDBColumn Caption = #26426#21488#21495 DataBinding.FieldName = 'MCNO' + DataBinding.IsNullValueType = True PropertiesClassName = 'TcxTextEditProperties' Properties.OnEditValueChanged = v2Column8PropertiesEditValueChanged HeaderAlignmentHorz = taCenter @@ -155,6 +159,7 @@ inherited frmMachineManage: TfrmMachineManage object v2Column8: TcxGridDBColumn Caption = #26426#21488#31867#22411 DataBinding.FieldName = 'MCType' + DataBinding.IsNullValueType = True PropertiesClassName = 'TcxTextEditProperties' Properties.OnEditValueChanged = v2Column8PropertiesEditValueChanged HeaderAlignmentHorz = taCenter diff --git a/A05基础资料管理/U_MachineManage.pas b/A05基础资料管理/U_MachineManage.pas index 3086f66..6756779 100644 --- a/A05基础资料管理/U_MachineManage.pas +++ b/A05基础资料管理/U_MachineManage.pas @@ -14,7 +14,8 @@ uses IdTCPClient, IdFTP, ShellAPI, IniFiles, cxCheckBox, cxCalendar, cxButtonEdit, cxTextEdit, cxPC, cxCheckComboBox, cxDropDownEdit, Menus, RM_e_Xls, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, dxSkinsCore, - dxSkinsDefaultPainters, dxDateRanges, dxBarBuiltInMenu, U_BaseList; + dxSkinsDefaultPainters, dxDateRanges, dxBarBuiltInMenu, U_BaseList, + dxScrollbarAnnotations; type TfrmMachineManage = class(TfrmBaseList) @@ -67,6 +68,7 @@ type procedure ToolButton5Click(Sender: TObject); procedure ToolButton6Click(Sender: TObject); procedure Tv2Column1PropertiesChange(Sender: TObject); + procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); private { Private declarations } procedure PrintReport(FZDYNo: string); @@ -145,6 +147,16 @@ begin frmMachineManage := nil; end; +procedure TfrmMachineManage.FormKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); +begin + if Key = VK_ESCAPE then // VK_ESCAPE ESC ij + begin + Key := 0; // ֹ + Close; // ModalResult := mrCancel; + end; +end; + procedure TfrmMachineManage.FormClose(Sender: TObject; var Action: TCloseAction); begin inherited; @@ -164,6 +176,7 @@ begin // Enddate.DateTime:=SGetServerDate(ADOQueryTemp); // begdate.DateTime:=Enddate.DateTime-30; InitGrid(); + KeyPreview := True; end; procedure TfrmMachineManage.TBRafreshClick(Sender: TObject); diff --git a/A05基础资料管理/U_PositionList.dfm b/A05基础资料管理/U_PositionList.dfm index 33cfe85..162401e 100644 --- a/A05基础资料管理/U_PositionList.dfm +++ b/A05基础资料管理/U_PositionList.dfm @@ -5,6 +5,7 @@ inherited frmPositionList: TfrmPositionList ClientHeight = 532 ClientWidth = 1107 KeyPreview = True + OnKeyDown = FormKeyDown ExplicitWidth = 1123 ExplicitHeight = 571 PixelsPerInch = 96 @@ -100,11 +101,11 @@ inherited frmPositionList: TfrmPositionList Align = alClient PopupMenu = PopupMenu1 TabOrder = 2 - ExplicitTop = 102 object Tv2: TcxGridDBTableView Navigator.Buttons.CustomButtons = <> Navigator.Buttons.Delete.Enabled = False Navigator.Buttons.Delete.Visible = False + ScrollbarAnnotations.CustomAnnotations = <> DataController.DataSource = DS_HZ DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] DataController.Summary.DefaultGroupSummaryItems = <> @@ -136,12 +137,14 @@ inherited frmPositionList: TfrmPositionList object v2Column1: TcxGridDBColumn Caption = #36873#25321 DataBinding.FieldName = 'SSel' + DataBinding.IsNullValueType = True PropertiesClassName = 'TcxCheckBoxProperties' HeaderAlignmentHorz = taCenter end object v2Column12: TcxGridDBColumn Caption = #24211#20301#32534#21495 DataBinding.FieldName = 'POSNO' + DataBinding.IsNullValueType = True PropertiesClassName = 'TcxTextEditProperties' Properties.OnEditValueChanged = v2Column8PropertiesEditValueChanged HeaderAlignmentHorz = taCenter @@ -150,6 +153,7 @@ inherited frmPositionList: TfrmPositionList object v2Column8: TcxGridDBColumn Caption = #24211#20301#21517#31216 DataBinding.FieldName = 'POSName' + DataBinding.IsNullValueType = True PropertiesClassName = 'TcxTextEditProperties' Properties.OnEditValueChanged = v2Column8PropertiesEditValueChanged HeaderAlignmentHorz = taCenter diff --git a/A05基础资料管理/U_PositionList.pas b/A05基础资料管理/U_PositionList.pas index 465fae5..59483ac 100644 --- a/A05基础资料管理/U_PositionList.pas +++ b/A05基础资料管理/U_PositionList.pas @@ -14,7 +14,8 @@ uses IdTCPClient, IdFTP, ShellAPI, IniFiles, cxCheckBox, cxCalendar, cxButtonEdit, cxTextEdit, cxPC, cxCheckComboBox, cxDropDownEdit, Menus, RM_e_Xls, cxLookAndFeels, cxLookAndFeelPainters, dxSkinsCore, dxSkinsDefaultPainters, - cxNavigator, dxDateRanges, dxBarBuiltInMenu, U_BaseList; + cxNavigator, dxDateRanges, dxBarBuiltInMenu, U_BaseList, + dxScrollbarAnnotations; type TfrmPositionList = class(TfrmBaseList) @@ -66,6 +67,7 @@ type procedure ToolButton4Click(Sender: TObject); procedure ToolButton5Click(Sender: TObject); procedure ToolButton6Click(Sender: TObject); + procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); private { Private declarations } procedure PrintReport(FZDYNo: string); @@ -166,6 +168,16 @@ begin frmPositionList := nil; end; +procedure TfrmPositionList.FormKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); +begin + if Key = VK_ESCAPE then // VK_ESCAPE ESC ij + begin + Key := 0; // ֹ + Close; // ModalResult := mrCancel; + end; +end; + procedure TfrmPositionList.FormClose(Sender: TObject; var Action: TCloseAction); begin inherited; @@ -185,6 +197,7 @@ begin // Enddate.DateTime:=SGetServerDate(ADOQueryTemp); // begdate.DateTime:=Enddate.DateTime-30; InitGrid(); + KeyPreview := True; end; procedure TfrmPositionList.TBRafreshClick(Sender: TObject); diff --git a/A05基础资料管理/testDll.res b/A05基础资料管理/testDll.res index 2465ca0..e116c48 100644 Binary files a/A05基础资料管理/testDll.res and b/A05基础资料管理/testDll.res differ diff --git a/B03基础物料仓库/ProductStk.dproj.local b/B03基础物料仓库/ProductStk.dproj.local index deb8b88..72f10fb 100644 --- a/B03基础物料仓库/ProductStk.dproj.local +++ b/B03基础物料仓库/ProductStk.dproj.local @@ -1,45 +1,45 @@  - 1899/12/30 00:00:00.000.844,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_AttachmentUpload.pas - 1899/12/30 00:00:00.000.233,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.dfm=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_ProductInfoSel.dfm - 1899/12/30 00:00:00.000.616,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.dfm=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LablePrint.dfm - 1899/12/30 00:00:00.000.832,=D:\Dp10Repo\public10\design\U_BaseHelp.pas - 1899/12/30 00:00:00.000.242,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LbaelMapSet.pas - 1899/12/30 00:00:00.000.487,D:\Dp10Repo\项目代码\睿特\新DLL初始化(CSH.dll)\U_ZDYHelpSel.pas= - 1899/12/30 00:00:00.000.840,=D:\Dp10Repo\项目代码\RTBasics\B03基础物料仓库\U_BSPrtMachInList.pas - 1899/12/30 00:00:00.000.659,D:\Dp10Repo\项目代码\RTBasics\B03基础物料仓库\U_BSPrtMachInList.pas=D:\Dp10Repo\项目代码\RTBasics\B03基础物料仓库\U_BSPrtDyeInList.pas 1899/12/30 00:00:00.000.975,=D:\Dp10Repo\public10\ThreeFun\Fun\U_CompressionFun.pas - 1899/12/30 00:00:00.000.048,=D:\Dp10Repo\public10\design\U_BaseList.pas - 1899/12/30 00:00:00.000.149,=D:\Dp10Repo\public10\ThreeFun\Form\U_ZDYHelp.pas - 1899/12/30 00:00:00.000.486,D:\Dp10Repo\项目代码\RTBasics\B03基础物料仓库\ProductStk.dproj=D:\Dp10Repo\项目代码\RTBasics\B03基础物料仓库\InformationBase.dproj - 1899/12/30 00:00:00.000.339,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_ClothInfoSel.pas - 1899/12/30 00:00:00.000.692,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_ClothInfoSel.pas=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas + 1899/12/30 00:00:00.000.242,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LbaelMapSet.pas + 1899/12/30 00:00:00.000.844,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_AttachmentUpload.pas + 1899/12/30 00:00:00.000.692,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.dfm=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_ClothInfoSel.dfm + 1899/12/30 00:00:00.000.840,=D:\Dp10Repo\项目代码\RTBasics\B03基础物料仓库\U_BSPrtMachInList.pas + 1899/12/30 00:00:00.000.716,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_ProcessSel.pas + 1899/12/30 00:00:00.000.092,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_EmployeeSel.pas + 1899/12/30 00:00:00.000.659,D:\Dp10Repo\项目代码\RTBasics\B03基础物料仓库\U_BSPrtDyeInList.pas=D:\Dp10Repo\项目代码\RTBasics\B03基础物料仓库\U_BSPrtMachInList.pas + 1899/12/30 00:00:00.000.943,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LabelPrint.pas + 1899/12/30 00:00:00.000.832,=D:\Dp10Repo\public10\design\U_BaseHelp.pas 1899/12/30 00:00:00.000.493,=D:\Dp10Repo\项目代码\RTBasics\A00通用模板\Unit1.pas + 1899/12/30 00:00:00.000.149,=D:\Dp10Repo\public10\ThreeFun\Form\U_ZDYHelp.pas + 1899/12/30 00:00:00.000.526,D:\Dp10Repo\项目代码\RTBasics\B03基础物料仓库\U_PrtDyeInfoInPut.pas=D:\Dp10Repo\项目代码\RTBasics\B03基础物料仓库\U_ProductInfoInPut.pas + 1899/12/30 00:00:00.000.339,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_ClothInfoSel.pas + 1899/12/30 00:00:00.000.233,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_ProductInfoSel.pas=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas + 1899/12/30 00:00:00.000.048,=D:\Dp10Repo\public10\design\U_BaseList.pas 1899/12/30 00:00:00.000.135,D:\Dp10Repo\项目代码\睿特\新DLL初始化(CSH.dll)\U_ZDYHelp.pas= 1899/12/30 00:00:00.000.939,=D:\Dp10Repo\public10\design\U_BaseInput.pas 1899/12/30 00:00:00.000.923,D:\Dp10Repo\项目代码\RTBasics\B03基础物料仓库\Unit1.pas= - 1899/12/30 00:00:00.000.692,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_ClothInfoSel.dfm=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.dfm - 1899/12/30 00:00:00.000.716,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_ProcessSel.pas - 1899/12/30 00:00:00.000.178,=D:\Dp10Repo\public10\design\U_WindowFormdesign.pas - 1899/12/30 00:00:00.000.526,D:\Dp10Repo\项目代码\RTBasics\B03基础物料仓库\U_ProductInfoInPut.dfm=D:\Dp10Repo\项目代码\RTBasics\B03基础物料仓库\U_PrtDyeInfoInPut.dfm - 1899/12/30 00:00:00.000.233,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_ProductInfoSel.pas - 1899/12/30 00:00:00.000.616,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LablePrint.pas - 1899/12/30 00:00:00.000.736,D:\Dp10Repo\项目代码\睿特\新DLL初始化(CSH.dll)\U_ModuleNote.pas= - 1899/12/30 00:00:00.000.713,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LabelMapSet.pas - 1899/12/30 00:00:00.000.015,=D:\Dp10Repo\public10\ThreeFun\Fun\U_RTFun.pas + 1899/12/30 00:00:00.000.997,=D:\Dp10Repo\public10\ThreeFun\Fun\uSZHN_JSON.pas + 1899/12/30 00:00:00.000.486,D:\Dp10Repo\项目代码\RTBasics\B03基础物料仓库\InformationBase.dproj=D:\Dp10Repo\项目代码\RTBasics\B03基础物料仓库\ProductStk.dproj 1899/12/30 00:00:00.000.123,=D:\Dp10Repo\public10\design\U_globalVar.pas 1899/12/30 00:00:00.000.086,=D:\Dp10Repo\public10\design\U_cxGridCustomCss.pas - 1899/12/30 00:00:00.000.495,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas - 1899/12/30 00:00:00.000.526,D:\Dp10Repo\项目代码\RTBasics\B03基础物料仓库\U_ProductInfoInPut.pas=D:\Dp10Repo\项目代码\RTBasics\B03基础物料仓库\U_PrtDyeInfoInPut.pas + 1899/12/30 00:00:00.000.178,=D:\Dp10Repo\public10\design\U_WindowFormdesign.pas + 1899/12/30 00:00:00.000.659,D:\Dp10Repo\项目代码\RTBasics\B03基础物料仓库\U_BSPrtDyeInList.dfm=D:\Dp10Repo\项目代码\RTBasics\B03基础物料仓库\U_BSPrtMachInList.dfm + 1899/12/30 00:00:00.000.233,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_ProductInfoSel.dfm=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.dfm + 1899/12/30 00:00:00.000.713,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LabelMapSet.pas + 1899/12/30 00:00:00.000.616,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LablePrint.dfm=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.dfm + 1899/12/30 00:00:00.000.015,=D:\Dp10Repo\public10\ThreeFun\Fun\U_RTFun.pas + 1899/12/30 00:00:00.000.736,D:\Dp10Repo\项目代码\睿特\新DLL初始化(CSH.dll)\U_ModuleNote.pas= + 1899/12/30 00:00:00.000.526,D:\Dp10Repo\项目代码\RTBasics\B03基础物料仓库\U_PrtDyeInfoInPut.dfm=D:\Dp10Repo\项目代码\RTBasics\B03基础物料仓库\U_ProductInfoInPut.dfm + 1899/12/30 00:00:00.000.616,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LablePrint.pas=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas + 1899/12/30 00:00:00.000.487,D:\Dp10Repo\项目代码\睿特\新DLL初始化(CSH.dll)\U_ZDYHelpSel.pas= 1899/12/30 00:00:00.000.686,=D:\Dp10Repo\项目代码\RTBasics\B03基础物料仓库\U_ProductInfoInPut.pas - 1899/12/30 00:00:00.000.997,=D:\Dp10Repo\public10\ThreeFun\Fun\uSZHN_JSON.pas - 1899/12/30 00:00:00.000.092,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_EmployeeSel.pas - 1899/12/30 00:00:00.000.943,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LabelPrint.pas + 1899/12/30 00:00:00.000.422,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas + 1899/12/30 00:00:00.000.692,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_ClothInfoSel.pas + 1899/12/30 00:00:00.000.495,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas 1899/12/30 00:00:00.000.734,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas 1899/12/30 00:00:00.000.630,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas - 1899/12/30 00:00:00.000.422,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas - 1899/12/30 00:00:00.000.659,D:\Dp10Repo\项目代码\RTBasics\B03基础物料仓库\U_BSPrtMachInList.dfm=D:\Dp10Repo\项目代码\RTBasics\B03基础物料仓库\U_BSPrtDyeInList.dfm diff --git a/B03基础物料仓库/ProductStk.identcache b/B03基础物料仓库/ProductStk.identcache index 34a61e9..6270260 100644 Binary files a/B03基础物料仓库/ProductStk.identcache and b/B03基础物料仓库/ProductStk.identcache differ diff --git a/F01染色坯布仓库/DyeGreyClothStk.identcache b/F01染色坯布仓库/DyeGreyClothStk.identcache index 0a3797c..67bd293 100644 Binary files a/F01染色坯布仓库/DyeGreyClothStk.identcache and b/F01染色坯布仓库/DyeGreyClothStk.identcache differ diff --git a/F01染色坯布仓库/U_DyeGreyClothInEdit.dfm b/F01染色坯布仓库/U_DyeGreyClothInEdit.dfm index 1a06910..acd39dd 100644 --- a/F01染色坯布仓库/U_DyeGreyClothInEdit.dfm +++ b/F01染色坯布仓库/U_DyeGreyClothInEdit.dfm @@ -10,6 +10,8 @@ inherited frmDyeGreyClothInEdit: TfrmDyeGreyClothInEdit Font.Name = #23435#20307 Position = poScreenCenter OnClose = FormClose + OnKeyDown = FormKeyDown + ExplicitLeft = -471 ExplicitWidth = 1356 ExplicitHeight = 585 PixelsPerInch = 96 diff --git a/F01染色坯布仓库/U_DyeGreyClothInEdit.pas b/F01染色坯布仓库/U_DyeGreyClothInEdit.pas index 4ca7911..236c75f 100644 --- a/F01染色坯布仓库/U_DyeGreyClothInEdit.pas +++ b/F01染色坯布仓库/U_DyeGreyClothInEdit.pas @@ -80,6 +80,7 @@ type procedure Tv1Column8PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure Tv1OrderNoPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure TbImportClick(Sender: TObject); + procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); private { Private declarations } function SaveCKData(): Boolean; @@ -288,6 +289,16 @@ begin Close; end; +procedure TfrmDyeGreyClothInEdit.FormKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); +begin + if Key = VK_ESCAPE then // VK_ESCAPE ESC ij + begin + Key := 0; // ֹ + Close; // ModalResult := mrCancel; + end; +end; + procedure TfrmDyeGreyClothInEdit.FormShow(Sender: TObject); var fsj: string; @@ -305,6 +316,7 @@ begin end; SCreateCDS(ADOQueryTemp, CDS_Sub); SInitCDSData(ADOQueryTemp, CDS_Sub); + KeyPreview := True; // ȷԤ // fsj := 'select name=CJName ,Code=null from CheJian'; // SInitCxGridComboBoxBySql(ADOQueryTemp, v1Column7, fsj, 0, True, ''); end; diff --git a/F01染色坯布仓库/U_DyeGreyClothInList.dfm b/F01染色坯布仓库/U_DyeGreyClothInList.dfm index 72885aa..086c731 100644 --- a/F01染色坯布仓库/U_DyeGreyClothInList.dfm +++ b/F01染色坯布仓库/U_DyeGreyClothInList.dfm @@ -4,6 +4,7 @@ inherited frmDyeGreyClothInList: TfrmDyeGreyClothInList Caption = #22383#24067#20837#24211#21015#34920 ClientHeight = 543 ClientWidth = 1284 + OnKeyDown = FormKeyDown ExplicitWidth = 1300 ExplicitHeight = 582 PixelsPerInch = 96 @@ -115,7 +116,6 @@ inherited frmDyeGreyClothInList: TfrmDyeGreyClothInList Color = clWhite ParentBackground = False TabOrder = 1 - ExplicitTop = 32 object Label1: TLabel Left = 28 Top = 12 @@ -229,7 +229,6 @@ inherited frmDyeGreyClothInList: TfrmDyeGreyClothInList Align = alClient PopupMenu = PopupMenu1 TabOrder = 2 - ExplicitTop = 97 object Tv1: TcxGridDBTableView Navigator.Buttons.CustomButtons = <> ScrollbarAnnotations.CustomAnnotations = <> diff --git a/F01染色坯布仓库/U_DyeGreyClothInList.pas b/F01染色坯布仓库/U_DyeGreyClothInList.pas index f62a106..8653089 100644 --- a/F01染色坯布仓库/U_DyeGreyClothInList.pas +++ b/F01染色坯布仓库/U_DyeGreyClothInList.pas @@ -96,6 +96,7 @@ type procedure Tv1CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); procedure OrderNoKeyPress(Sender: TObject; var Key: Char); procedure IOTypeChange(Sender: TObject); + procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); private canshu1, canshu2, canshu3, FWorkshop: string; @@ -141,6 +142,16 @@ begin end; +procedure TfrmDyeGreyClothInList.FormKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); +begin + if Key = VK_ESCAPE then // VK_ESCAPE ESC ij + begin + Key := 0; // ֹ + Close; // ModalResult := mrCancel; + end; +end; + procedure TfrmDyeGreyClothInList.InitGrid(); begin try @@ -275,6 +286,7 @@ begin BegDate.DateTime := SGetServerDate(ADOQueryCmd) - 2; EndDate.DateTime := SGetServerDate(ADOQueryCmd); InitGrid(); + KeyPreview := True; // ȷԤ end; procedure TfrmDyeGreyClothInList.TBExportClick(Sender: TObject); diff --git a/F01染色坯布仓库/U_DyeGreyClothOutEdit.dfm b/F01染色坯布仓库/U_DyeGreyClothOutEdit.dfm index 8ce5a65..3d538bd 100644 --- a/F01染色坯布仓库/U_DyeGreyClothOutEdit.dfm +++ b/F01染色坯布仓库/U_DyeGreyClothOutEdit.dfm @@ -10,6 +10,7 @@ inherited frmDyeGreyClothOutEdit: TfrmDyeGreyClothOutEdit Font.Name = #23435#20307 Position = poMainFormCenter OnClose = FormClose + OnKeyDown = FormKeyDown ExplicitWidth = 1422 ExplicitHeight = 585 PixelsPerInch = 96 diff --git a/F01染色坯布仓库/U_DyeGreyClothOutEdit.pas b/F01染色坯布仓库/U_DyeGreyClothOutEdit.pas index 1e3b1b3..9d11592 100644 --- a/F01染色坯布仓库/U_DyeGreyClothOutEdit.pas +++ b/F01染色坯布仓库/U_DyeGreyClothOutEdit.pas @@ -58,6 +58,7 @@ type procedure ToolButton1Click(Sender: TObject); procedure Tv1Column2PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure v1Column13PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); private { Private declarations } function SaveCKData(): Boolean; @@ -252,6 +253,16 @@ begin Close; end; +procedure TfrmDyeGreyClothOutEdit.FormKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); +begin + if Key = VK_ESCAPE then // VK_ESCAPE ESC ij + begin + Key := 0; // ֹ + Close; // ModalResult := mrCancel; + end; +end; + procedure TfrmDyeGreyClothOutEdit.FormShow(Sender: TObject); var fsj: string; @@ -269,6 +280,7 @@ begin end; SCreateCDS(ADOQueryTemp, CDS_Sub); SInitCDSData(ADOQueryTemp, CDS_Sub); + KeyPreview := True; // ȷԤ // fsj:='select name=CJName ,Code=null from CheJian'; // SInitCxGridComboBoxBySql(ADOQueryTemp,v1CheJian,fsj,0,True,''); end; diff --git a/F01染色坯布仓库/U_DyeGreyClothOutList.dfm b/F01染色坯布仓库/U_DyeGreyClothOutList.dfm index b6e3ee3..2967c22 100644 --- a/F01染色坯布仓库/U_DyeGreyClothOutList.dfm +++ b/F01染色坯布仓库/U_DyeGreyClothOutList.dfm @@ -5,6 +5,7 @@ inherited frmDyeGreyClothOutList: TfrmDyeGreyClothOutList ClientHeight = 546 ClientWidth = 1193 Position = poScreenCenter + OnKeyDown = FormKeyDown ExplicitWidth = 1209 ExplicitHeight = 585 PixelsPerInch = 96 @@ -115,7 +116,6 @@ inherited frmDyeGreyClothOutList: TfrmDyeGreyClothOutList BevelOuter = bvLowered Color = clSkyBlue TabOrder = 1 - ExplicitTop = 44 object Label1: TLabel Left = 28 Top = 12 diff --git a/F01染色坯布仓库/U_DyeGreyClothOutList.pas b/F01染色坯布仓库/U_DyeGreyClothOutList.pas index d5ea04d..d868c04 100644 --- a/F01染色坯布仓库/U_DyeGreyClothOutList.pas +++ b/F01染色坯布仓库/U_DyeGreyClothOutList.pas @@ -97,6 +97,7 @@ type procedure ToolButton1Click(Sender: TObject); procedure ToolButton2Click(Sender: TObject); procedure OrderNoKeyPress(Sender: TObject; var Key: Char); + procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); private canshu1, canshu2, FWorkshop: string; procedure InitGrid(); @@ -121,6 +122,16 @@ begin inherited; //frmPBOutList:=nil; end; +procedure TfrmDyeGreyClothOutList.FormKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); +begin + if Key = VK_ESCAPE then // VK_ESCAPE ESC ij + begin + Key := 0; // ֹ + Close; // ModalResult := mrCancel; + end; +end; + procedure TfrmDyeGreyClothOutList.FormClose(Sender: TObject; var Action: TCloseAction); begin inherited; @@ -257,6 +268,7 @@ begin BegDate.DateTime := SGetServerDate(ADOQueryCmd) - 2; EndDate.DateTime := SGetServerDate(ADOQueryCmd); InitGrid(); + KeyPreview := True; // ȷԤ end; procedure TfrmDyeGreyClothOutList.TBExportClick(Sender: TObject); diff --git a/F01染色坯布仓库/U_DyeGreyClothStkList.dfm b/F01染色坯布仓库/U_DyeGreyClothStkList.dfm index b9bd8ad..66e5b2a 100644 --- a/F01染色坯布仓库/U_DyeGreyClothStkList.dfm +++ b/F01染色坯布仓库/U_DyeGreyClothStkList.dfm @@ -5,6 +5,7 @@ inherited frmDyeGreyClothStkList: TfrmDyeGreyClothStkList ClientHeight = 567 ClientWidth = 1400 Position = poDefault + OnKeyDown = FormKeyDown ExplicitWidth = 1416 ExplicitHeight = 606 PixelsPerInch = 96 diff --git a/F01染色坯布仓库/U_DyeGreyClothStkList.pas b/F01染色坯布仓库/U_DyeGreyClothStkList.pas index ef9b53e..d7de59d 100644 --- a/F01染色坯布仓库/U_DyeGreyClothStkList.pas +++ b/F01染色坯布仓库/U_DyeGreyClothStkList.pas @@ -81,6 +81,7 @@ type procedure Tv1Column3PropertiesEditValueChanged(Sender: TObject); procedure TbExportClick(Sender: TObject); procedure OrderNoKeyPress(Sender: TObject; var Key: Char); + procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); private procedure InitGrid(); { Private declarations } @@ -105,6 +106,16 @@ begin frmDyeGreyClothStkList := nil; end; +procedure TfrmDyeGreyClothStkList.FormKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); +begin + if Key = VK_ESCAPE then // VK_ESCAPE ESC ij + begin + Key := 0; // ֹ + Close; // ModalResult := mrCancel; + end; +end; + procedure TfrmDyeGreyClothStkList.FormClose(Sender: TObject; var Action: TCloseAction); begin inherited; @@ -173,6 +184,7 @@ begin ReadCxGrid(trim(Self.Caption), Tv1, 'б'); InitGrid(); + KeyPreview := True; // ȷԤ end; procedure TfrmDyeGreyClothStkList.TBFindClick(Sender: TObject); diff --git a/F01染色坯布仓库/U_DyeGreyClothStkSel.dfm b/F01染色坯布仓库/U_DyeGreyClothStkSel.dfm index 08d85d4..a2307bc 100644 --- a/F01染色坯布仓库/U_DyeGreyClothStkSel.dfm +++ b/F01染色坯布仓库/U_DyeGreyClothStkSel.dfm @@ -10,6 +10,7 @@ inherited frmDyeGreyClothStkSel: TfrmDyeGreyClothStkSel Font.Name = #23435#20307 Position = poMainFormCenter OnClose = FormClose + OnKeyDown = FormKeyDown ExplicitWidth = 1181 ExplicitHeight = 566 PixelsPerInch = 96 @@ -178,7 +179,6 @@ inherited frmDyeGreyClothStkSel: TfrmDyeGreyClothStkSel Align = alClient PopupMenu = PopupMenu1 TabOrder = 2 - ExplicitTop = 71 object Tv1: TcxGridDBTableView Navigator.Buttons.CustomButtons = <> ScrollbarAnnotations.CustomAnnotations = <> diff --git a/F01染色坯布仓库/U_DyeGreyClothStkSel.pas b/F01染色坯布仓库/U_DyeGreyClothStkSel.pas index 8a024fc..004e744 100644 --- a/F01染色坯布仓库/U_DyeGreyClothStkSel.pas +++ b/F01染色坯布仓库/U_DyeGreyClothStkSel.pas @@ -81,6 +81,7 @@ type procedure ToolButton1Click(Sender: TObject); procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); procedure ToolButton2Click(Sender: TObject); + procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); private procedure InitGrid(); { Private declarations } @@ -105,6 +106,15 @@ begin frmDyeGreyClothStkSel := nil; end; +procedure TfrmDyeGreyClothStkSel.FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); +begin + if Key = VK_ESCAPE then // VK_ESCAPE ESC ij + begin + Key := 0; // ֹ + Close; // ModalResult := mrCancel; + end; +end; + procedure TfrmDyeGreyClothStkSel.FormClose(Sender: TObject; var Action: TCloseAction); begin inherited; @@ -157,6 +167,7 @@ begin inherited; ReadCxGrid(trim(self.Caption), Tv1, 'ϲֿ'); InitGrid(); + KeyPreview := True; // ȷԤ end; procedure TfrmDyeGreyClothStkSel.TBFindClick(Sender: TObject); diff --git a/F01染色坯布仓库/U_DyeGreyClothStkStats.dfm b/F01染色坯布仓库/U_DyeGreyClothStkStats.dfm index fc86d40..44963da 100644 --- a/F01染色坯布仓库/U_DyeGreyClothStkStats.dfm +++ b/F01染色坯布仓库/U_DyeGreyClothStkStats.dfm @@ -5,6 +5,7 @@ inherited frmDyeGreyClothStkStats: TfrmDyeGreyClothStkStats ClientHeight = 567 ClientWidth = 1400 Position = poDefault + OnKeyDown = FormKeyDown ExplicitWidth = 1416 ExplicitHeight = 606 PixelsPerInch = 96 @@ -172,7 +173,6 @@ inherited frmDyeGreyClothStkStats: TfrmDyeGreyClothStkStats Align = alClient PopupMenu = PopupMenu1 TabOrder = 2 - ExplicitTop = 111 object Tv1: TcxGridDBTableView Navigator.Buttons.CustomButtons = <> ScrollbarAnnotations.CustomAnnotations = <> diff --git a/F01染色坯布仓库/U_DyeGreyClothStkStats.pas b/F01染色坯布仓库/U_DyeGreyClothStkStats.pas index 8936176..12d9f46 100644 --- a/F01染色坯布仓库/U_DyeGreyClothStkStats.pas +++ b/F01染色坯布仓库/U_DyeGreyClothStkStats.pas @@ -84,6 +84,7 @@ type procedure TbExportClick(Sender: TObject); procedure TbSaveClick(Sender: TObject); procedure finishDescriptionKeyPress(Sender: TObject; var Key: Char); + procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); private procedure InitGrid(); function SaveData(): Boolean; @@ -109,6 +110,16 @@ begin frmDyeGreyClothStkStats := nil; end; +procedure TfrmDyeGreyClothStkStats.FormKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); +begin + if Key = VK_ESCAPE then // VK_ESCAPE ESC ij + begin + Key := 0; // ֹ + Close; // ModalResult := mrCancel; + end; +end; + procedure TfrmDyeGreyClothStkStats.finishDescriptionKeyPress(Sender: TObject; var Key: Char); begin @@ -189,6 +200,7 @@ begin BegDate.DateTime := SGetServerDate(ADOQueryCmd) - 2; EndDate.DateTime := SGetServerDate(ADOQueryCmd); InitGrid(); + KeyPreview := True; // ȷԤ end; procedure TfrmDyeGreyClothStkStats.TBFindClick(Sender: TObject); diff --git a/F01染色坯布仓库/U_DyePBImport.dfm b/F01染色坯布仓库/U_DyePBImport.dfm index 2b4110c..f663b76 100644 --- a/F01染色坯布仓库/U_DyePBImport.dfm +++ b/F01染色坯布仓库/U_DyePBImport.dfm @@ -9,6 +9,7 @@ inherited frmDyePBImport: TfrmDyePBImport Font.Height = -16 Font.Name = #24494#36719#38597#40657 Position = poMainFormCenter + OnKeyDown = FormKeyDown ExplicitWidth = 1500 ExplicitHeight = 601 PixelsPerInch = 107 diff --git a/F01染色坯布仓库/U_DyePBImport.pas b/F01染色坯布仓库/U_DyePBImport.pas index e21419c..7c4e654 100644 --- a/F01染色坯布仓库/U_DyePBImport.pas +++ b/F01染色坯布仓库/U_DyePBImport.pas @@ -54,6 +54,7 @@ type procedure ToolButton2Click(Sender: TObject); procedure ToolButton3Click(Sender: TObject); procedure Tv1ioTypePropertiesEditValueChanged(Sender: TObject); + procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); private { Private declarations } procedure InitGrid(); @@ -96,6 +97,16 @@ begin frmDyePBImport := nil; end; +procedure TfrmDyePBImport.FormKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); +begin + if Key = VK_ESCAPE then // VK_ESCAPE ESC ij + begin + Key := 0; // ֹ + Close; // ModalResult := mrCancel; + end; +end; + procedure TfrmDyePBImport.FormClose(Sender: TObject; var Action: TCloseAction); begin inherited; @@ -123,6 +134,7 @@ begin CreateDataSet; end; InitGrid(); + KeyPreview := True; // ȷԤ end; procedure TfrmDyePBImport.TBRafreshClick(Sender: TObject); diff --git a/F02染色计划单/DyePlan.dpr b/F02染色计划单/DyePlan.dpr index 8da058a..11d07d8 100644 --- a/F02染色计划单/DyePlan.dpr +++ b/F02染色计划单/DyePlan.dpr @@ -42,7 +42,8 @@ uses U_CraftSel in 'U_CraftSel.pas' {frmCraftSel}, U_DyeSimpleTechnicsList in 'U_DyeSimpleTechnicsList.pas' {frmDyeSimpleTechnicsList}, U_DyeTechnicsinputKaika in 'U_DyeTechnicsinputKaika.pas' {frmDyeTechnicsinputKaika}, - U_DyeSimpleTechnicsKaiKa in 'U_DyeSimpleTechnicsKaiKa.pas' {frmDyeSimpleTechnicsKaiKa}; + U_DyeSimpleTechnicsKaiKa in 'U_DyeSimpleTechnicsKaiKa.pas' {frmDyeSimpleTechnicsKaiKa}, + U_framePDList in 'U_framePDList.pas' {framePDList: TFrame}; {$R *.res} diff --git a/F02染色计划单/DyePlan.dproj b/F02染色计划单/DyePlan.dproj index e55f5ea..576e024 100644 --- a/F02染色计划单/DyePlan.dproj +++ b/F02染色计划单/DyePlan.dproj @@ -207,6 +207,11 @@
frmDyeSimpleTechnicsKaiKa
dfm
+ +
framePDList
+ dfm + TFrame +
Cfg_2 Base diff --git a/F02染色计划单/DyePlan.dproj.local b/F02染色计划单/DyePlan.dproj.local index edca056..99019f4 100644 --- a/F02染色计划单/DyePlan.dproj.local +++ b/F02染色计划单/DyePlan.dproj.local @@ -1,67 +1,68 @@  - 1899/12/30 00:00:00.000.092,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_EmployeeSel.pas - 1899/12/30 00:00:00.000.855,D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\U_DyePlanList.pas=D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\U_DyePlanList1.pas - 1899/12/30 00:00:00.000.934,=D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\U_DyePlanList.pas 1899/12/30 00:00:00.000.327,=D:\Dp10Repo\public10\ThreeFun\Fun\uSZHN_JSON.pas - 1899/12/30 00:00:00.000.291,=D:\Dp10Repo\项目代码\D10sxYilanbuyi\A00通用窗体\U_ProductInfoSel.pas + 1899/12/30 00:00:00.000.934,=D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\U_DyePlanList.pas + 1899/12/30 00:00:00.000.092,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_EmployeeSel.pas 1899/12/30 00:00:00.000.716,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_ProcessSel.pas + 1899/12/30 00:00:00.000.625,=D:\Dp10Repo\public10\ThreeFun\Form\U_ZDYHelpSel.pas + 1899/12/30 00:00:00.000.291,=D:\Dp10Repo\项目代码\D10sxYilanbuyi\A00通用窗体\U_ProductInfoSel.pas 1899/12/30 00:00:00.000.875,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_ProcessSel.pas= 1899/12/30 00:00:00.000.422,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas - 1899/12/30 00:00:00.000.531,D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\U_DyeTechnicsList.dfm=D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\U_DyeTechnicsinput.dfm + 1899/12/30 00:00:00.000.855,D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\U_DyePlanList1.pas=D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\U_DyePlanList.pas 1899/12/30 00:00:00.000.123,=D:\Dp10Repo\public10\design\U_globalVar.pas 1899/12/30 00:00:00.000.630,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas 1899/12/30 00:00:00.000.017,=D:\Dp10Repo\项目代码\RTBasics\F00染色通用窗体\U_DyeGreyClothStkSel.pas - 1899/12/30 00:00:00.000.616,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LablePrint.pas + 1899/12/30 00:00:00.000.692,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_ClothInfoSel.pas 1899/12/30 00:00:00.000.734,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas - 1899/12/30 00:00:00.000.625,=D:\Dp10Repo\public10\ThreeFun\Form\U_ZDYHelpSel.pas + 1899/12/30 00:00:00.000.692,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.dfm=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_ClothInfoSel.dfm 1899/12/30 00:00:00.000.939,=D:\Dp10Repo\public10\design\U_BaseInput.pas 1899/12/30 00:00:00.000.135,D:\Dp10Repo\项目代码\睿特\新DLL初始化(CSH.dll)\U_ZDYHelp.pas= 1899/12/30 00:00:00.000.188,=D:\Dp10Repo\项目代码\RTBasics\F00染色通用窗体\U_DyePlanCardSel.pas 1899/12/30 00:00:00.000.621,=D:\Dp10Repo\项目代码\D10sxYilanbuyi\F02染色计划单\U_DyeProcessDefin.pas 1899/12/30 00:00:00.000.037,=D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\U_Cust_Cloth_PSC.pas 1899/12/30 00:00:00.000.362,=D:\Dp10Repo\public10\design\U_BaseDataLink.pas - 1899/12/30 00:00:00.000.359,D:\Dp10Repo\项目代码\傲唐\财务管理(Financial.dll)\U_YWTCInPut.dfm=D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\U_DyePlanInPut.dfm - 1899/12/30 00:00:00.000.986,D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\DyePlan.dproj=D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\InformationBase.dproj - 1899/12/30 00:00:00.000.577,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LbaelMapSet.pas - 1899/12/30 00:00:00.000.616,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.dfm=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LablePrint.dfm - 1899/12/30 00:00:00.000.832,=D:\Dp10Repo\public10\design\U_BaseHelp.pas - 1899/12/30 00:00:00.000.048,=D:\Dp10Repo\public10\design\U_BaseList.pas + 1899/12/30 00:00:00.000.531,D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\U_DyeTechnicsinput.pas=D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\U_DyeTechnicsList.pas 1899/12/30 00:00:00.000.722,=D:\Dp10Repo\项目代码\RTBasics\F00染色通用窗体\U_DyeGreyClothOutSel.pas + 1899/12/30 00:00:00.000.832,=D:\Dp10Repo\public10\design\U_BaseHelp.pas + 1899/12/30 00:00:00.000.577,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LbaelMapSet.pas + 1899/12/30 00:00:00.000.531,D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\U_DyeTechnicsinput.dfm=D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\U_DyeTechnicsList.dfm + 1899/12/30 00:00:00.000.048,=D:\Dp10Repo\public10\design\U_BaseList.pas + 1899/12/30 00:00:00.000.736,D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\U_DyePlanCardInput1.dfm=D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\U_DyePlanCardInput.dfm 1899/12/30 00:00:00.000.495,=D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\U_DyeProcessList.pas - 1899/12/30 00:00:00.000.736,D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\U_DyePlanCardInput.pas=D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\U_DyePlanCardInput1.pas + 1899/12/30 00:00:00.000.782,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LabelPrint.pas 1899/12/30 00:00:00.000.014,=D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\U_DyeTechnicsList.pas - 1899/12/30 00:00:00.000.531,D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\U_DyeTechnicsList.pas=D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\U_DyeTechnicsinput.pas - 1899/12/30 00:00:00.000.855,D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\U_DyePlanList.dfm=D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\U_DyePlanList1.dfm - 1899/12/30 00:00:00.000.344,D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\U_DyeCardInput.dfm=D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\U_DyePlanCardInput.dfm + 1899/12/30 00:00:00.000.487,D:\Dp10Repo\项目代码\睿特\新DLL初始化(CSH.dll)\U_ZDYHelpSel.pas= + 1899/12/30 00:00:00.000.344,D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\U_DyePlanCardInput.pas=D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\U_DyeCardInput.pas 1899/12/30 00:00:00.000.844,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_AttachmentUpload.pas 1899/12/30 00:00:00.000.975,=D:\Dp10Repo\public10\ThreeFun\Fun\U_CompressionFun.pas - 1899/12/30 00:00:00.000.487,D:\Dp10Repo\项目代码\睿特\新DLL初始化(CSH.dll)\U_ZDYHelpSel.pas= - 1899/12/30 00:00:00.000.086,=D:\Dp10Repo\public10\design\U_cxGridCustomCss.pas + 1899/12/30 00:00:00.000.986,D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\InformationBase.dproj=D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\DyePlan.dproj + 1899/12/30 00:00:00.000.616,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LablePrint.pas=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas 1899/12/30 00:00:00.000.015,=D:\Dp10Repo\public10\ThreeFun\Fun\U_RTFun.pas + 1899/12/30 00:00:00.000.616,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LablePrint.dfm=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.dfm 1899/12/30 00:00:00.000.571,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LabelMapSet.pas - 1899/12/30 00:00:00.000.178,=D:\Dp10Repo\public10\design\U_WindowFormdesign.pas - 1899/12/30 00:00:00.000.782,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LabelPrint.pas - 1899/12/30 00:00:00.000.736,D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\U_DyePlanCardInput.dfm=D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\U_DyePlanCardInput1.dfm + 1899/12/30 00:00:00.000.086,=D:\Dp10Repo\public10\design\U_cxGridCustomCss.pas + 1899/12/30 00:00:00.000.344,D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\U_DyePlanCardInput.dfm=D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\U_DyeCardInput.dfm 1899/12/30 00:00:00.000.736,D:\Dp10Repo\项目代码\睿特\新DLL初始化(CSH.dll)\U_ModuleNote.pas= - 1899/12/30 00:00:00.000.058,=D:\Dp10Repo\项目代码\RTBasics\F00染色通用窗体\U_DyeTechnicsSel.pas - 1899/12/30 00:00:00.000.359,D:\Dp10Repo\项目代码\傲唐\财务管理(Financial.dll)\U_YWTCInPut.pas=D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\U_DyePlanInPut.pas - 1899/12/30 00:00:00.000.046,=D:\Dp10Repo\项目代码\RTBasics\F00染色通用窗体\U_DyeProcessSel.pas + 1899/12/30 00:00:00.000.178,=D:\Dp10Repo\public10\design\U_WindowFormdesign.pas + 1899/12/30 00:00:00.000.359,D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\U_DyePlanInPut.dfm=D:\Dp10Repo\项目代码\傲唐\财务管理(Financial.dll)\U_YWTCInPut.dfm + 1899/12/30 00:00:00.000.286,=D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\U_DyePlanInPut.pas 1899/12/30 00:00:00.000.383,=D:\Dp10Repo\项目代码\D10sxYilanbuyi\F02染色计划单\U_CraftSel.pas 1899/12/30 00:00:00.000.339,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_ClothInfoSel.pas - 1899/12/30 00:00:00.000.692,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_ClothInfoSel.pas=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas - 1899/12/30 00:00:00.000.905,D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\U_DyePlanCardInput1.pas= + 1899/12/30 00:00:00.000.736,D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\U_DyePlanCardInput1.pas=D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\U_DyePlanCardInput.pas 1899/12/30 00:00:00.000.149,=D:\Dp10Repo\public10\ThreeFun\Form\U_ZDYHelp.pas - 1899/12/30 00:00:00.000.344,D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\U_DyeCardInput.pas=D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\U_DyePlanCardInput.pas - 1899/12/30 00:00:00.000.692,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_ClothInfoSel.dfm=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.dfm + 1899/12/30 00:00:00.000.905,D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\U_DyePlanCardInput1.pas= + 1899/12/30 00:00:00.000.046,=D:\Dp10Repo\项目代码\RTBasics\F00染色通用窗体\U_DyeProcessSel.pas 1899/12/30 00:00:00.000.819,=D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\U_DyeInspSet.pas - 1899/12/30 00:00:00.000.286,=D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\U_DyePlanInPut.pas + 1899/12/30 00:00:00.000.058,=D:\Dp10Repo\项目代码\RTBasics\F00染色通用窗体\U_DyeTechnicsSel.pas + 1899/12/30 00:00:00.000.855,D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\U_DyePlanList1.dfm=D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\U_DyePlanList.dfm + 1899/12/30 00:00:00.000.359,D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\U_DyePlanInPut.pas=D:\Dp10Repo\项目代码\傲唐\财务管理(Financial.dll)\U_YWTCInPut.pas 1899/12/30 00:00:00.000.493,=D:\Dp10Repo\项目代码\RTBasics\A00通用模板\Unit1.pas 1899/12/30 00:00:00.000.213,=D:\Dp10Repo\项目代码\RTBasics\F02染色计划单\U_DyeCardInput.pas 2025/09/28 12:18:54.000.943,=D:\Dp10Repo\项目代码\D10sxYilanbuyi\F02染色计划单\U_DyeSimpleTechnicsList.pas 2025/11/01 09:33:01.000.459,=D:\Dp10Repo\项目代码\D10sxYilanbuyi\F02染色计划单\U_DyeTechnicsinputKaika.pas 2025/11/01 09:39:35.000.613,=D:\Dp10Repo\项目代码\D10sxYilanbuyi\F02染色计划单\U_DyeSimpleTechnicsKaiKa.pas + 2025/12/20 11:12:54.000.352,=D:\Dp10Repo\项目代码\D10sxYilanbuyi\F02染色计划单\U_framePDList.pas @@ -137,5 +138,7 @@ + + diff --git a/F02染色计划单/DyePlan.identcache b/F02染色计划单/DyePlan.identcache index 8493bfa..821a899 100644 Binary files a/F02染色计划单/DyePlan.identcache and b/F02染色计划单/DyePlan.identcache differ diff --git a/F02染色计划单/SpliterPosition.INI b/F02染色计划单/SpliterPosition.INI index b9df016..8aade5e 100644 --- a/F02染色计划单/SpliterPosition.INI +++ b/F02染色计划单/SpliterPosition.INI @@ -1,6 +1,6 @@ [DyeSimpleTechnicsList_Spliter] -Position1=902 -Position2=1230 +Position1=804 +Position2=1025 [DyeTechnicsList_Spliter] Position=1219 diff --git a/F02染色计划单/U_CraftSel.dfm b/F02染色计划单/U_CraftSel.dfm index afc908d..1eeb3d1 100644 --- a/F02染色计划单/U_CraftSel.dfm +++ b/F02染色计划单/U_CraftSel.dfm @@ -42,6 +42,13 @@ inherited frmCraftSel: TfrmCraftSel HeaderAlignmentHorz = taCenter Width = 49 end + object TV1F_Name: TcxGridDBColumn + Caption = #22383#24067#32534#21495 + DataBinding.FieldName = 'F_Name' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 140 + end object TV1Column1: TcxGridDBColumn Caption = #24037#33402#32534#21495 DataBinding.FieldName = 'DTMNO' @@ -93,6 +100,7 @@ inherited frmCraftSel: TfrmCraftSel ParentFont = False ShowCaptions = True TabOrder = 1 + ExplicitTop = -6 object ToolButton1: TToolButton Left = 0 Top = 0 diff --git a/F02染色计划单/U_CraftSel.pas b/F02染色计划单/U_CraftSel.pas index 9dbff8e..40ee122 100644 --- a/F02染色计划单/U_CraftSel.pas +++ b/F02染色计划单/U_CraftSel.pas @@ -55,6 +55,7 @@ type TV1SSel: TcxGridDBColumn; Label2: TLabel; DTMName: TEdit; + TV1F_Name: TcxGridDBColumn; procedure FormCreate(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure FormShow(Sender: TObject); diff --git a/F02染色计划单/U_DyePlanCardInput.dfm b/F02染色计划单/U_DyePlanCardInput.dfm index 1e737f6..2719df9 100644 --- a/F02染色计划单/U_DyePlanCardInput.dfm +++ b/F02染色计划单/U_DyePlanCardInput.dfm @@ -1,6 +1,6 @@ inherited frmDyePlanCardInput: TfrmDyePlanCardInput Caption = #27969#31243#21345#24320#21345 - ClientHeight = 789 + ClientHeight = 794 ClientWidth = 1448 Color = clWhite Font.Charset = GB2312_CHARSET @@ -10,28 +10,28 @@ inherited frmDyePlanCardInput: TfrmDyePlanCardInput OnClose = FormClose OnKeyDown = FormKeyDown ExplicitWidth = 1464 - ExplicitHeight = 828 + ExplicitHeight = 833 PixelsPerInch = 96 TextHeight = 12 object Panel3: TPanel [0] Left = 0 Top = 0 Width = 1448 - Height = 789 + Height = 794 Align = alClient TabOrder = 0 object Panel5: TPanel Left = 1 Top = 1 Width = 1446 - Height = 352 + Height = 570 Align = alTop TabOrder = 0 object cxPageControl1: TcxPageControl Left = 1 Top = 1 Width = 1444 - Height = 350 + Height = 568 Align = alClient Color = clWhite Font.Charset = GB2312_CHARSET @@ -46,7 +46,9 @@ inherited frmDyePlanCardInput: TfrmDyePlanCardInput Properties.ActivePage = cxTabSheet3 Properties.CustomButtons.Buttons = <> Properties.Style = 6 - ClientRectBottom = 350 + ExplicitLeft = 0 + ExplicitTop = -3 + ClientRectBottom = 568 ClientRectRight = 1444 ClientRectTop = 32 object cxTabSheet3: TcxTabSheet @@ -54,14 +56,13 @@ inherited frmDyePlanCardInput: TfrmDyePlanCardInput ImageIndex = 3 object pnlkpkk: TPanel Left = 0 - Top = 271 + Top = 489 Width = 1444 Height = 47 Align = alBottom Color = clWhite ParentBackground = False TabOrder = 0 - ExplicitTop = 269 object Label1: TLabel Left = 43 Top = 16 @@ -183,10 +184,10 @@ inherited frmDyePlanCardInput: TfrmDyePlanCardInput Font.Height = -12 Font.Name = #23435#20307 Font.Style = [] - ItemIndex = 2 + ItemIndex = 0 ParentFont = False TabOrder = 3 - Text = #22806#22238#20462 + Text = #27491#24120#21345 Items.Strings = ( #27491#24120#21345 #26679#24067#21345 @@ -239,7 +240,7 @@ inherited frmDyePlanCardInput: TfrmDyePlanCardInput end object pnlOrder: TPanel Left = 0 - Top = 174 + Top = 392 Width = 1444 Height = 97 Align = alBottom @@ -248,7 +249,6 @@ inherited frmDyePlanCardInput: TfrmDyePlanCardInput Color = clWhite ParentBackground = False TabOrder = 1 - ExplicitLeft = -1 object Label23: TLabel Left = 43 Top = 11 @@ -609,7 +609,7 @@ inherited frmDyePlanCardInput: TfrmDyePlanCardInput Left = 0 Top = 0 Width = 1444 - Height = 174 + Height = 392 Align = alClient Font.Charset = GB2312_CHARSET Font.Color = clWindowText @@ -619,6 +619,7 @@ inherited frmDyePlanCardInput: TfrmDyePlanCardInput ParentFont = False PopupMenu = PM_2 TabOrder = 2 + ExplicitLeft = 3 ExplicitTop = 1 object TV2: TcxGridDBTableView OnDblClick = TV2DblClick @@ -777,6 +778,13 @@ inherited frmDyePlanCardInput: TfrmDyePlanCardInput HeaderAlignmentHorz = taCenter Width = 90 end + object TV2note: TcxGridDBColumn + Caption = #22383#24067#24211#23384#22791#27880 + DataBinding.FieldName = 'note' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 135 + end end object cxGrid2Level1: TcxGridLevel GridView = TV2 @@ -786,245 +794,23 @@ inherited frmDyePlanCardInput: TfrmDyePlanCardInput object cxTabSheet4: TcxTabSheet Caption = ' '#22238#20462#25286#24320' ' ImageIndex = 3 - object cxGrid3: TcxGrid - Left = 0 - Top = 89 - Width = 1444 - Height = 229 - Align = alClient - Font.Charset = GB2312_CHARSET - Font.Color = clWindowText - Font.Height = -12 - Font.Name = #23435#20307 - Font.Style = [] - ParentFont = False - TabOrder = 0 - object TV3: TcxGridDBTableView - OnDblClick = TV3DblClick - 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 - Format = #21512#35745' 0 '#34892 - Kind = skCount - Column = cxGridDBColumn8 - end - item - Kind = skSum - Column = cxGridDBColumn14 - end - item - Kind = skSum - Column = cxGridDBColumn15 - end> - DataController.Summary.SummaryGroups = <> - OptionsCustomize.ColumnFiltering = False - OptionsData.Deleting = False - OptionsView.Footer = True - OptionsView.GroupByBox = False - OptionsView.IndicatorWidth = 20 - object TV3Column9: TcxGridDBColumn - Caption = #23458#25143 - DataBinding.FieldName = 'CustName' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Width = 102 - end - object cxGridDBColumn8: TcxGridDBColumn - Caption = #21345#21495 - DataBinding.FieldName = 'PCID' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 78 - end - object cxGridDBColumn9: TcxGridDBColumn - Caption = #26085#26399 - DataBinding.FieldName = 'PCTime' - DataBinding.IsNullValueType = True - PropertiesClassName = 'TcxDateEditProperties' - Properties.SaveTime = False - Properties.ShowTime = False - HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 58 - end - object cxGridDBColumn10: TcxGridDBColumn - Caption = #31867#22411 - DataBinding.FieldName = 'PCType' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 83 - end - object cxGridDBColumn11: TcxGridDBColumn - Caption = #38376#24133 - DataBinding.FieldName = 'C_Width' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - end - object cxGridDBColumn12: TcxGridDBColumn - Caption = #20811#37325 - DataBinding.FieldName = 'C_GramWeight' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - end - object cxGridDBColumn13: TcxGridDBColumn - Caption = #21697#21517 - DataBinding.FieldName = 'C_Name' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - end - object cxGridDBColumn14: TcxGridDBColumn - Caption = #21305#25968 - DataBinding.FieldName = 'PCPiece' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Width = 62 - end - object cxGridDBColumn15: TcxGridDBColumn - Caption = #25968#37327 - DataBinding.FieldName = 'PCQty' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Width = 71 - end - object TV3Column1: TcxGridDBColumn - Caption = #35843#29992#21305#25968 - DataBinding.FieldName = 'MvPiece' - DataBinding.IsNullValueType = True - PropertiesClassName = 'TcxTextEditProperties' - Properties.OnEditValueChanged = TV3Column1PropertiesEditValueChanged - Styles.Content = DataLink_DyePlan.FoneRed - Styles.Header = DataLink_DyePlan.FoneRed - end - object TV3Column2: TcxGridDBColumn - Caption = #35843#29992#25968#37327 - DataBinding.FieldName = 'MvQty' - DataBinding.IsNullValueType = True - Styles.Content = DataLink_DyePlan.FoneRed - Styles.Header = DataLink_DyePlan.FoneRed - end - object cxGridDBColumn16: TcxGridDBColumn - Caption = #33394#21495 - DataBinding.FieldName = 'C_ColorNo' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Width = 57 - end - object cxGridDBColumn17: TcxGridDBColumn - Caption = #39068#33394 - DataBinding.FieldName = 'C_Color' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Width = 78 - end - object cxGridDBColumn18: TcxGridDBColumn - Caption = #21333#20301 - DataBinding.FieldName = 'PCUnit' - DataBinding.IsNullValueType = True - PropertiesClassName = 'TcxComboBoxProperties' - Properties.DropDownListStyle = lsFixedList - Properties.Items.Strings = ( - 'M' - 'Y' - 'KG') - Properties.ReadOnly = False - HeaderAlignmentHorz = taCenter - Width = 60 - end - object cxGridDBColumn19: TcxGridDBColumn - Caption = #22791#27880 - DataBinding.FieldName = 'carnote' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Width = 195 - end - object cxGridDBColumn20: TcxGridDBColumn - Caption = #30333#22383#25209#21495 - DataBinding.FieldName = 'GC_BatchNo' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Width = 81 - end - object cxGridDBColumn21: TcxGridDBColumn - Tag = 7 - Caption = #24037#24207 - DataBinding.FieldName = 'GlideList' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Styles.Content = DataLink_DyePlan.FontBlue - Styles.Header = DataLink_DyePlan.FontBlue - Width = 347 - end - object TV3Column3: TcxGridDBColumn - Caption = #35843#20837#21305#25968 - DataBinding.FieldName = 'PSC_InPiece' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Options.Editing = False - end - object TV3Column4: TcxGridDBColumn - Caption = #35843#20837#25968#37327 - DataBinding.FieldName = 'PSC_InQty' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Options.Editing = False - end - object TV3Column5: TcxGridDBColumn - Caption = #35843#20986#21305#25968 - DataBinding.FieldName = 'PSC_OutPiece' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Options.Editing = False - end - object TV3Column6: TcxGridDBColumn - Caption = #35843#20986#25968#37327 - DataBinding.FieldName = 'PSC_OutQty' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Options.Editing = False - end - object TV3Column7: TcxGridDBColumn - Caption = #21487#29992#21305#25968 - DataBinding.FieldName = 'PSC_StkPiece' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Options.Editing = False - end - object TV3Column8: TcxGridDBColumn - Caption = #21487#29992#25968#37327 - DataBinding.FieldName = 'PSC_StkQty' - DataBinding.IsNullValueType = True - HeaderAlignmentHorz = taCenter - Options.Editing = False - end - end - object cxGridLevel1: TcxGridLevel - GridView = TV3 - end - end object Panel6: TPanel Left = 0 - Top = 0 + Top = 424 Width = 1444 - Height = 89 - Align = alTop + Height = 112 + Align = alBottom BevelInner = bvRaised BevelOuter = bvLowered Color = clWhite ParentBackground = False - TabOrder = 1 + TabOrder = 0 object Label20: TLabel - Left = 571 - Top = 27 + Left = 594 + Top = 58 Width = 120 Height = 29 - Caption = #25195#25551#21345#21495 + Caption = #36873#25321#21345#32452 Font.Charset = GB2312_CHARSET Font.Color = clMaroon Font.Height = -29 @@ -1033,11 +819,11 @@ inherited frmDyePlanCardInput: TfrmDyePlanCardInput ParentFont = False end object Label13: TLabel - Left = 26 - Top = 23 - Width = 24 + Left = 189 + Top = 47 + Width = 48 Height = 12 - Caption = #38376#24133 + Caption = #24320#21345#21305#25968 Font.Charset = GB2312_CHARSET Font.Color = clBlack Font.Height = -12 @@ -1046,11 +832,11 @@ inherited frmDyePlanCardInput: TfrmDyePlanCardInput ParentFont = False end object Label14: TLabel - Left = 186 - Top = 23 - Width = 24 + Left = 339 + Top = 43 + Width = 48 Height = 12 - Caption = #20811#37325 + Caption = #24320#21345#25968#37327 Font.Charset = GB2312_CHARSET Font.Color = clBlack Font.Height = -12 @@ -1059,11 +845,11 @@ inherited frmDyePlanCardInput: TfrmDyePlanCardInput ParentFont = False end object Label18: TLabel - Left = 28 - Top = 49 - Width = 24 + Left = 191 + Top = 73 + Width = 48 Height = 12 - Caption = #39068#33394 + Caption = #24320#21345#21305#25968 Font.Charset = GB2312_CHARSET Font.Color = clBlack Font.Height = -12 @@ -1072,11 +858,11 @@ inherited frmDyePlanCardInput: TfrmDyePlanCardInput ParentFont = False end object Label19: TLabel - Left = 188 - Top = 49 - Width = 24 + Left = 341 + Top = 69 + Width = 48 Height = 12 - Caption = #33394#21495 + Caption = #24320#21345#25968#37327 Font.Charset = GB2312_CHARSET Font.Color = clBlack Font.Height = -12 @@ -1085,21 +871,99 @@ inherited frmDyePlanCardInput: TfrmDyePlanCardInput ParentFont = False end object Label21: TLabel - Left = 345 - Top = 23 - Width = 26 + Left = 97 + Top = 47 + Width = 24 Height = 12 - Caption = #21333#20301 + Caption = #36710#25968 Font.Charset = GB2312_CHARSET Font.Color = clBlack Font.Height = -12 Font.Name = #23435#20307 - Font.Style = [fsBold] + Font.Style = [] ParentFont = False end object Label22: TLabel - Left = 345 - Top = 49 + Left = 99 + Top = 73 + Width = 24 + Height = 12 + Caption = #36710#25968 + Font.Charset = GB2312_CHARSET + Font.Color = clBlack + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label25: TLabel + Left = 17 + Top = 47 + Width = 42 + Height = 12 + Caption = #21345#32452'1'#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label26: TLabel + Left = 19 + Top = 73 + Width = 42 + Height = 12 + Caption = #21345#32452'2'#65306 + Font.Charset = GB2312_CHARSET + Font.Color = clRed + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label27: TLabel + Left = 971 + Top = 47 + Width = 48 + Height = 12 + Caption = #21345#32452#25968#37327 + Font.Charset = GB2312_CHARSET + Font.Color = clBlack + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label28: TLabel + Left = 973 + Top = 21 + Width = 48 + Height = 12 + Caption = #21345#32452#21305#25968 + Font.Charset = GB2312_CHARSET + Font.Color = clBlack + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label29: TLabel + Left = 1133 + Top = 21 + Width = 48 + Height = 12 + Caption = #35745#21010#21333#21495 + Font.Charset = GB2312_CHARSET + Font.Color = clBlack + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object Label30: TLabel + Left = 95 + Top = 23 Width = 26 Height = 12 Caption = #31867#22411 @@ -1110,41 +974,67 @@ inherited frmDyePlanCardInput: TfrmDyePlanCardInput Font.Style = [fsBold] ParentFont = False end - object PCID: TEdit - Tag = 2 - Left = 697 - Top = 23 - Width = 224 - Height = 37 + object Label31: TLabel + Left = 969 + Top = 74 + Width = 52 + Height = 12 + Caption = #20135#21697#24037#24207 Font.Charset = GB2312_CHARSET Font.Color = clMaroon - Font.Height = -29 + Font.Height = -12 Font.Name = #23435#20307 Font.Style = [fsBold] ParentFont = False - TabOrder = 0 - OnKeyPress = PCIDKeyPress end - object Button1: TButton - Left = 454 - Top = 27 + object Label32: TLabel + Left = 1133 + Top = 40 + Width = 48 + Height = 12 + Caption = #24037#33402#20027#38190 + Font.Charset = GB2312_CHARSET + Font.Color = clBlack + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object TbAbnormalKaiKa: TButton + Left = 501 + Top = 51 Width = 87 Height = 35 - Caption = #24320#21345 + Caption = #24322#24120#24320#21345 Font.Charset = GB2312_CHARSET Font.Color = clWindowText Font.Height = -21 Font.Name = #23435#20307 Font.Style = [fsBold] ParentFont = False - TabOrder = 1 - OnClick = Button1Click + TabOrder = 0 + OnClick = TbAbnormalKaiKaClick end - object Re_Width: TEdit + object PCPiece1: TEdit Tag = 2 - Left = 58 - Top = 19 - Width = 100 + Left = 239 + Top = 43 + Width = 80 + Height = 20 + Font.Charset = GB2312_CHARSET + Font.Color = clBlack + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 1 + OnChange = PCPiece1Change + end + object PCQty1: TEdit + Tag = 2 + Left = 395 + Top = 43 + Width = 80 Height = 20 Font.Charset = GB2312_CHARSET Font.Color = clBlack @@ -1153,12 +1043,13 @@ inherited frmDyePlanCardInput: TfrmDyePlanCardInput Font.Style = [] ParentFont = False TabOrder = 2 + OnChange = PCQty1Change end - object Re_GramWeight: TEdit + object PCPiece2: TEdit Tag = 2 - Left = 218 - Top = 19 - Width = 100 + Left = 239 + Top = 69 + Width = 80 Height = 20 Font.Charset = GB2312_CHARSET Font.Color = clBlack @@ -1166,13 +1057,14 @@ inherited frmDyePlanCardInput: TfrmDyePlanCardInput Font.Name = #23435#20307 Font.Style = [] ParentFont = False + ReadOnly = True TabOrder = 3 end - object Re_Color: TEdit + object PCQty2: TEdit Tag = 2 - Left = 58 - Top = 45 - Width = 100 + Left = 395 + Top = 69 + Width = 80 Height = 20 Font.Charset = GB2312_CHARSET Font.Color = clBlack @@ -1180,13 +1072,22 @@ inherited frmDyePlanCardInput: TfrmDyePlanCardInput Font.Name = #23435#20307 Font.Style = [] ParentFont = False + ReadOnly = True TabOrder = 4 end - object Re_ColorNo: TEdit + object AbnormalKaZu: TBtnEditA + Left = 720 + Top = 50 + Width = 224 + Height = 30 + TabOrder = 5 + OnBtnClick = AbnormalKaZuBtnClick + end + object carNum1: TEdit Tag = 2 - Left = 218 - Top = 45 - Width = 100 + Left = 127 + Top = 43 + Width = 40 Height = 20 Font.Charset = GB2312_CHARSET Font.Color = clBlack @@ -1194,47 +1095,328 @@ inherited frmDyePlanCardInput: TfrmDyePlanCardInput Font.Name = #23435#20307 Font.Style = [] ParentFont = False - TabOrder = 5 - end - object REUnit: TComboBox - Left = 377 - Top = 19 - Width = 60 - Height = 20 - Style = csDropDownList - Font.Charset = GB2312_CHARSET - Font.Color = clWindowText - Font.Height = -12 - Font.Name = #23435#20307 - Font.Style = [] - ItemIndex = 0 - ParentFont = False TabOrder = 6 - Text = 'M' - Items.Strings = ( - 'M' - 'Y' - 'KG') end - object RePCType: TComboBox - Left = 377 - Top = 45 - Width = 60 + object carNum2: TEdit + Tag = 2 + Left = 129 + Top = 69 + Width = 40 Height = 20 - Style = csDropDownList Font.Charset = GB2312_CHARSET - Font.Color = clWindowText + Font.Color = clBlack Font.Height = -12 Font.Name = #23435#20307 Font.Style = [] - ItemIndex = 0 ParentFont = False TabOrder = 7 - Text = #25286#20998#21345 + end + object KaZuQty: TEdit + Tag = 2 + Left = 1027 + Top = 43 + Width = 80 + Height = 20 + Font.Charset = GB2312_CHARSET + Font.Color = clBlack + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 8 + end + object KaZuPiece: TEdit + Tag = 2 + Left = 1027 + Top = 17 + Width = 80 + Height = 20 + Font.Charset = GB2312_CHARSET + Font.Color = clBlack + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 9 + end + object OrderNo1: TEdit + Tag = 2 + Left = 1187 + Top = 14 + Width = 80 + Height = 20 + Font.Charset = GB2312_CHARSET + Font.Color = clBlack + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 10 + end + object PCType1: TComboBox + Left = 127 + Top = 17 + Width = 93 + Height = 20 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ItemIndex = 0 + ParentFont = False + TabOrder = 11 + Text = #27491#24120#21345 Items.Strings = ( - #25286#20998#21345 - #22238#20462#21345 - #21512#24182#21345) + #27491#24120#21345 + #26679#24067#21345 + #22806#22238#20462) + end + object DTMPSlist1: TBtnEditA + Left = 1027 + Top = 69 + Width = 414 + Height = 20 + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + ReadOnly = True + TabOrder = 12 + OnBtnClick = DTMPSlist1BtnClick + end + object DTMID1: TEdit + Tag = 2 + Left = 1187 + Top = 40 + Width = 80 + Height = 20 + Font.Charset = GB2312_CHARSET + Font.Color = clBlack + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 13 + end + end + object cxGrid3: TcxGrid + Left = 0 + Top = 0 + Width = 1444 + Height = 424 + Align = alClient + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + PopupMenu = PM_3 + TabOrder = 1 + 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 = < + item + Kind = skSum + Position = spFooter + Column = cxGridDBColumn12 + end + item + Kind = skSum + Column = cxGridDBColumn12 + end + item + Kind = skSum + Position = spFooter + end + item + Kind = skSum + Position = spFooter + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.IncSearch = DataLink_DyePlan.SHuangSe + Styles.Header = DataLink_DyePlan.Default + Styles.Inactive = DataLink_DyePlan.SHuangSe + Styles.Selection = DataLink_DyePlan.SHuangSe + object cxGridDBColumn7: TcxGridDBColumn + Caption = #20837#24211#26102#38388 + DataBinding.FieldName = 'IOTime' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 87 + end + object cxGridDBColumn8: TcxGridDBColumn + Caption = #20837#24211#31867#22411 + DataBinding.FieldName = 'IOType' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end + object cxGridDBColumn9: TcxGridDBColumn + Caption = #29983#20135#35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 115 + end + object cxGridDBColumn10: TcxGridDBColumn + Tag = 2 + Caption = #25104#21697#21517#31216 + DataBinding.FieldName = 'C_Name' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 124 + end + object cxGridDBColumn11: TcxGridDBColumn + Caption = #22383#24067#21517#31216 + DataBinding.FieldName = 'F_Name' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 115 + end + object cxGridDBColumn12: TcxGridDBColumn + Caption = #21305#25968 + DataBinding.FieldName = 'StkPiece' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = DataLink_DyePlan.FontBlue + Styles.Header = DataLink_DyePlan.FontBlue + Width = 91 + end + object cxGridDBColumn13: TcxGridDBColumn + Tag = 2 + Caption = #25968#37327 + DataBinding.FieldName = 'STKQty' + DataBinding.IsNullValueType = True + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Styles.Content = DataLink_DyePlan.FontBlue + Styles.Header = DataLink_DyePlan.FontBlue + Width = 102 + end + object cxGridDBColumn14: 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 = 106 + end + object cxGridDBColumn15: TcxGridDBColumn + Caption = #25104#21697#38376#24133 + DataBinding.FieldName = 'C_Width' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 104 + end + object cxGridDBColumn16: TcxGridDBColumn + Tag = 2 + Caption = #22383#24067#38376#24133 + DataBinding.FieldName = 'F_Width' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + HeaderGlyphAlignmentHorz = taCenter + Options.Editing = False + Width = 94 + end + object cxGridDBColumn17: TcxGridDBColumn + Caption = #26448#36136 + DataBinding.FieldName = 'Material' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 100 + end + object cxGridDBColumn18: TcxGridDBColumn + Caption = #24037#33402#35201#27714 + DataBinding.FieldName = 'C_description' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 90 + end + object Tv3C_GramWeight: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'C_GramWeight' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 80 + end + object Tv3C_COLOR: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'C_COLOR' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 80 + end + object Tv3C_COLORNO: TcxGridDBColumn + Caption = #33394#21495 + DataBinding.FieldName = 'C_COLORNO' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 80 + end + object Tv3CustName: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustName' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 80 + end + object Tv3CINote: TcxGridDBColumn + Caption = #20135#21697#22791#27880 + DataBinding.FieldName = 'CINote' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 80 + end + object Tv3note: TcxGridDBColumn + Caption = #22383#24067#24211#23384#22791#27880 + DataBinding.FieldName = 'note' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 144 + end + end + object cxGridLevel1: TcxGridLevel + GridView = Tv3 end end end @@ -1242,16 +1424,16 @@ inherited frmDyePlanCardInput: TfrmDyePlanCardInput end object Panel4: TPanel Left = 1 - Top = 353 + Top = 571 Width = 1446 - Height = 435 + Height = 222 Align = alClient TabOrder = 1 object cxGrid1: TcxGrid Left = 1 Top = 39 Width = 1444 - Height = 395 + Height = 182 Align = alClient PopupMenu = PM_1 TabOrder = 0 @@ -1291,7 +1473,7 @@ inherited frmDyePlanCardInput: TfrmDyePlanCardInput Properties.ImmediatePost = True Properties.NullStyle = nssUnchecked HeaderAlignmentHorz = taCenter - Width = 32 + Width = 38 end object TV1KaZu: TcxGridDBColumn Caption = #21345#32452#21495 @@ -1583,13 +1765,13 @@ inherited frmDyePlanCardInput: TfrmDyePlanCardInput end inherited ADOQueryBaseCmd: TADOQuery Connection = DataLink_DyePlan.ADOLink - Left = 257 - Top = 448 + Left = 185 + Top = 408 end inherited ADOQueryBaseTemp: TADOQuery Connection = DataLink_DyePlan.ADOLink - Left = 145 - Top = 449 + Left = 81 + Top = 409 end inherited ImageList_new32: TImageList Left = 1328 @@ -1615,8 +1797,8 @@ inherited frmDyePlanCardInput: TfrmDyePlanCardInput object ADOQueryCmd: TADOQuery Connection = DataLink_DyePlan.ADOLink Parameters = <> - Left = 360 - Top = 452 + Left = 280 + Top = 412 end object ADOQueryTmp: TADOQuery Connection = DataLink_DyePlan.ADOLink @@ -1634,8 +1816,8 @@ inherited frmDyePlanCardInput: TfrmDyePlanCardInput Connection = DataLink_DyePlan.ADOLink LockType = ltReadOnly Parameters = <> - Left = 528 - Top = 456 + Left = 368 + Top = 408 end object DS_2: TDataSource DataSet = CDS_2 @@ -1649,7 +1831,7 @@ inherited frmDyePlanCardInput: TfrmDyePlanCardInput Top = 145 end object PM_2: TPopupMenu - Left = 617 + Left = 593 Top = 177 object N1: TMenuItem Caption = #20840#36873 @@ -1659,10 +1841,14 @@ inherited frmDyePlanCardInput: TfrmDyePlanCardInput Caption = #20840#24323 OnClick = N2Click end + object N3: TMenuItem + Caption = #22797#21046 + OnClick = N3Click + end end object PM_1: TPopupMenu - Left = 897 - Top = 473 + Left = 553 + Top = 553 object MenuItem1: TMenuItem Caption = #20840#36873 OnClick = MenuItem1Click @@ -1671,18 +1857,22 @@ inherited frmDyePlanCardInput: TfrmDyePlanCardInput Caption = #20840#24323 OnClick = MenuItem2Click end + object N4: TMenuItem + Caption = #22797#21046 + OnClick = N4Click + end end object GPM_2: TcxGridPopupMenu Grid = cxGrid2 PopupMenus = <> - Left = 408 - Top = 144 + Left = 400 + Top = 104 end object GPM_3: TcxGridPopupMenu Grid = cxGrid3 PopupMenus = <> - Left = 408 - Top = 192 + Left = 400 + Top = 168 end object CDS_3: TClientDataSet Aggregates = <> @@ -1713,4 +1903,20 @@ inherited frmDyePlanCardInput: TfrmDyePlanCardInput Left = 308 Top = 148 end + object PM_3: TPopupMenu + Left = 658 + Top = 178 + object q1: TMenuItem + Caption = #20840#36873 + OnClick = q1Click + end + object N5: TMenuItem + Caption = #20840#24323 + OnClick = N5Click + end + object N6: TMenuItem + Caption = #22797#21046 + OnClick = N6Click + end + end end diff --git a/F02染色计划单/U_DyePlanCardInput.pas b/F02染色计划单/U_DyePlanCardInput.pas index ffb0aa0..b836dcc 100644 --- a/F02染色计划单/U_DyePlanCardInput.pas +++ b/F02染色计划单/U_DyePlanCardInput.pas @@ -12,7 +12,7 @@ uses cxCheckBox, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, dxSkinsCore, dxSkinsDefaultPainters, dxDateRanges, U_BaseInput, System.ImageList, Vcl.ImgList, dxBarBuiltInMenu, cxGridCustomPopupMenu, cxGridPopupMenu, - cxButtonEdit, Vcl.Menus, cxPC, dxScrollbarAnnotations; + cxButtonEdit, Vcl.Menus, cxPC, dxScrollbarAnnotations, Clipbrd; type TfrmDyePlanCardInput = class(TfrmBaseInput) @@ -62,56 +62,26 @@ type cxPageControl1: TcxPageControl; cxTabSheet3: TcxTabSheet; cxTabSheet4: TcxTabSheet; - cxGrid3: TcxGrid; - TV3: TcxGridDBTableView; - cxGridDBColumn8: TcxGridDBColumn; - cxGridDBColumn9: TcxGridDBColumn; - cxGridDBColumn10: TcxGridDBColumn; - cxGridDBColumn11: TcxGridDBColumn; - cxGridDBColumn12: TcxGridDBColumn; - cxGridDBColumn13: TcxGridDBColumn; - cxGridDBColumn14: TcxGridDBColumn; - cxGridDBColumn15: TcxGridDBColumn; - cxGridDBColumn16: TcxGridDBColumn; - cxGridDBColumn17: TcxGridDBColumn; - cxGridDBColumn18: TcxGridDBColumn; - cxGridDBColumn19: TcxGridDBColumn; - cxGridDBColumn20: TcxGridDBColumn; - cxGridDBColumn21: TcxGridDBColumn; - cxGridLevel1: TcxGridLevel; Panel6: TPanel; Label20: TLabel; - PCID: TEdit; GPM_3: TcxGridPopupMenu; CDS_3: TClientDataSet; DS_3: TDataSource; - TV3Column1: TcxGridDBColumn; - TV3Column2: TcxGridDBColumn; - Button1: TButton; + TbAbnormalKaiKa: TButton; TV1Column12: TcxGridDBColumn; TV1Column13: TcxGridDBColumn; TV1Column14: TcxGridDBColumn; TV1Column15: TcxGridDBColumn; TV1Column16: TcxGridDBColumn; TV1Column17: TcxGridDBColumn; - TV3Column3: TcxGridDBColumn; - TV3Column4: TcxGridDBColumn; - TV3Column5: TcxGridDBColumn; - TV3Column6: TcxGridDBColumn; - TV3Column7: TcxGridDBColumn; - TV3Column8: TcxGridDBColumn; Label13: TLabel; Label14: TLabel; Label18: TLabel; Label19: TLabel; - Re_Width: TEdit; - Re_GramWeight: TEdit; - Re_Color: TEdit; - Re_ColorNo: TEdit; - Label21: TLabel; - REUnit: TComboBox; - Label22: TLabel; - RePCType: TComboBox; + PCPiece1: TEdit; + PCQty1: TEdit; + PCPiece2: TEdit; + PCQty2: TEdit; TV1Column18: TcxGridDBColumn; TV1Column19: TcxGridDBColumn; ADO_Order: TADOQuery; @@ -154,7 +124,6 @@ type Label24: TLabel; OrdQty: TEdit; OrdUnit: TEdit; - TV3Column9: TcxGridDBColumn; TV1Column20: TcxGridDBColumn; TV1Column21: TcxGridDBColumn; Label2: TLabel; @@ -177,6 +146,53 @@ type TV1C_description: TcxGridDBColumn; TV1CINote: TcxGridDBColumn; C_COLOR: TEdit; + AbnormalKaZu: TBtnEditA; + cxGrid3: TcxGrid; + Tv3: TcxGridDBTableView; + cxGridDBColumn7: TcxGridDBColumn; + cxGridDBColumn8: TcxGridDBColumn; + cxGridDBColumn9: TcxGridDBColumn; + cxGridDBColumn10: TcxGridDBColumn; + cxGridDBColumn11: TcxGridDBColumn; + cxGridDBColumn12: TcxGridDBColumn; + cxGridDBColumn13: TcxGridDBColumn; + cxGridDBColumn14: TcxGridDBColumn; + cxGridDBColumn15: TcxGridDBColumn; + cxGridDBColumn16: TcxGridDBColumn; + cxGridDBColumn17: TcxGridDBColumn; + cxGridDBColumn18: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + Label21: TLabel; + carNum1: TEdit; + Label22: TLabel; + carNum2: TEdit; + Label25: TLabel; + Label26: TLabel; + Label27: TLabel; + Label28: TLabel; + KaZuQty: TEdit; + KaZuPiece: TEdit; + PM_3: TPopupMenu; + N3: TMenuItem; + N4: TMenuItem; + q1: TMenuItem; + N5: TMenuItem; + N6: TMenuItem; + Label29: TLabel; + OrderNo1: TEdit; + Tv3C_GramWeight: TcxGridDBColumn; + Tv3C_COLOR: TcxGridDBColumn; + Tv3C_COLORNO: TcxGridDBColumn; + Label30: TLabel; + PCType1: TComboBox; + Label31: TLabel; + DTMPSlist1: TBtnEditA; + Tv3CustName: TcxGridDBColumn; + Tv3CINote: TcxGridDBColumn; + DTMID1: TEdit; + Label32: TLabel; + Tv3note: TcxGridDBColumn; + TV2note: TcxGridDBColumn; procedure FormDestroy(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure FormCreate(Sender: TObject); @@ -191,17 +207,26 @@ type procedure ToolButton1Click(Sender: TObject); procedure ToolButton3Click(Sender: TObject); procedure ToolButton2Click(Sender: TObject); - procedure PCIDKeyPress(Sender: TObject; var Key: Char); - procedure Button1Click(Sender: TObject); +// procedure PCIDKeyPress(Sender: TObject; var Key: Char); + procedure TbAbnormalKaiKaClick(Sender: TObject); procedure TV3DblClick(Sender: TObject); procedure OrderNoBtnClick(Sender: TObject); procedure C_COLORChange(Sender: TObject); - procedure TV3Column1PropertiesEditValueChanged(Sender: TObject); +// procedure TV3Column1PropertiesEditValueChanged(Sender: TObject); procedure DTMPSlistBtnClick(Sender: TObject); procedure TV2DblClick(Sender: TObject); procedure OrderNoKeyPress(Sender: TObject; var Key: Char); procedure avgCardClick(Sender: TObject); procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); + procedure AbnormalKaZuBtnClick(Sender: TObject); + procedure N3Click(Sender: TObject); + procedure N4Click(Sender: TObject); + procedure N6Click(Sender: TObject); + procedure q1Click(Sender: TObject); + procedure N5Click(Sender: TObject); + procedure DTMPSlist1BtnClick(Sender: TObject); + procedure PCPiece1Change(Sender: TObject); + procedure PCQty1Change(Sender: TObject); private FC_Code: string; FRollNum: integer; @@ -210,8 +235,8 @@ type procedure InitCard(); procedure InitOrder(); procedure InitGreyClothStk(); - function GetCard(): Boolean; - procedure InitRepairCard(PPCID: string); + procedure InitGreyClothStk1(); +// procedure InitRepairCard(PPCID: string); { Private declarations } procedure ShowDistributionResult(cardCount: Integer; pieceArray, qtyArray: array of Double); procedure CalculateDistribution(totalValue: Double; cardCount: Integer; var resultArray: array of Double); @@ -232,47 +257,9 @@ implementation uses U_DataLink, U_ZDYHelp, U_RTFun, U_DyePlanForCardSel, U_DyeProcessSel, U_DyeTechnicsSel, U_DyePlanCardSel, U_DyeGreyClothStkSel, U_DyeCardGlideEdit, - U_CraftSel; + U_CraftSel, U_Dye_AbnormalCardSel; {$R *.dfm} -function TfrmDyePlanCardInput.GetCard(): Boolean; -var - MCustNo, MC_Name: string; -begin - try - CDS_3.DisableControls; - if CDS_3.IsEmpty then - raise Exception.Create('ѡ̿'); - CDS_3.First; - while not CDS_3.eof do - begin - if Trim(MCustNo) = '' then - begin - MCustNo := trim(CDS_3.FieldByName('CustNo').AsString); - MC_Name := trim(CDS_3.FieldByName('C_Name').AsString); - end - else - begin - if MCustNo <> trim(CDS_3.FieldByName('CustNo').AsString) then - raise Exception.Create('ѡͻ'); - if MC_Name <> trim(CDS_3.FieldByName('C_Name').AsString) then - raise Exception.Create('ѡƷ'); - end; - if CDS_3.FieldByName('MvPiece').AsFloat > CDS_3.FieldByName('PSC_StkPiece').AsFloat then - raise Exception.Create('ƥޣ'); - if CDS_3.FieldByName('MvQty').AsFloat > CDS_3.FieldByName('PSC_StkQty').AsFloat then - raise Exception.Create('ޣ'); - CDS_3.Next; - end; - CDS_3.EnableControls; - Result := True; - except - Result := false; - CDS_3.EnableControls; - application.MessageBox(PChar(Exception(ExceptObject).Message), 'ʾϢ', 0); - end; -end; - procedure TfrmDyePlanCardInput.InitOrder(); var fsj: string; @@ -310,34 +297,34 @@ begin end; end; -procedure TfrmDyePlanCardInput.InitRepairCard(PPCID: string); -begin - - with ADOQueryTmp do - begin - close; - sql.Clear; - sql.Add('select A.*'); - sql.Add(',GlideList=[dbo].[F_Dye_Card_GlideList](A.PCID) '); - sql.Add(',MvPiece=PSC_StkPiece,MvQty=PSC_StkQty '); - sql.Add('from Dye_Plan_Card A '); - if TRIM(PPCID) = '' then - sql.Add('where 1=2 ') - else - sql.Add('where PCID= ' + Quotedstr(trim(PPCID))); - - open; - end; - if TRIM(PPCID) = '' then - begin - SCreateCDS(ADOQueryTmp, CDS_3); - end - else - begin - SInitCDSData(ADOQueryTmp, CDS_3); - end; - -end; +//procedure TfrmDyePlanCardInput.InitRepairCard(PPCID: string); +//begin +// +// with ADOQueryTmp do +// begin +// close; +// sql.Clear; +// sql.Add('select A.*'); +// sql.Add(',GlideList=[dbo].[F_Dye_Card_GlideList](A.PCID) '); +// sql.Add(',MvPiece=PSC_StkPiece,MvQty=PSC_StkQty '); +// sql.Add('from Dye_Plan_Card A '); +// if TRIM(PPCID) = '' then +// sql.Add('where 1=2 ') +// else +// sql.Add('where PCID= ' + Quotedstr(trim(PPCID))); +// +// open; +// end; +// if TRIM(PPCID) = '' then +// begin +// SCreateCDS(ADOQueryTmp, CDS_3); +// end +// else +// begin +// SInitCDSData(ADOQueryTmp, CDS_3); +// end; +// +//end; procedure TfrmDyePlanCardInput.InitGreyClothStk(); begin @@ -348,19 +335,43 @@ begin Filtered := False; Close; sql.Clear; - sql.Add(' select A.OrderNo, A.C_Name, max(A.F_Name) as F_Name , max(A.QtyUnit) as QtyUnit , max(A.Material) as Material,SUM(A.StkQty) as StkQty, SUM(A.StkPiece) as StkPiece '); - sql.Add(' ,IOTime = min(A.IOTime) ,IOType = max(A.ioType) ,C_Width = max(A.C_Width) ,F_Width = max(A.F_Width),C_description = max(B.C_description)'); + sql.Add(' select A.OrderNo ,A.QtyUnit,A.ioType,IOTime = min(A.IOTime)'); + SQL.Add(' ,SUM(A.StkQty) as StkQty, SUM(A.StkPiece) as StkPiece ,A.note'); + sql.add(' ,B.custNo,B.CustName,B.MainID'); + SQL.Add(' ,C.C_Name,C.C_Code,C.C_Width,C.C_GramWeight,C.C_COLOR,C.C_COLORNO '); + SQL.Add(' ,C.F_Name,C.F_Width,C.Material,C.CINote,b.C_description,C.DTMID '); sql.Add(' from BS_Cloth_IO A left join Dye_Plan_Main B on A.OrderNo= B.OrderNo '); + SQL.Add(' left join BS_Cloth_Info C on C.C_Name=B.C_Name'); SQL.Add(' where isnull(A.STKName,'''')=''Ⱦɫ'' and A.IOFlag='''' '); // SQL.Add(' and EXISTS(select * from [dbo].[F_Tool_SplitString](' + quotedstr(FGC_STKID) + ','','' ) X where X.RTValue=A.StkId AND ISNULL(RTValue,'''')<>'''') '); - SQL.Add(' and A.OrderNo= ' + QuotedStr(trim(OrderNo.Text))); - SQL.Add(' group by A.OrderNo, A.C_Name'); + sql.Add(' and not exists(select * from BS_Cloth_io X where X.StkQty=0 and X.StkPiece=0 and X.BCIOID = A.BCIOID) '); + if trim(OrderNo.Text) <> '' then + begin + SQL.Add(' and A.OrderNo= ' + QuotedStr(trim(OrderNo.Text))); + end; + SQL.Add(' group by A.OrderNo,A.QtyUnit,A.ioType,A.note,B.custNo,B.CustName,B.MainID'); + SQL.Add(' ,C.C_Name,C.C_Code,C.C_Width,C.C_GramWeight,C.C_COLOR,C.C_COLORNO'); + SQL.Add(' ,C.F_Name,C.F_Width,C.Material,C.CINote,B.C_description,C.DTMID '); // ShowMessage(sql.Text); Open; end; SCreateCDS(ADO_PB, CDS_2); SInitCDSData(ADO_PB, CDS_2); +// if (ADO_PB.FieldByName('DTMID').AsString = '') or (ADO_PB.FieldByName('DTMID').AsString = null) then +// begin +// Application.MessageBox('δĬϹ', 'ʾϢ', MB_OK); +// end; +// DTMID1.Text := ADO_PB.FieldByName('DTMID').AsString; +// with ADOQueryCmd do +// begin +// Close; +// sql.Clear; +// SQL.Add(' select * from Dye_Technics_Main where DTMID = ' + QuotedStr(Trim(DTMID1.Text))); +// Open; +// end; +// DTMPSlist1.Text := ADOQueryCmd.FieldByName('DTMPSlist').AsString; + with ADO_PB do begin Filtered := False; @@ -370,10 +381,146 @@ begin sql.Add(' from BS_Cloth_IO A where isnull(STKName,'''')=''Ⱦɫ'' '); SQL.Add(' and A.IOFlag='''' '); // SQL.Add(' and EXISTS(select * from [dbo].[F_Tool_SplitString](' + quotedstr(FGC_STKID) + ','','' ) X where X.RTValue=A.StkId AND ISNULL(RTValue,'''')<>'''') '); - SQL.Add(' and A.OrderNo= ' + QuotedStr(trim(OrderNo.Text))); + SQL.Add(' and A.OrderNo= ' + QuotedStr(trim(OrderNo1.Text))); // ShowMessage(sql.Text); Open; end; + FGC_STKID := ''; + ADO_PB.First; + while not ADO_PB.Eof do + begin + if (FGC_STKID <> '') and (FGC_STKID <> null) then + begin + FGC_STKID := ADO_PB.FieldByName('StkID').AsString + ',' + FGC_STKID; + end + else + begin + FGC_STKID := ADO_PB.FieldByName('StkID').AsString; + end; + + ADO_PB.Next; + end; + + finally + ADO_PB.EnableControls; + end; + + +// try +// ADO_PB.DisableControls; +// with ADO_PB do +// begin +// Filtered := False; +// Close; +// sql.Clear; +// sql.Add(' select A.OrderNo, A.C_Name, max(A.F_Name) as F_Name , max(A.QtyUnit) as QtyUnit , max(A.Material) as Material,SUM(A.StkQty) as StkQty, SUM(A.StkPiece) as StkPiece '); +// sql.Add(' ,IOTime = min(A.IOTime) ,IOType = max(A.ioType) ,C_Width = max(A.C_Width) ,F_Width = max(A.F_Width),C_description = max(B.C_description)'); +// sql.Add(' from BS_Cloth_IO A left join Dye_Plan_Main B on A.OrderNo= B.OrderNo '); +// SQL.Add(' where isnull(A.STKName,'''')=''Ⱦɫ'' and A.IOFlag='''' '); +//// SQL.Add(' and EXISTS(select * from [dbo].[F_Tool_SplitString](' + quotedstr(FGC_STKID) + ','','' ) X where X.RTValue=A.StkId AND ISNULL(RTValue,'''')<>'''') '); +// if trim(OrderNo.Text) <> '' then +// begin +// SQL.Add(' and A.OrderNo= ' + QuotedStr(trim(OrderNo.Text))); +// end; +// SQL.Add(' group by A.OrderNo, A.C_Name'); +//// ShowMessage(sql.Text); +// Open; +// end; +// SCreateCDS(ADO_PB, CDS_2); +// SInitCDSData(ADO_PB, CDS_2); +// +// with ADO_PB do +// begin +// Filtered := False; +// Close; +// sql.Clear; +// sql.Add(' select A.* '); +// sql.Add(' from BS_Cloth_IO A where isnull(STKName,'''')=''Ⱦɫ'' '); +// SQL.Add(' and A.IOFlag='''' '); +//// SQL.Add(' and EXISTS(select * from [dbo].[F_Tool_SplitString](' + quotedstr(FGC_STKID) + ','','' ) X where X.RTValue=A.StkId AND ISNULL(RTValue,'''')<>'''') '); +// SQL.Add(' and A.OrderNo= ' + QuotedStr(trim(OrderNo.Text))); +//// ShowMessage(sql.Text); +// Open; +// end; +// ADO_PB.First; +// while not ADO_PB.Eof do +// begin +// if (FGC_STKID <> '') and (FGC_STKID <> null) then +// begin +// FGC_STKID := ADO_PB.FieldByName('StkID').AsString + ',' + FGC_STKID; +// end +// else +// begin +// FGC_STKID := ADO_PB.FieldByName('StkID').AsString; +// end; +// +// ADO_PB.Next; +// end; +// finally +// ADO_PB.EnableControls; +// end; + +end; + +procedure TfrmDyePlanCardInput.InitGreyClothStk1(); +begin + try + ADO_PB.DisableControls; + with ADO_PB do + begin + Filtered := False; + Close; + sql.Clear; + sql.Add(' select A.OrderNo ,A.QtyUnit,A.ioType,IOTime = min(A.IOTime)'); + SQL.Add(' ,SUM(A.StkQty) as StkQty, SUM(A.StkPiece) as StkPiece ,A.note'); + sql.add(' ,B.custNo,B.CustName,B.MainID'); + SQL.Add(' ,C.C_Name,C.C_Code,C.C_Width,C.C_GramWeight,C.C_COLOR,C.C_COLORNO '); + SQL.Add(' ,C.F_Name,C.F_Width,C.Material,C.CINote,b.C_description,C.DTMID '); + sql.Add(' from BS_Cloth_IO A left join Dye_Plan_Main B on A.OrderNo= B.OrderNo '); + SQL.Add(' left join BS_Cloth_Info C on C.C_Name=B.C_Name'); + SQL.Add(' where isnull(A.STKName,'''')=''Ⱦɫ'' and A.IOFlag='''' '); +// SQL.Add(' and EXISTS(select * from [dbo].[F_Tool_SplitString](' + quotedstr(FGC_STKID) + ','','' ) X where X.RTValue=A.StkId AND ISNULL(RTValue,'''')<>'''') '); + if trim(OrderNo1.Text) <> '' then + begin + SQL.Add(' and A.OrderNo= ' + QuotedStr(trim(OrderNo1.Text))); + end; + SQL.Add(' group by A.OrderNo,A.QtyUnit,A.ioType,A.note,B.custNo,B.CustName,B.MainID'); + SQL.Add(' ,C.C_Name,C.C_Code,C.C_Width,C.C_GramWeight,C.C_COLOR,C.C_COLORNO'); + SQL.Add(' ,C.F_Name,C.F_Width,C.Material,C.CINote,B.C_description,C.DTMID '); +// ShowMessage(sql.Text); + Open; + end; + SCreateCDS(ADO_PB, CDS_3); + SInitCDSData(ADO_PB, CDS_3); + + if (ADO_PB.FieldByName('DTMID').AsString = '') or (ADO_PB.FieldByName('DTMID').AsString = null) then + begin + Application.MessageBox('δĬϹ', 'ʾϢ', MB_OK); + end; + DTMID1.Text := ADO_PB.FieldByName('DTMID').AsString; + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add(' select * from Dye_Technics_Main where DTMID = ' + QuotedStr(Trim(DTMID1.Text))); + Open; + end; + DTMPSlist1.Text := ADOQueryCmd.FieldByName('DTMPSlist').AsString; + + with ADO_PB do + begin + Filtered := False; + Close; + sql.Clear; + sql.Add(' select A.* '); + sql.Add(' from BS_Cloth_IO A where isnull(STKName,'''')=''Ⱦɫ'' '); + SQL.Add(' and A.IOFlag='''' '); +// SQL.Add(' and EXISTS(select * from [dbo].[F_Tool_SplitString](' + quotedstr(FGC_STKID) + ','','' ) X where X.RTValue=A.StkId AND ISNULL(RTValue,'''')<>'''') '); + SQL.Add(' and A.OrderNo= ' + QuotedStr(trim(OrderNo1.Text))); +// ShowMessage(sql.Text); + Open; + end; + FGC_STKID := ''; ADO_PB.First; while not ADO_PB.Eof do begin @@ -417,6 +564,29 @@ begin SelOKNo(CDS_2, False); end; +procedure TfrmDyePlanCardInput.N3Click(Sender: TObject); +begin + Clipboard.SetTextBuf(PChar(Trim(CDS_2.fieldbyname(TV2.Controller.FocusedColumn.DataBinding.FilterFieldName).AsString))); + +end; + +procedure TfrmDyePlanCardInput.N4Click(Sender: TObject); +begin + Clipboard.SetTextBuf(PChar(Trim(CDS_1.fieldbyname(TV1.Controller.FocusedColumn.DataBinding.FilterFieldName).AsString))); +end; + +procedure TfrmDyePlanCardInput.N5Click(Sender: TObject); +begin + SelOKNo(CDS_3, false); + +end; + +procedure TfrmDyePlanCardInput.N6Click(Sender: TObject); +begin + Clipboard.SetTextBuf(PChar(Trim(CDS_3.fieldbyname(TV3.Controller.FocusedColumn.DataBinding.FilterFieldName).AsString))); + +end; + procedure TfrmDyePlanCardInput.OrderNoBtnClick(Sender: TObject); begin @@ -476,18 +646,34 @@ begin end; -procedure TfrmDyePlanCardInput.PCIDKeyPress(Sender: TObject; var Key: Char); +procedure TfrmDyePlanCardInput.PCPiece1Change(Sender: TObject); begin - if Key = #13 then - begin - if Trim(PCID.Text) = '' then - exit; - InitRepairCard(PCID.Text); - PCID.Text := ''; - end; + // + PCPiece2.Text := IntToStr(StrToInt(KaZuPiece.Text) - StrToInt(PCPiece1.Text)); +end; + +procedure TfrmDyePlanCardInput.PCQty1Change(Sender: TObject); +begin + PCQty2.Text := IntToStr(StrToInt(KaZuQty.Text) - StrToInt(PCQty1.Text)); +end; + +procedure TfrmDyePlanCardInput.q1Click(Sender: TObject); +begin + SelOKNo(CDS_3, True); end; +//procedure TfrmDyePlanCardInput.PCIDKeyPress(Sender: TObject; var Key: Char); +//begin +// if Key = #13 then +// begin +// if Trim(PCID.Text) = '' then +// exit; +// InitRepairCard(PCID.Text); +// PCID.Text := ''; +// end; +//end; + procedure TfrmDyePlanCardInput.InitCard(); begin @@ -522,6 +708,33 @@ begin end; end; +procedure TfrmDyePlanCardInput.DTMPSlist1BtnClick(Sender: TObject); +begin + try + if OrderNo1.Text = '' then + begin + Application.MessageBox('ѡƻ', 'ʾϢ', MB_OK); + exit; + end; + frmCraftSel := TfrmCraftSel.Create(Application); + with frmCraftSel do + begin + fcode := Self.CDS_3.FieldByName('C_Code').AsString; + fC_name := Self.CDS_3.FieldByName('C_Name').AsString; + if ShowModal = 1 then + begin + with frmCraftSel.CDS_1 do + begin + Self.DTMPSlist1.Text := frmCraftSel.CDS_1.FieldByName('DTMPSlist').Value; + Self.DTMID1.Text := frmCraftSel.CDS_1.FieldByName('DTMID').Value; + end; + end; + end; + finally + frmCraftSel.Free; + end; +end; + procedure TfrmDyePlanCardInput.DTMPSlistBtnClick(Sender: TObject); begin try @@ -549,6 +762,36 @@ begin end; end; +procedure TfrmDyePlanCardInput.AbnormalKaZuBtnClick(Sender: TObject); +begin + + frmDye_AbnormalCardSel := TfrmDye_AbnormalCardSel.create(self); + with frmDye_AbnormalCardSel do + begin + + if ShowModal = 1 then + begin + AbnormalKaZu.Text := frmDye_AbnormalCardSel.CDS_1.FieldByName('KaZu').AsString; + KaZuPiece.Text := frmDye_AbnormalCardSel.CDS_1.FieldByName('PCPiece').AsString; + KaZuQty.Text := frmDye_AbnormalCardSel.CDS_1.FieldByName('PCQty').AsString; + OrderNo1.Text := frmDye_AbnormalCardSel.CDS_1.FieldByName('OrderNo').AsString; +// fmainID := Order_Main.fieldbyname('mainID').asstring; +// fC_Code := Order_Main.fieldbyname('C_Code').asstring; +// fC_name := Order_Main.fieldbyname('C_name').asstring; + +// InitOrder(); + InitGreyClothStk1(); +// if CDS_2.IsEmpty then +// begin +// Application.MessageBox('޲Ʒ棡', 'ʾϢ', MB_OK); +// end; + InitCard(); +// initGlide(); + end; + free; + end; +end; + procedure TfrmDyePlanCardInput.avgCardClick(Sender: TObject); var i, k: integer; @@ -673,6 +916,7 @@ begin begin Close; Sql.Clear; + //ÿ̿г Sql.Add('exec P_Dye_GreyCloth_Out '); Sql.Add('@PCID=' + quotedstr(trim(maxId))); Sql.Add(',@Filler=' + quotedstr(trim(DName))); @@ -697,6 +941,7 @@ begin begin Close; Sql.Clear; + //ܿŷֿ Sql.Add('exec P_Dye_Plan_UpdateOrderNo '); Sql.Add('@KaZu=' + quotedstr(Trim(KZmaxID))); Open; @@ -706,6 +951,7 @@ begin begin Close; Sql.Clear; + //Ų Sql.Add('exec P_Dye_Cloth_GX @carno=' + QuotedStr(trim(KZmaxID))); sql.add(',@dname=' + QuotedStr(trim(dname))); SQL.Add(',@C_Name=' + QuotedStr(Trim(C_Name.Text))); @@ -717,6 +963,7 @@ begin with ADOQueryCmd do begin SQL.Clear; + //ݿ SQL.Add('EXEC P_InsertGxToKaika @PCID = ' + quotedstr(trim(KZmaxID))); ExecSQL; end; @@ -771,101 +1018,395 @@ begin ShowMessage(distributionInfo); end; -procedure TfrmDyePlanCardInput.Button1Click(Sender: TObject); +procedure TfrmDyePlanCardInput.TbAbnormalKaiKaClick(Sender: TObject); var - maxId: string; + i, k, k2: integer; + maxId, KZmaxID, KZmaxID2: string; + totalPieces, totalQty: Double; + totalPieces2, totalQty2: Double; + pieceArray1, pieceArray2: array of Double; + qtyArray1, qtyArray2: array of Double; + mQRCode: string; begin - PCID.SetFocus; - if not GetCard() then - Exit; - if GetLSNo(ADOQueryCmd, maxId, 'CZ', 'Dye_Plan_Card', 3, 1) = False then + // ֤ +// if trim(C_Name.Text) = '' then +// begin +// application.MessageBox('ƷƲΪգ', 'ʾϢ', MB_ICONERROR); +// exit; +// end; +// +// if (StrToFloatDef(PCPiece.Text, 0) + StrToFloatDef(PCQty.Text, 0)) = 0 then +// begin +// application.MessageBox('ƥܶΪ㣡', 'ʾϢ', MB_OK); +// exit; +// end; +// +// if DTMPSlist.Text = '' then +// begin +// application.MessageBox('ƷΪգ', 'ʾϢ', MB_OK); +// exit; +// end; + + // ȡ + if strtointdef(trim(carNum1.text), 0) <= 1 then + k := 1 + else + k := strtointdef(trim(carNum1.text), 0); + + if strtointdef(trim(carNum2.text), 0) <= 1 then + k2 := 1 + else + k2 := strtointdef(trim(carNum2.text), 0); + + // ȡƥ + totalPieces := StrToFloatDef(PCPiece1.Text, 0); + totalQty := StrToFloatDef(PCQty1.Text, 0); + + totalPieces2 := StrToFloatDef(PCPiece2.Text, 0); + totalQty2 := StrToFloatDef(PCQty2.Text, 0); + + // Ԥ + SetLength(pieceArray1, k); + SetLength(qtyArray1, k); + + SetLength(pieceArray2, k2); + SetLength(qtyArray2, k2); + + // ÿſķֵ + CalculateDistribution(totalPieces, k, pieceArray1); + CalculateDistribution(totalQty, k, qtyArray1); + + CalculateDistribution(totalPieces2, k2, pieceArray2); + CalculateDistribution(totalQty2, k2, qtyArray2); + +// CDS_Color.Locate('C_Color', C_Color.Text, []); +// CDS_1.Last; + + if GetLSNo(ADOQueryCmd, KZmaxID, 'KZ', 'Dye_Plan_Card_KZ', 3, 1) = False then begin Application.MessageBox('ȡʧ!', 'ʾ', 0); Exit; end; - FPCIDS := FPCIDS + maxId + ';'; - try - ADOQueryCmd.Connection.BeginTrans; - CDS_3.DisableConstraints; - with ADOQueryCmd do - begin - Close; - Sql.Clear; - Sql.Add('select * from Dye_Plan_Card A where 1=2'); - Open; - Append; - FieldByName('Filler').Value := trim(DName); - FieldByName('Workshop').Value := trim(FWorkshop); - FieldByName('PCType').Value := trim(RePCType.Text); - FieldByName('PCID').Value := trim(maxId); - FieldByName('PCTime').Value := formatdateTime('yyyy-MM-dd', now()); - FieldByName('GC_BatchNo').Value := ''; - FieldByName('GC_Piece').Value := ''; - FieldByName('GC_STKID').Value := ''; - FieldByName('GC_Position').Value := ''; - FieldByName('C_Name').Value := trim(CDS_3.FieldByName('C_Name').AsString); - FieldByName('CustNo').Value := trim(CDS_3.FieldByName('CustNo').AsString); - FieldByName('CustName').Value := trim(CDS_3.FieldByName('CustName').AsString); - FieldByName('MainId').Value := trim(CDS_3.FieldByName('MainId').AsString); - FieldByName('SubId').Value := trim(CDS_3.FieldByName('SubId').AsString); - FieldByName('C_GramWeight').Value := trim(Re_GramWeight.Text); - FieldByName('C_Width').Value := trim(Re_Width.Text); - FieldByName('C_Color').Value := trim(Re_Color.Text); - FieldByName('PCUnit').Value := trim(ReUnit.Text); - FieldByName('C_ColorNo').Value := trim(Re_ColorNo.Text); - FieldByName('PCPiece').Value := 0; - FieldByName('PCQty').Value := 0; - post; - end; - - with CDS_3 do - begin - first; - while not Eof do - begin - with ADOQueryCmd do - begin - Close; - Sql.Clear; - Sql.Add('select * from Dye_Plan_Card_Move A where 1=2'); - Open; - Append; - FieldByName('Filler').Value := trim(DName); - FieldByName('FromID').Value := trim(CDS_3.FieldByName('PCID').AsString); - FieldByName('ToID').Value := maxId; - FieldByName('MvPiece').Value := CDS_3.FieldByName('MvPiece').AsFloat; - FieldByName('MvQty').Value := CDS_3.FieldByName('MvQty').AsFloat; - post; - end; - Next; - end; - end; - - with ADOQueryCmd do - begin - Close; - Sql.Clear; - Sql.Add('exec P_Dye_Card_Move '); - Sql.Add('@PCID=' + quotedstr(trim(maxId))); - Open; - end; - if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then - begin - raise Exception.Create(pchar(trim(ADOQueryCmd.FieldByName('ShowMsg').AsString))); - end; - ADOQueryCmd.Connection.CommitTrans; - CDS_3.EnableConstraints; - except - ADOQueryCmd.Connection.RollbackTrans; - CDS_3.EnableConstraints; - application.MessageBox(PChar(Exception(ExceptObject).Message), 'ʾϢ', 0); + if GetLSNo(ADOQueryCmd, KZmaxID2, 'KZ', 'Dye_Plan_Card_KZ', 3, 1) = False then + begin + Application.MessageBox('ȡʧ!', 'ʾ', 0); + Exit; end; - InitCard(); - InitRepairCard(''); + try + ADOQueryCmd.Connection.BeginTrans; + + //֮ǰճݣ¿ + with ADOQueryCmd do + begin + Close; + SQL.Clear; + SQL.Add(' select * from Dye_Plan_Card where KaZu = ' + QuotedStr(Trim(AbnormalKaZu.Text))); + Open; + end; + ADOQueryCmd.First; + + while not ADOQueryCmd.Eof do + begin + with ADOQueryBaseCmd do + begin + Close; + Sql.Clear; + //ɾ¼Ҹ¿ + Sql.Add('exec P_Dye_GreyCloth_Out_Del '); + Sql.Add('@PCID=' + quotedstr(Trim(ADOQueryCmd.fieldbyname('PCID').AsString))); +// showMessage(sql.Text); + Open; + end; + if ADOQueryBaseCmd.FieldByName('intReturn').AsInteger = -1 then + raise Exception.Create(pchar(trim(ADOQueryBaseCmd.FieldByName('ShowMsg').AsString))); + ADOQueryCmd.Next; + end; + + //ÿͣ + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('update Dye_Plan_Card SET isStop=''1'' '); + sql.Add(' ,Status = ''10'' '); + sql.Add('where KaZu=' + quotedstr(trim(AbnormalKaZu.Text))); + ExecSQL; + end; + + for i := 0 to k + k2 - 1 do + begin + if GetLSNo(ADOQueryCmd, maxId, 'CZ', 'Dye_Plan_Card', 3, 1) = False then + begin + Application.MessageBox('ȡʧ!', 'ʾ', 0); + Exit; + end; + FPCIDS := FPCIDS + maxId + ';'; + + mQRCode := CDS_3.FieldByName('C_Name').AsString + '|' + OrderNo1.Text + '|0|'; + mQRCode := mQRCode + FormatDateTime('yyyymmddhhnnss', SGetServerDateTime(ADOQueryBaseTemp)); + mQRCode := mQRCode + '|0|'; + mQRCode := mQRCode + OrderNo1.Text + '*0|0'; + + with ADOQueryCmd do + begin + Close; + Sql.Clear; + Sql.Add('select * from Dye_Plan_Card A where 1=2'); + Open; + Append; + FieldByName('OrderNo').Value := OrderNo1.Text; + FieldByName('Mainid').Value := Trim(CDS_3.FieldByName('MainID').AsString); + FieldByName('Filler').Value := trim(DName); + FieldByName('Workshop').Value := trim(FWorkshop); + FieldByName('PCType').Value := trim(PCType1.Text); + FieldByName('PCID').Value := trim(maxId); + + if i > k - 1 then + begin + FieldByName('KaZu').Value := trim(KZmaxID2); + end + else + begin + FieldByName('KaZu').Value := trim(KZmaxID); + end; + +// FieldByName('PCTime').Value := formatdateTime('yyyy-MM-dd', PCTime.DateTime); + FieldByName('PCTime').Value := SGetServerDateTime(ADOQueryBaseTemp); +// FieldByName('GC_BatchNo').Value := trim(FGC_BatchNo); +// FieldByName('GC_Piece').Value := trim(FGC_Piece); + FieldByName('GC_STKID').Value := trim(FGC_STKID); +// FieldByName('GC_Position').Value := trim(FGC_Position); + FieldByName('DTMPSlist').Value := trim(DTMPSlist1.Text); + FieldByName('C_description').Value := Trim(CDS_3.FieldByName('C_description').AsString); + +// FieldByName('bzunit').Value := trim(Fbzunit); + FieldByName('CustNo').Value := Trim(CDS_3.FieldByName('CustNo').AsString); + FieldByName('CustName').Value := Trim(CDS_3.FieldByName('CustName').AsString); +// FieldByName('Saleser').Value := trim(FSaleser); + FieldByName('C_Name').Value := Trim(CDS_3.FieldByName('C_Name').AsString); + FieldByName('C_Code').Value := Trim(CDS_3.FieldByName('C_Code').AsString); + FieldByName('C_GramWeight').Value := Trim(CDS_3.FieldByName('C_GramWeight').AsString); + FieldByName('C_Width').Value := Trim(CDS_3.FieldByName('C_Width').AsString); + FieldByName('C_Color').Value := Trim(CDS_3.FieldByName('C_Color').AsString); +// FieldByName('PCUnit').Value := trim(OrdUnit.Text); + FieldByName('C_ColorNo').Value := Trim(CDS_3.FieldByName('C_ColorNo').AsString); + + FieldByName('CINote').Value := Trim(CDS_3.FieldByName('CINote').AsString); + + // ʹԤƥ + if i > k - 1 then + begin + FieldByName('PCPiece').Value := pieceArray2[i - k]; + FieldByName('PCQty').Value := qtyArray2[i - k]; + FieldByName('batchno').Value := INTTOSTR(k2) + '-' + INTTOSTR(i + 1 - k); + end + else + begin + FieldByName('PCPiece').Value := pieceArray1[i]; + FieldByName('PCQty').Value := qtyArray1[i]; + FieldByName('batchno').Value := INTTOSTR(k) + '-' + INTTOSTR(i + 1); + end; + + FieldByName('QRCode').Value := trim(mQRCode); + FieldByName('PrtCount').Value := 0; + + FieldByName('FromPCID').Value := AbnormalKaZu.Text;//Կ + + post; + end; + + with ADOQueryCmd do + begin + Close; + Sql.Clear; + //ÿ̿г + Sql.Add('exec P_Dye_GreyCloth_Out '); + Sql.Add('@PCID=' + quotedstr(trim(maxId))); + Sql.Add(',@Filler=' + quotedstr(trim(DName))); + Open; + end; + + if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then + begin + FGC_STKID := ''; + raise Exception.Create(pchar(trim(ADOQueryCmd.FieldByName('ShowMsg').AsString))); + end; + + end; + + with ADOQueryCmd do + begin + Close; + Sql.Clear; + //ܿŷֿ + Sql.Add('exec P_Dye_Plan_UpdateOrderNo '); +// Sql.Add('@KaZu=' + quotedstr(Trim(KZmaxID2))); + Sql.Add('@KaZu=' + quotedstr(Trim(KZmaxID))); + Open; + end; + + with ADOQueryCmd do + begin + Close; + Sql.Clear; + //ܿŷֿ + Sql.Add('exec P_Dye_Plan_UpdateOrderNo '); + Sql.Add('@KaZu=' + quotedstr(Trim(KZmaxID2))); +// Sql.Add('@KaZu=' + quotedstr(Trim(KZmaxID))); + Open; + end; + + with ADOQueryCmd do + begin + Close; + Sql.Clear; + //Ų + Sql.Add('exec P_Dye_Cloth_GX @carno=' + QuotedStr(trim(KZmaxID))); + sql.add(',@dname=' + QuotedStr(trim(dname))); + SQL.Add(',@C_Name=' + QuotedStr(Trim(CDS_3.FieldByName('C_Name').AsString))); + SQL.Add(',@OrderNo=' + QuotedStr(Trim(OrderNo1.Text))); + SQL.Add(',@DTMID=' + QuotedStr(Trim(DTMID1.Text))); + execsql; + end; + + with ADOQueryCmd do + begin + Close; + Sql.Clear; + //Ų + Sql.Add('exec P_Dye_Cloth_GX @carno=' + QuotedStr(trim(KZmaxID2))); + sql.add(',@dname=' + QuotedStr(trim(dname))); + SQL.Add(',@C_Name=' + QuotedStr(Trim(CDS_3.FieldByName('C_Name').AsString))); + SQL.Add(',@OrderNo=' + QuotedStr(Trim(OrderNo1.Text))); + SQL.Add(',@DTMID=' + QuotedStr(Trim(DTMID1.Text))); + execsql; + end; + + with ADOQueryCmd do + begin + SQL.Clear; + //ݿ + SQL.Add('EXEC P_InsertGxToKaika @PCID = ' + quotedstr(trim(KZmaxID))); + ExecSQL; + end; + + with ADOQueryCmd do + begin + SQL.Clear; + //ݿ + SQL.Add('EXEC P_InsertGxToKaika @PCID = ' + quotedstr(trim(KZmaxID2))); + ExecSQL; + end; + + InitCard(); + InitGreyClothStk1(); + + // ʾϢ + ShowDistributionResult(k, pieceArray1, qtyArray1); + ShowDistributionResult(k2, pieceArray2, qtyArray2); + ADOQueryCmd.Connection.CommitTrans; + except + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox(PChar(Exception(ExceptObject).Message), 'ʾϢ', 0); + end; end; +//var +// maxId: string; +//begin +// PCID.SetFocus; +// if not GetCard() then +// Exit; +// +// if GetLSNo(ADOQueryCmd, maxId, 'CZ', 'Dye_Plan_Card', 3, 1) = False then +// begin +// Application.MessageBox('ȡʧ!', 'ʾ', 0); +// Exit; +// end; +// FPCIDS := FPCIDS + maxId + ';'; +// try +// ADOQueryCmd.Connection.BeginTrans; +// CDS_3.DisableConstraints; +// +// with ADOQueryCmd do +// begin +// Close; +// Sql.Clear; +// Sql.Add('select * from Dye_Plan_Card A where 1=2'); +// Open; +// Append; +// FieldByName('Filler').Value := trim(DName); +// FieldByName('Workshop').Value := trim(FWorkshop); +// FieldByName('PCType').Value := trim(RePCType.Text); +// FieldByName('PCID').Value := trim(maxId); +// FieldByName('PCTime').Value := formatdateTime('yyyy-MM-dd', now()); +// FieldByName('GC_BatchNo').Value := ''; +// FieldByName('GC_Piece').Value := ''; +// FieldByName('GC_STKID').Value := ''; +// FieldByName('GC_Position').Value := ''; +// FieldByName('C_Name').Value := trim(CDS_3.FieldByName('C_Name').AsString); +// FieldByName('CustNo').Value := trim(CDS_3.FieldByName('CustNo').AsString); +// FieldByName('CustName').Value := trim(CDS_3.FieldByName('CustName').AsString); +// FieldByName('MainId').Value := trim(CDS_3.FieldByName('MainId').AsString); +// FieldByName('SubId').Value := trim(CDS_3.FieldByName('SubId').AsString); +// FieldByName('C_GramWeight').Value := trim(Re_GramWeight.Text); +// FieldByName('C_Width').Value := trim(Re_Width.Text); +// FieldByName('C_Color').Value := trim(Re_Color.Text); +// FieldByName('PCUnit').Value := trim(ReUnit.Text); +// FieldByName('C_ColorNo').Value := trim(Re_ColorNo.Text); +// FieldByName('PCPiece').Value := 0; +// FieldByName('PCQty').Value := 0; +// post; +// end; +// +// with CDS_3 do +// begin +// first; +// while not Eof do +// begin +// with ADOQueryCmd do +// begin +// Close; +// Sql.Clear; +// Sql.Add('select * from Dye_Plan_Card_Move A where 1=2'); +// Open; +// Append; +// FieldByName('Filler').Value := trim(DName); +// FieldByName('FromID').Value := trim(CDS_3.FieldByName('PCID').AsString); +// FieldByName('ToID').Value := maxId; +// FieldByName('MvPiece').Value := CDS_3.FieldByName('MvPiece').AsFloat; +// FieldByName('MvQty').Value := CDS_3.FieldByName('MvQty').AsFloat; +// post; +// end; +// Next; +// end; +// end; +// +// with ADOQueryCmd do +// begin +// Close; +// Sql.Clear; +// Sql.Add('exec P_Dye_Card_Move '); +// Sql.Add('@PCID=' + quotedstr(trim(maxId))); +// Open; +// end; +// if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then +// begin +// raise Exception.Create(pchar(trim(ADOQueryCmd.FieldByName('ShowMsg').AsString))); +// end; +// ADOQueryCmd.Connection.CommitTrans; +// CDS_3.EnableConstraints; +// except +// ADOQueryCmd.Connection.RollbackTrans; +// CDS_3.EnableConstraints; +// application.MessageBox(PChar(Exception(ExceptObject).Message), 'ʾϢ', 0); +// end; +// +// InitCard(); +//// InitRepairCard(''); +//end; procedure TfrmDyePlanCardInput.Button2Click(Sender: TObject); var @@ -974,6 +1515,7 @@ begin begin Close; Sql.Clear; + // Sql.Add('exec P_Dye_GreyCloth_Out '); Sql.Add('@PCID=' + quotedstr(trim(maxId))); Sql.Add(',@Filler=' + quotedstr(trim(DName))); @@ -997,6 +1539,7 @@ begin begin Close; Sql.Clear; + //ܿŷֿ Sql.Add('exec P_Dye_Plan_UpdateOrderNo '); Sql.Add('@KaZu=' + quotedstr(Trim(KZmaxID))); Open; @@ -1006,6 +1549,7 @@ begin begin Close; Sql.Clear; + // Ų Sql.Add('exec P_Dye_Cloth_GX @carno=' + QuotedStr(trim(KZmaxID))); sql.add(',@dname=' + QuotedStr(trim(dname))); SQL.Add(',@C_Name=' + QuotedStr(Trim(C_Name.Text))); @@ -1017,6 +1561,7 @@ begin with ADOQueryCmd do begin SQL.Clear; + //ݿݣԱ SQL.Add('EXEC P_InsertGxToKaika @PCID = ' + quotedstr(trim(KZmaxID))); ExecSQL; end; @@ -1055,7 +1600,7 @@ begin InitOrder(); InitCard(); InitGreyClothStk(); - InitRepairCard(''); +// InitRepairCard(''); KeyPreview := True; end; @@ -1152,23 +1697,24 @@ begin try ADOQueryCmd.Connection.BeginTrans; - with ADOQueryCmd do - begin - Close; - Sql.Clear; - Sql.Add('exec P_BS_Cloth_Out_Del '); - Sql.Add(' @BCIOIDS=' + quotedstr(Trim(CDS_1.fieldbyname('BCIOID').AsString))); - Sql.Add(',@DCode=' + quotedstr(Trim(CDS_1.fieldbyname('C_Code').AsString))); - Sql.Add(',@DName=' + quotedstr(Trim(CDS_1.fieldbyname('C_Name').AsString))); - 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('exec P_BS_Cloth_Out_Del '); +// Sql.Add(' @BCIOIDS=' + quotedstr(Trim(CDS_1.fieldbyname('BCIOID').AsString))); +// Sql.Add(',@DCode=' + quotedstr(Trim(CDS_1.fieldbyname('C_Code').AsString))); +// Sql.Add(',@DName=' + quotedstr(Trim(CDS_1.fieldbyname('C_Name').AsString))); +// 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('exec P_Dye_Card_Del '); Sql.Add('@PCIDS=' + quotedstr(Trim(CDS_1.fieldbyname('PCID').AsString))); Sql.Add(',@DCode=' + quotedstr(Trim(CDS_1.fieldbyname('C_Code').AsString))); @@ -1185,6 +1731,7 @@ begin SQL.Add('select * from Dye_Plan_card where KaZu = ' + QuotedStr(Trim(CDS_1.FieldByName('KaZu').AsString))); Open; end; + //һſɾ if ADOQueryTmp.IsEmpty then begin with ADOQueryCmd do @@ -1199,6 +1746,7 @@ begin begin Close; Sql.Clear; + //ɾ洢 Sql.Add('delete from Bs_Cloth_GY_Main_Kaika where PCID = ' + quotedstr(Trim(CDS_1.fieldbyname('KaZu').AsString))); ExecSQL; end; @@ -1207,38 +1755,40 @@ begin begin Close; Sql.Clear; + //ɾ洢 Sql.Add('delete from Bs_Cloth_GY_Sub_Kaika where PCID = ' + quotedstr(Trim(CDS_1.fieldbyname('KaZu').AsString))); ExecSQL; end; end; - if (Trim(CDS_1.fieldbyname('PCType').AsString) = '') or (Trim(CDS_1.fieldbyname('PCType').AsString) = 'ǰ') then + if (Trim(CDS_1.fieldbyname('PCType').AsString) = '') then begin with ADOQueryCmd do begin Close; Sql.Clear; + //ɾ¼Ҹ¿ Sql.Add('exec P_Dye_GreyCloth_Out_Del '); Sql.Add('@PCID=' + quotedstr(Trim(CDS_1.fieldbyname('PCID').AsString))); Open; end; - if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then - raise Exception.Create(pchar(trim(ADOQueryCmd.FieldByName('ShowMsg').AsString))); - end - else - begin - with ADOQueryCmd do - begin - Close; - Sql.Clear; - Sql.Add('exec P_Dye_Card_Move_Del '); - Sql.Add('@PCID=' + quotedstr(Trim(CDS_1.fieldbyname('PCID').AsString))); - Open; - end; if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then raise Exception.Create(pchar(trim(ADOQueryCmd.FieldByName('ShowMsg').AsString))); end; +// else +// begin +// with ADOQueryCmd do +// begin +// Close; +// Sql.Clear; +// Sql.Add('exec P_Dye_Card_Move_Del '); +// Sql.Add('@PCID=' + quotedstr(Trim(CDS_1.fieldbyname('PCID').AsString))); +// Open; +// end; +// if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then +// raise Exception.Create(pchar(trim(ADOQueryCmd.FieldByName('ShowMsg').AsString))); +// end; ADOQueryCmd.Connection.CommitTrans; except @@ -1254,6 +1804,7 @@ begin begin Close; Sql.Clear; + //ܿŷֿ Sql.Add('exec P_Dye_Plan_UpdateOrderNo '); Sql.Add('@KaZu=' + quotedstr(Trim(CDS_1.fieldbyname('KaZu').AsString))); Open; @@ -1273,6 +1824,8 @@ procedure TfrmDyePlanCardInput.ToolButton5Click(Sender: TObject); var HasSaved: Boolean; // ¼Ƿɹ begin + + OrderNo.SetFocus; HasSaved := False; // ʼ־ try @@ -1453,6 +2006,10 @@ end; procedure TfrmDyePlanCardInput.TV2DblClick(Sender: TObject); begin inherited; + if OrderNo.Text = '' then + begin + Exit; + end; with ADOQueryTmp do begin Close; @@ -1495,25 +2052,25 @@ begin // C_Width.Text := ADOQueryTmp.FieldByName('C_Width').Value; end; -procedure TfrmDyePlanCardInput.TV3Column1PropertiesEditValueChanged(Sender: TObject); -var - mvalue: string; -begin - - mvalue := TcxTextEdit(Sender).EditingText; - with CDS_3 do - begin - Edit; - FieldByName('MvPiece').Value := STRTOFLOATDEF(mvalue, 0); - if FieldByName('PSC_StkPiece').AsFloat > 0 then - FieldByName('MvQty').Value := STRTOFLOATDEF(mvalue, 0) * (FieldByName('PSC_StkQty').AsFloat / FieldByName('PSC_StkPiece').AsFloat) - else - FieldByName('MvQty').Value := 0; - Post; - - end; - Tv3.Controller.EditingController.ShowEdit(); -end; +//procedure TfrmDyePlanCardInput.TV3Column1PropertiesEditValueChanged(Sender: TObject); +//var +// mvalue: string; +//begin +// +// mvalue := TcxTextEdit(Sender).EditingText; +// with CDS_3 do +// begin +// Edit; +// FieldByName('MvPiece').Value := STRTOFLOATDEF(mvalue, 0); +// if FieldByName('PSC_StkPiece').AsFloat > 0 then +// FieldByName('MvQty').Value := STRTOFLOATDEF(mvalue, 0) * (FieldByName('PSC_StkQty').AsFloat / FieldByName('PSC_StkPiece').AsFloat) +// else +// FieldByName('MvQty').Value := 0; +// Post; +// +// end; +// Tv3.Controller.EditingController.ShowEdit(); +//end; procedure TfrmDyePlanCardInput.TV3DblClick(Sender: TObject); begin diff --git a/F02染色计划单/U_DyePlanCardList.dfm b/F02染色计划单/U_DyePlanCardList.dfm index 813d775..b85dd22 100644 --- a/F02染色计划单/U_DyePlanCardList.dfm +++ b/F02染色计划单/U_DyePlanCardList.dfm @@ -86,16 +86,32 @@ inherited frmDyePlanCardList: TfrmDyePlanCardList ImageIndex = 11 OnClick = TnochkClick end - object btnWC: TToolButton + object TbAbnormal: TToolButton Left = 521 Top = 0 AutoSize = True + Caption = #24322#24120 + ImageIndex = 12 + OnClick = TbAbnormalClick + end + object TnoAbnormal: TToolButton + Left = 592 + Top = 0 + AutoSize = True + Caption = #25764#38144#24322#24120 + ImageIndex = 11 + OnClick = TnoAbnormalClick + end + object btnWC: TToolButton + Left = 687 + Top = 0 + AutoSize = True Caption = #23436#25104 ImageIndex = 12 OnClick = btnWCClick end object btnnowc: TToolButton - Left = 592 + Left = 758 Top = 0 AutoSize = True Caption = #25764#38144#23436#25104 @@ -103,7 +119,7 @@ inherited frmDyePlanCardList: TfrmDyePlanCardList OnClick = btnnowcClick end object TbDetailGY: TToolButton - Left = 687 + Left = 853 Top = 0 AutoSize = True Caption = #35814#32454#24037#33402 @@ -111,7 +127,7 @@ inherited frmDyePlanCardList: TfrmDyePlanCardList OnClick = TbDetailGYClick end object TbSimpleGY: TToolButton - Left = 782 + Left = 948 Top = 0 AutoSize = True Caption = #31616#26131#24037#33402 @@ -119,7 +135,7 @@ inherited frmDyePlanCardList: TfrmDyePlanCardList OnClick = TbSimpleGYClick end object TbUpdateGY: TToolButton - Left = 877 + Left = 1043 Top = 0 AutoSize = True Caption = #26356#26032#24037#33402 @@ -127,7 +143,7 @@ inherited frmDyePlanCardList: TfrmDyePlanCardList OnClick = TbUpdateGYClick end object TBPrint: TToolButton - Left = 972 + Left = 1138 Top = 0 AutoSize = True Caption = #25171#21360#27969#31243#21345 @@ -135,7 +151,7 @@ inherited frmDyePlanCardList: TfrmDyePlanCardList OnClick = TBPrintClick end object TBExport: TToolButton - Left = 1079 + Left = 1245 Top = 0 AutoSize = True Caption = #23548#20986 @@ -143,7 +159,7 @@ inherited frmDyePlanCardList: TfrmDyePlanCardList OnClick = TBExportClick end object ToolButton6: TToolButton - Left = 1150 + Left = 1316 Top = 0 AutoSize = True Caption = #20445#23384#26684#24335 @@ -151,7 +167,7 @@ inherited frmDyePlanCardList: TfrmDyePlanCardList OnClick = ToolButton6Click end object TBClose: TToolButton - Left = 1245 + Left = 1411 Top = 0 AutoSize = True Caption = #20851#38381 @@ -170,6 +186,7 @@ inherited frmDyePlanCardList: TfrmDyePlanCardList Color = clWhite ParentBackground = False TabOrder = 1 + ExplicitTop = 44 object Label1: TLabel Left = 23 Top = 15 @@ -291,9 +308,9 @@ inherited frmDyePlanCardList: TfrmDyePlanCardList object Label6: TLabel Left = 894 Top = 13 - Width = 26 + Width = 54 Height = 12 - Caption = #39068#33394 + Caption = #39068' '#33394 Font.Charset = GB2312_CHARSET Font.Color = clWindowText Font.Height = -12 @@ -314,6 +331,19 @@ inherited frmDyePlanCardList: TfrmDyePlanCardList Font.Style = [fsBold] ParentFont = False end + object Label5: TLabel + Left = 894 + Top = 37 + Width = 52 + Height = 12 + Caption = #24403#21069#24037#24207 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + end object BegDate: TDateTimePicker Left = 81 Top = 11 @@ -408,7 +438,7 @@ inherited frmDyePlanCardList: TfrmDyePlanCardList end object C_Color: TEdit Tag = 2 - Left = 926 + Left = 951 Top = 9 Width = 100 Height = 20 @@ -421,6 +451,7 @@ inherited frmDyePlanCardList: TfrmDyePlanCardList Top = 9 Width = 100 Height = 20 + ItemIndex = 0 TabOrder = 11 OnChange = OrderNoChange Items.Strings = ( @@ -429,6 +460,15 @@ inherited frmDyePlanCardList: TfrmDyePlanCardList #26679#24067#21345 #22806#22238#20462) end + object CurGlideName: TEdit + Tag = 2 + Left = 951 + Top = 33 + Width = 100 + Height = 20 + TabOrder = 12 + OnChange = OrderNoChange + end end object cxGrid1: TcxGrid [2] Left = 0 @@ -442,6 +482,7 @@ inherited frmDyePlanCardList: TfrmDyePlanCardList object Tv1: TcxGridDBTableView Navigator.Buttons.CustomButtons = <> ScrollbarAnnotations.CustomAnnotations = <> + OnCustomDrawCell = Tv1CustomDrawCell DataController.DataSource = DS_1 DataController.Filter.AutoDataSetFilter = True DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] @@ -684,6 +725,20 @@ inherited frmDyePlanCardList: TfrmDyePlanCardList Options.Editing = False Width = 80 end + object Tv1KaZuQty: TcxGridDBColumn + Caption = #21345#32452#31859#25968 + DataBinding.FieldName = 'KaZuQty' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 80 + end + object Tv1KaZuPiece: TcxGridDBColumn + Caption = #21345#32452#20214#25968 + DataBinding.FieldName = 'KaZuPiece' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 80 + end object v1Column13: TcxGridDBColumn Caption = #24037#33402#20449#24687 DataBinding.FieldName = 'DTMPSlist' @@ -732,12 +787,13 @@ inherited frmDyePlanCardList: TfrmDyePlanCardList HeaderAlignmentHorz = taCenter Width = 80 end - object Tv1Column1: TcxGridDBColumn + object Tv1CurGlideName: TcxGridDBColumn Caption = #24403#21069#24037#24207 DataBinding.FieldName = 'CurGlideName' DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Options.Editing = False + Styles.OnGetContentStyle = Tv1CurGlideNameStylesGetContentStyle Width = 66 end object Tv1Column4: TcxGridDBColumn @@ -746,7 +802,7 @@ inherited frmDyePlanCardList: TfrmDyePlanCardList DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Options.Editing = False - Width = 66 + Width = 76 end object Tv1Column5: TcxGridDBColumn Caption = #21047#21345#26102#38388 @@ -762,14 +818,14 @@ inherited frmDyePlanCardList: TfrmDyePlanCardList DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Options.Editing = False - Width = 66 + Width = 94 end object Tv1Column20: TcxGridDBColumn Caption = #22791#27880 DataBinding.FieldName = 'PCNote' DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter - Width = 66 + Width = 78 end object Tv1TotalPCID: TcxGridDBColumn Caption = #21345#21495 @@ -806,6 +862,21 @@ inherited frmDyePlanCardList: TfrmDyePlanCardList HeaderAlignmentHorz = taCenter Width = 70 end + object Tv1isStop: TcxGridDBColumn + Caption = #26159#21542#20572#24037 + DataBinding.FieldName = 'isStop' + DataBinding.IsNullValueType = True + Visible = False + HeaderAlignmentHorz = taCenter + Width = 80 + end + object Tv1Status: TcxGridDBColumn + Caption = #29366#24577 + DataBinding.FieldName = 'Status' + DataBinding.IsNullValueType = True + Visible = False + Width = 80 + end end object cxGrid1Level1: TcxGridLevel GridView = Tv1 @@ -820,13 +891,15 @@ inherited frmDyePlanCardList: TfrmDyePlanCardList TabOrder = 3 Properties.CustomButtons.Buttons = <> Properties.Style = 9 - Properties.TabIndex = 1 + Properties.TabIndex = 0 Properties.Tabs.Strings = ( #26410#23457#26680 #24050#23457#26680 #24050#23436#25104 + #24322#24120#21345 #20840#37096) OnChange = cxTabControl1Change + ExplicitTop = 99 ClientRectBottom = 22 ClientRectRight = 1503 ClientRectTop = 19 @@ -1043,5 +1116,9 @@ inherited frmDyePlanCardList: TfrmDyePlanCardList Caption = #20840#24323 OnClick = N2Click end + object N3: TMenuItem + Caption = #22797#21046 + OnClick = N3Click + end end end diff --git a/F02染色计划单/U_DyePlanCardList.pas b/F02染色计划单/U_DyePlanCardList.pas index 59b032c..43b6b5d 100644 --- a/F02染色计划单/U_DyePlanCardList.pas +++ b/F02染色计划单/U_DyePlanCardList.pas @@ -15,7 +15,7 @@ uses IdFTP, ShellAPI, cxCheckBox, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, dxBarBuiltInMenu, dxSkinsCore, dxSkinsDefaultPainters, dxDateRanges, IdExplicitTLSClientServerBase, U_BaseList, - dxScrollbarAnnotations; + dxScrollbarAnnotations, Clipbrd; type TfrmDyePlanCardList = class(TfrmBaseList) @@ -112,7 +112,7 @@ type tbedit: TToolButton; btnWC: TToolButton; btnnowc: TToolButton; - Tv1Column1: TcxGridDBColumn; + Tv1CurGlideName: TcxGridDBColumn; Tv1Column4: TcxGridDBColumn; Tv1Column5: TcxGridDBColumn; Tv1Column7: TcxGridDBColumn; @@ -130,6 +130,15 @@ type Tv1C_Color: TcxGridDBColumn; PCType: TComboBox; Label13: TLabel; + Label5: TLabel; + CurGlideName: TEdit; + Tv1KaZuQty: TcxGridDBColumn; + Tv1KaZuPiece: TcxGridDBColumn; + TbAbnormal: TToolButton; + TnoAbnormal: TToolButton; + N3: TMenuItem; + Tv1isStop: TcxGridDBColumn; + Tv1Status: TcxGridDBColumn; procedure FormDestroy(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure FormCreate(Sender: TObject); @@ -157,6 +166,11 @@ type procedure TbUpdateGYClick(Sender: TObject); procedure TbSimpleGYClick(Sender: TObject); procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); + procedure Tv1CurGlideNameStylesGetContentStyle(Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; var AStyle: TcxStyle); + procedure TbAbnormalClick(Sender: TObject); + procedure TnoAbnormalClick(Sender: TObject); + procedure N3Click(Sender: TObject); + procedure Tv1CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); private DQdate: TDateTime; procedure InitGrid(); @@ -228,6 +242,9 @@ begin tbdel.Enabled := false; btnWC.Enabled := false; btnnowc.Enabled := false; + TbAbnormal.Enabled := False; + TnoAbnormal.Enabled := false; + tbadd.Enabled := true; if Trim(canshu1) = '¼' then begin @@ -236,24 +253,21 @@ begin case cxTabControl1.TabIndex of 0: begin - + TbAbnormal.Enabled := true; tbedit.Enabled := true; tbdel.Enabled := true; - end; 1: begin - btnWC.Enabled := true; end; 2: begin btnnowc.Enabled := true; - end; 3: begin - + TnoAbnormal.Enabled := false; end; end; end; @@ -262,6 +276,7 @@ begin case cxTabControl1.TabIndex of 0: begin + TbAbnormal.Enabled := true; tbedit.Enabled := true; tbdel.Enabled := true; tchk.Enabled := true; @@ -279,7 +294,7 @@ begin end; 3: begin - + TnoAbnormal.Enabled := false; end; end; end; @@ -291,8 +306,7 @@ begin frmDyePlanCardList := nil; end; -procedure TfrmDyePlanCardList.FormKeyDown(Sender: TObject; var Key: Word; - Shift: TShiftState); +procedure TfrmDyePlanCardList.FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); begin if Key = VK_ESCAPE then // VK_ESCAPE ESC ij begin @@ -336,6 +350,9 @@ begin sql.Clear; sql.Add('select A.*,ConNo,OrdType,Salestype ,OrdDate,DlyDate'); sql.Add(',GlideList=[dbo].[F_Dye_Card_GlideList](A.PCID) '); + sql.Add(',KaZuQty=(SELECT SUM(PCQty) from Dye_Plan_Card X where X.KaZu = A.KaZu)'); + sql.Add(',KaZuPiece=(SELECT SUM(PCPiece) from Dye_Plan_Card X where X.KaZu = A.KaZu)'); + sql.Add('from Dye_Plan_Card A '); sql.Add('left join Dye_Plan_sub B on B.subID=A.subID '); sql.Add('left join Dye_Plan_Main C on C.mainID=A.mainID '); @@ -344,15 +361,19 @@ begin case cxTabControl1.TabIndex of 0: begin - sql.Add(' and isnull(A.status,''0'')= ''0'' '); + sql.Add(' and isnull(A.status,''0'')= ''0'' '); //δ end; 1: begin - sql.Add(' and isnull(A.status,''0'')=''9'' '); + sql.Add(' and isnull(A.status,''0'')=''9'' '); // end; 2: begin - sql.Add(' and isnull(A.status,''0'')=''10'' '); + sql.Add(' and isnull(A.status,''0'')=''10'' '); // + end; + 3: + begin + sql.Add(' and isnull(A.status,''0'')=''-1'' '); //쳣 end; end; @@ -437,23 +458,24 @@ begin begin try ADOQueryCmd.Connection.BeginTrans; - with ADOQueryCmd do - begin - Close; - Sql.Clear; - Sql.Add('exec P_BS_Cloth_Out_Del '); - Sql.Add(' @BCIOIDS=' + quotedstr(Trim(CDS_1.fieldbyname('BCIOID').AsString))); - Sql.Add(',@DCode=' + quotedstr(Trim(CDS_1.fieldbyname('C_Code').AsString))); - Sql.Add(',@DName=' + quotedstr(Trim(CDS_1.fieldbyname('C_Name').AsString))); - 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('exec P_BS_Cloth_Out_Del '); +// Sql.Add(' @BCIOIDS=' + quotedstr(Trim(CDS_1.fieldbyname('BCIOID').AsString))); +// Sql.Add(',@DCode=' + quotedstr(Trim(CDS_1.fieldbyname('C_Code').AsString))); +// Sql.Add(',@DName=' + quotedstr(Trim(CDS_1.fieldbyname('C_Name').AsString))); +// 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('exec P_Dye_Card_Del '); Sql.Add('@PCIDS=' + quotedstr(Trim(CDS_1.fieldbyname('PCID').AsString))); Sql.Add(',@DCode=' + quotedstr(Trim(DCode))); @@ -463,57 +485,68 @@ begin if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then raise Exception.Create(pchar(trim(ADOQueryCmd.FieldByName('ShowMsg').AsString))); - with ADOQueryCmd do + with ADOQueryTemp do begin Close; - Sql.Clear; - Sql.Add('delete from Dye_Plan_glide where PCID = ' + quotedstr(Trim(CDS_1.fieldbyname('PCID').AsString))); - ExecSQL; + SQL.Clear; + SQL.Add('select * from Dye_Plan_card where KaZu = ' + QuotedStr(Trim(CDS_1.FieldByName('KaZu').AsString))); + Open; end; - - with ADOQueryCmd do - begin - Close; - Sql.Clear; - Sql.Add('delete from Bs_Cloth_GY_Main_Kaika where PCID = ' + quotedstr(Trim(CDS_1.fieldbyname('PCID').AsString))); - ExecSQL; - end; - - with ADOQueryCmd do - begin - Close; - Sql.Clear; - Sql.Add('delete from Bs_Cloth_GY_Sub_Kaika where PCID = ' + quotedstr(Trim(CDS_1.fieldbyname('PCID').AsString))); - ExecSQL; - end; - - if (Trim(CDS_1.fieldbyname('PCType').AsString) = '') or (Trim(CDS_1.fieldbyname('PCType').AsString) = 'ǰ') then + //һſɾ + if ADOQueryTemp.IsEmpty then begin with ADOQueryCmd do begin Close; Sql.Clear; + Sql.Add('delete from Dye_Plan_glide where PCID = ' + quotedstr(Trim(CDS_1.fieldbyname('KaZu').AsString))); + ExecSQL; + end; + + with ADOQueryCmd do + begin + Close; + Sql.Clear; + Sql.Add('delete from Bs_Cloth_GY_Main_Kaika where PCID = ' + quotedstr(Trim(CDS_1.fieldbyname('PCID').AsString))); + ExecSQL; + end; + + with ADOQueryCmd do + begin + Close; + Sql.Clear; + Sql.Add('delete from Bs_Cloth_GY_Sub_Kaika where PCID = ' + quotedstr(Trim(CDS_1.fieldbyname('PCID').AsString))); + ExecSQL; + end; + end; + + if (Trim(CDS_1.fieldbyname('PCType').AsString) = '') then + begin + with ADOQueryCmd do + begin + Close; + Sql.Clear; + //ɾ¼Ҹ¿ Sql.Add('exec P_Dye_GreyCloth_Out_Del '); Sql.Add('@PCID=' + quotedstr(Trim(CDS_1.fieldbyname('PCID').AsString))); Open; end; - - if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then - raise Exception.Create(pchar(trim(ADOQueryCmd.FieldByName('ShowMsg').AsString))); - end - else - begin - with ADOQueryCmd do - begin - Close; - Sql.Clear; - Sql.Add('exec P_Dye_Card_Move_Del '); - Sql.Add('@PCID=' + quotedstr(Trim(CDS_1.fieldbyname('PCID').AsString))); - Open; - end; if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then raise Exception.Create(pchar(trim(ADOQueryCmd.FieldByName('ShowMsg').AsString))); end; +// else +// begin +// with ADOQueryCmd do +// begin +// Close; +// Sql.Clear; +// Sql.Add('exec P_Dye_Card_Move_Del '); +// Sql.Add('@PCID=' + quotedstr(Trim(CDS_1.fieldbyname('PCID').AsString))); +// Open; +// end; +// if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then +// raise Exception.Create(pchar(trim(ADOQueryCmd.FieldByName('ShowMsg').AsString))); +// end; ADOQueryCmd.Connection.CommitTrans; except @@ -526,6 +559,7 @@ begin begin Close; Sql.Clear; + //ܿŷֿ Sql.Add('exec P_Dye_Plan_UpdateOrderNo '); Sql.Add('@KaZu=' + quotedstr(Trim(CDS_1.fieldbyname('KaZu').AsString))); Open; @@ -817,6 +851,12 @@ begin SelOKNo(CDS_1, False); end; +procedure TfrmDyePlanCardList.N3Click(Sender: TObject); +begin + Clipboard.SetTextBuf(PChar(Trim(CDS_1.fieldbyname(TV1.Controller.FocusedColumn.DataBinding.FilterFieldName).AsString))); + +end; + procedure TfrmDyePlanCardList.tbeditClick(Sender: TObject); var MPCIDS: string; @@ -950,7 +990,7 @@ begin First; while not Eof do begin - if Fieldbyname('Ssel').AsBoolean then + if Fieldbyname('Ssel').AsBoolean and (Fieldbyname('isStop').AsString = '0') then begin with ADOQueryCmd do begin @@ -1001,12 +1041,171 @@ begin end; end; +procedure TfrmDyePlanCardList.TbAbnormalClick(Sender: TObject); +begin + if CDS_1.IsEmpty then + exit; + if CDS_1.Locate('SSel', True, []) = False then + begin + Application.MessageBox('ûѡ!', 'ʾ', 0); + Exit; + end; + try + ADOQueryCmd.Connection.BeginTrans; + with CDS_1 do + begin + DisableControls; + First; + while not Eof do + begin + if Fieldbyname('Ssel').AsBoolean then + begin + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update Dye_Plan_Card SET status=''-1'' '); + sql.Add(' ,Chker = ' + quotedstr(trim(DName)) + ',Chktime = getdate()'); + sql.Add('where KaZu=' + quotedstr(trim(CDS_1.fieldbyname('KaZu').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_1.FieldByName('KaZu').AsString)))); + sql.Add(',' + quotedstr(trim('ɹ'))); + sql.Add(')'); + execsql; + end; + end; + Next; + end; + EnableControls; + end; + + ADOQueryCmd.Connection.CommitTrans; + application.MessageBox('쳣ɹ', 'ʾϢ'); + TBRafresh.Click; + except + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox('쳣ʧܣ', 'ʾϢ', 0); + end; +end; + +procedure TfrmDyePlanCardList.TnoAbnormalClick(Sender: TObject); +begin + if CDS_1.IsEmpty then + exit; + if CDS_1.Locate('SSel', True, []) = False then + begin + Application.MessageBox('ûѡ!', 'ʾ', 0); + Exit; + end; + try + ADOQueryCmd.Connection.BeginTrans; + with CDS_1 do + begin + DisableControls; + First; + while not Eof do + begin + if Fieldbyname('Ssel').AsBoolean then + begin + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('update Dye_Plan_Card SET status=''0'' '); + sql.Add('where KaZu=' + quotedstr(trim(CDS_1.fieldbyname('KaZu').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_1.FieldByName('KaZu').AsString)))); + sql.Add(',' + quotedstr(trim('ɹ'))); + sql.Add(')'); + execsql; + end; + end; + Next; + end; + EnableControls; + end; + + ADOQueryCmd.Connection.CommitTrans; + application.MessageBox('쳣ɹ', 'ʾϢ'); + TBRafresh.Click; + except + ADOQueryCmd.Connection.RollbackTrans; + application.MessageBox('쳣ʧܣ', 'ʾϢ', 0); + end; +end; + procedure TfrmDyePlanCardList.ToolButton6Click(Sender: TObject); begin WriteCxGrid(self.Caption + 'TV1', Tv1, 'ָʾ'); end; +procedure TfrmDyePlanCardList.Tv1CurGlideNameStylesGetContentStyle(Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; var AStyle: TcxStyle); +var + GroupValue: string; + ColorValue: Integer; + I: Integer; +begin + if (ARecord <> nil) and (ARecord is TcxGridDataRow) then + begin + GroupValue := VarToStr(ARecord.Values[Tv1CurGlideName.Index]); + + if (GroupValue <> '') and (GroupValue <> null) then + begin + // ÿַλúֵϣ + + AStyle := TcxStyle.Create(nil); + + if GroupValue = '' then + begin + AStyle.Color := $00CCFFCC; // ɫ + end; + + AStyle.TextColor := clBlack; + end; + end; +end; + +procedure TfrmDyePlanCardList.Tv1CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); +var + misStop, mstatus: Variant; +begin + // ȡֵֶ + misStop := AViewInfo.GridRecord.Values[TcxGridDBTableView(Sender).GetColumnByFieldName('isStop').Index]; + mstatus := AViewInfo.GridRecord.Values[TcxGridDBTableView(Sender).GetColumnByFieldName('status').Index]; + + // òͬ״̬ɫ + if (misStop = '1') and (mstatus = '10') then // δƻ + begin + ACanvas.Brush.Color := clGray; // ɫ + ACanvas.Font.Color := clWindowText; + ACanvas.Font.Style := []; + end + else // Ĭ + begin + ACanvas.Brush.Color := clWindow; + ACanvas.Font.Color := clWindowText; + ACanvas.Font.Style := []; + end; +// if AViewInfo.GridRecord.Selected then +// begin +// +// ACanvas.Font.Color := $000080FF; +// ACanvas.Font.Style := [fsBold]; +// +// end; + // ҪԶɣȡע + // ADone := True; +end; + procedure TfrmDyePlanCardList.cxTabControl1Change(Sender: TObject); begin SetStatus(); @@ -1093,7 +1292,7 @@ begin 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(CDS_1.FieldByName('KaZu').AsString)))); sql.Add(',' + quotedstr(trim('ɹ'))); sql.Add(')'); diff --git a/F02染色计划单/U_DyePlanList.dfm b/F02染色计划单/U_DyePlanList.dfm index 3a713df..48e45f5 100644 --- a/F02染色计划单/U_DyePlanList.dfm +++ b/F02染色计划单/U_DyePlanList.dfm @@ -325,7 +325,6 @@ inherited frmDyePlanList: TfrmDyePlanList Align = alClient PopupMenu = PM_1 TabOrder = 2 - ExplicitTop = 165 object Tv1: TcxGridDBTableView Navigator.Buttons.CustomButtons = <> ScrollbarAnnotations.CustomAnnotations = <> diff --git a/F02染色计划单/U_DyeProcessDefin.dfm b/F02染色计划单/U_DyeProcessDefin.dfm index 06d019c..7d47479 100644 --- a/F02染色计划单/U_DyeProcessDefin.dfm +++ b/F02染色计划单/U_DyeProcessDefin.dfm @@ -63,7 +63,7 @@ object frmDyeProcessDefin: TfrmDyeProcessDefin Height = 772 Align = alClient TabOrder = 0 - Properties.ActivePage = CCQX + Properties.ActivePage = PD Properties.CustomButtons.Buttons = <> ClientRectBottom = 770 ClientRectLeft = 2 @@ -182,6 +182,7 @@ object frmDyeProcessDefin: TfrmDyeProcessDefin Height = 317 Align = alClient TabOrder = 0 + ExplicitTop = -6 object ccqx_note: TcxTextEdit Tag = 2 Left = 58 @@ -357,7 +358,6 @@ object frmDyeProcessDefin: TfrmDyeProcessDefin Height = 396 Align = alBottom TabOrder = 1 - ExplicitLeft = 1 object Tv1: TcxGridDBTableView Navigator.Buttons.CustomButtons = <> ScrollbarAnnotations.CustomAnnotations = <> @@ -4485,6 +4485,56 @@ object frmDyeProcessDefin: TfrmDyeProcessDefin end end end + object PD: TcxTabSheet + Caption = #25293#25171 + ImageIndex = 10 + object Panel_PD: TPanel + Left = 0 + Top = 0 + Width = 1143 + Height = 748 + Align = alClient + TabOrder = 0 + ExplicitLeft = 3 + object cxLabel280: TcxLabel + Left = 284 + Top = 40 + Caption = #28201#24230 + end + object cxLabel281: TcxLabel + Left = 12 + Top = 18 + Caption = #24037#33402#21442#25968':' + end + object pd_temperature: TcxTextEdit + Tag = 2 + Left = 321 + Top = 41 + Style.LookAndFeel.SkinName = 'WXI' + StyleDisabled.LookAndFeel.SkinName = 'WXI' + StyleFocused.LookAndFeel.SkinName = 'WXI' + StyleHot.LookAndFeel.SkinName = 'WXI' + TabOrder = 2 + Width = 150 + end + object pd_speed: TcxTextEdit + Tag = 2 + Left = 76 + Top = 40 + Style.LookAndFeel.SkinName = 'WXI' + StyleDisabled.LookAndFeel.SkinName = 'WXI' + StyleFocused.LookAndFeel.SkinName = 'WXI' + StyleHot.LookAndFeel.SkinName = 'WXI' + TabOrder = 3 + Width = 150 + end + object cxLabel282: TcxLabel + Left = 38 + Top = 40 + Caption = #36710#36895 + end + end + end object cxTabSheet4: TcxTabSheet Caption = ' '#38450#27700#26087 Font.Charset = GB2312_CHARSET diff --git a/F02染色计划单/U_DyeProcessDefin.pas b/F02染色计划单/U_DyeProcessDefin.pas index c257cea..fa0c8f9 100644 --- a/F02染色计划单/U_DyeProcessDefin.pas +++ b/F02染色计划单/U_DyeProcessDefin.pas @@ -801,6 +801,13 @@ type gj_number: TcxTextEdit; fp_gjNumber: TcxTextEdit; cxLabel279: TcxLabel; + PD: TcxTabSheet; + Panel_PD: TPanel; + cxLabel280: TcxLabel; + cxLabel281: TcxLabel; + pd_temperature: TcxTextEdit; + pd_speed: TcxTextEdit; + cxLabel282: TcxLabel; procedure FormShow(Sender: TObject); procedure TBCloseClick(Sender: TObject); procedure TbSaveClick(Sender: TObject); @@ -1131,6 +1138,10 @@ begin else if FPSType = 'ë' then begin SCSHData(ADOQueryTemp, Panel_zm, 2); + end + else if FPSType = 'Ĵ' then + begin + SCSHData(ADOQueryTemp, Panel_pd, 2); end; if BtnInt = 3 then //鿴 @@ -1296,6 +1307,7 @@ begin RTSetsavedata(ADOQueryCmd, 'Bs_Cloth_GY_Main', panel_fs, 2); RTSetsavedata(ADOQueryCmd, 'Bs_Cloth_GY_Main', panel_gj, 2); RTSetsavedata(ADOQueryCmd, 'Bs_Cloth_GY_Main', panel_fp, 2); + RTSetsavedata(ADOQueryCmd, 'Bs_Cloth_GY_Main', panel_pd, 2); // if FPSType = 'ë' then // begin diff --git a/F02染色计划单/U_DyeSimpleTechnicsList.dfm b/F02染色计划单/U_DyeSimpleTechnicsList.dfm index d1bb9d2..81b0dea 100644 --- a/F02染色计划单/U_DyeSimpleTechnicsList.dfm +++ b/F02染色计划单/U_DyeSimpleTechnicsList.dfm @@ -5,6 +5,7 @@ inherited frmDyeSimpleTechnicsList: TfrmDyeSimpleTechnicsList ClientWidth = 1540 Position = poDesigned OnKeyDown = FormKeyDown + ExplicitLeft = -9 ExplicitWidth = 1556 ExplicitHeight = 884 PixelsPerInch = 96 @@ -58,16 +59,24 @@ inherited frmDyeSimpleTechnicsList: TfrmDyeSimpleTechnicsList ImageIndex = 3 OnClick = ToolButton4Click end - object TbSave: TToolButton + object TbCopy: TToolButton Left = 284 Top = 0 AutoSize = True + Caption = #22797#21046 + ImageIndex = 13 + OnClick = TbCopyClick + end + object TbSave: TToolButton + Left = 355 + Top = 0 + AutoSize = True Caption = #20445#23384 ImageIndex = 16 OnClick = TbSaveClick end object TBDel: TToolButton - Left = 355 + Left = 426 Top = 0 AutoSize = True Caption = #21024#38500 @@ -75,7 +84,7 @@ inherited frmDyeSimpleTechnicsList: TfrmDyeSimpleTechnicsList OnClick = TBDelClick end object Tchk: TToolButton - Left = 426 + Left = 497 Top = 0 AutoSize = True Caption = #38145#23450 @@ -83,7 +92,7 @@ inherited frmDyeSimpleTechnicsList: TfrmDyeSimpleTechnicsList OnClick = TchkClick end object TNochk: TToolButton - Left = 497 + Left = 568 Top = 0 AutoSize = True Caption = #25764#38144#38145#23450 @@ -91,7 +100,7 @@ inherited frmDyeSimpleTechnicsList: TfrmDyeSimpleTechnicsList OnClick = TNochkClick end object ToolButton3: TToolButton - Left = 592 + Left = 663 Top = 0 AutoSize = True Caption = #20445#23384#26684#24335 @@ -99,7 +108,7 @@ inherited frmDyeSimpleTechnicsList: TfrmDyeSimpleTechnicsList OnClick = ToolButton3Click end object TBClose: TToolButton - Left = 687 + Left = 758 Top = 0 AutoSize = True Caption = #20851#38381 @@ -111,32 +120,72 @@ inherited frmDyeSimpleTechnicsList: TfrmDyeSimpleTechnicsList Left = 0 Top = 38 Width = 1540 - Height = 38 + Height = 75 Align = alTop BevelInner = bvRaised BevelOuter = bvLowered Color = clSkyBlue + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -11 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False TabOrder = 1 object Label1: TLabel Left = 316 Top = 13 - Width = 48 - Height = 12 + Width = 44 + Height = 11 Caption = #24037#33402#21517#31216 end object Label3: TLabel Left = 30 Top = 13 - Width = 48 - Height = 12 + Width = 44 + Height = 11 Caption = #24037#33402#32534#21495 end + object Label2: TLabel + Left = 30 + Top = 42 + Width = 22 + Height = 11 + Caption = #23383#27597 + end + object Label4: TLabel + Left = 182 + Top = 42 + Width = 22 + Height = 11 + Caption = #20135#21697 + end + object Label5: TLabel + Left = 313 + Top = 42 + Width = 44 + Height = 11 + Caption = #24037#33402#35201#27714 + end + object Label6: TLabel + Left = 443 + Top = 31 + Width = 105 + Height = 33 + Caption = #23383#27597#65306#31579#36873#31532'1'#20301#13#10#20135#21697#65306#31579#36873'2345'#20301#13#10#24037#33402#35201#27714#65306#31579#36873#31532'7'#20301 + Font.Charset = GB2312_CHARSET + Font.Color = clTeal + Font.Height = -11 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end object DTMName: TEdit Tag = 2 Left = 366 Top = 9 Width = 180 - Height = 20 + Height = 19 TabOrder = 0 OnKeyPress = DTMNameKeyPress end @@ -145,14 +194,38 @@ inherited frmDyeSimpleTechnicsList: TfrmDyeSimpleTechnicsList Left = 78 Top = 9 Width = 180 - Height = 20 + Height = 19 TabOrder = 1 OnKeyPress = DTMNoKeyPress end + object Char: TEdit + Left = 78 + Top = 38 + Width = 70 + Height = 19 + TabOrder = 2 + OnKeyPress = CharKeyPress + end + object Product: TEdit + Left = 211 + Top = 38 + Width = 70 + Height = 19 + TabOrder = 3 + OnKeyPress = CharKeyPress + end + object GYRequire: TEdit + Left = 367 + Top = 38 + Width = 70 + Height = 19 + TabOrder = 4 + OnKeyPress = CharKeyPress + end end object cxTabControl1: TcxTabControl [2] Left = 0 - Top = 76 + Top = 113 Width = 1540 Height = 23 Align = alTop @@ -171,16 +244,16 @@ inherited frmDyeSimpleTechnicsList: TfrmDyeSimpleTechnicsList end object Panel2: TPanel [3] Left = 0 - Top = 99 + Top = 136 Width = 785 - Height = 746 + Height = 709 Align = alLeft TabOrder = 3 object cxGrid2: TcxGrid Left = 1 Top = 1 Width = 630 - Height = 744 + Height = 707 Align = alLeft TabOrder = 0 object Tv2: TcxGridDBTableView @@ -223,7 +296,7 @@ inherited frmDyeSimpleTechnicsList: TfrmDyeSimpleTechnicsList FooterAlignmentHorz = taCenter HeaderAlignmentHorz = taCenter HeaderGlyphAlignmentHorz = taCenter - Width = 29 + Width = 37 end object v2GYNO: TcxGridDBColumn Caption = #24037#33402#32534#21495 @@ -265,6 +338,7 @@ inherited frmDyeSimpleTechnicsList: TfrmDyeSimpleTechnicsList DataBinding.FieldName = 'Editer' DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter + Options.Editing = False Width = 130 end object Tv2Edittime: TcxGridDBColumn @@ -272,6 +346,7 @@ inherited frmDyeSimpleTechnicsList: TfrmDyeSimpleTechnicsList DataBinding.FieldName = 'Edittime' DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter + Options.Editing = False Width = 100 end end @@ -283,7 +358,7 @@ inherited frmDyeSimpleTechnicsList: TfrmDyeSimpleTechnicsList Left = 635 Top = 1 Width = 149 - Height = 744 + Height = 707 Align = alClient TabOrder = 1 object cxGrid1: TcxGrid @@ -315,13 +390,64 @@ inherited frmDyeSimpleTechnicsList: TfrmDyeSimpleTechnicsList GridView = Tv1 end end - object cxGrid9: TcxGrid + object ToolBar2: TToolBar + Tag = 1 Left = 1 - Top = 424 + Top = 386 Width = 147 - Height = 319 - Align = alClient + Height = 76 + AutoSize = True + ButtonHeight = 38 + ButtonWidth = 75 + Caption = 'ToolBar2' + Images = DataLink_DyePlan.ImageList_new32 + List = True + ShowCaptions = True TabOrder = 1 + object ToolButton5: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21024#34892 + ImageIndex = 6 + ParentShowHint = False + ShowHint = False + OnClick = ToolButton5Click + end + object ToolButton6: TToolButton + Left = 71 + Top = 0 + AutoSize = True + Caption = #26174#31034 + ImageIndex = 8 + Wrap = True + OnClick = ToolButton6Click + end + object TbMoveUp: TToolButton + Left = 0 + Top = 38 + AutoSize = True + Caption = #19978#31227 + ImageIndex = 19 + OnClick = TbMoveUpClick + end + object ToolButton7: TToolButton + Left = 71 + Top = 38 + AutoSize = True + Caption = #19979#31227 + ImageIndex = 17 + OnClick = ToolButton7Click + end + end + object cxGrid3: TcxGrid + Left = 1 + Top = 462 + Width = 147 + Height = 244 + Align = alClient + TabOrder = 2 + LookAndFeel.NativeStyle = False object Tv3: TcxGridDBTableView Navigator.Buttons.CustomButtons = <> ScrollbarAnnotations.CustomAnnotations = <> @@ -335,19 +461,12 @@ inherited frmDyeSimpleTechnicsList: TfrmDyeSimpleTechnicsList DataBinding.FieldName = 'PSNO' DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter - Width = 41 + Width = 46 end object Tv3PSType: TcxGridDBColumn Caption = #24037#24207#31867#22411 DataBinding.FieldName = 'PSType' DataBinding.IsNullValueType = True - PropertiesClassName = 'TcxButtonEditProperties' - Properties.Buttons = < - item - Default = True - Kind = bkEllipsis - end> - Properties.OnButtonClick = ButtonEdit HeaderAlignmentHorz = taCenter Width = 80 end @@ -373,66 +492,33 @@ inherited frmDyeSimpleTechnicsList: TfrmDyeSimpleTechnicsList Width = 80 end end - object cxGridLevel8: TcxGridLevel + object cxGrid3Level1: TcxGridLevel GridView = Tv3 end end - object ToolBar2: TToolBar - Tag = 1 - Left = 1 - Top = 386 - Width = 147 - Height = 38 - AutoSize = True - ButtonHeight = 38 - ButtonWidth = 75 - Caption = 'ToolBar2' - Images = DataLink_DyePlan.ImageList_new32 - List = True - ShowCaptions = True - TabOrder = 2 - object ToolButton5: TToolButton - Left = 0 - Top = 0 - AutoSize = True - Caption = #21024#34892 - ImageIndex = 6 - ParentShowHint = False - ShowHint = False - OnClick = ToolButton5Click - end - object ToolButton6: TToolButton - Left = 71 - Top = 0 - AutoSize = True - Caption = #26174#31034 - ImageIndex = 8 - OnClick = ToolButton6Click - end - end end object cxSplitter1: TcxSplitter Left = 631 Top = 1 Width = 4 - Height = 744 + Height = 707 AutoPosition = False Control = cxGrid2 end end object ScrollBox1: TScrollBox [4] Left = 789 - Top = 99 + Top = 136 Width = 751 - Height = 746 + Height = 709 Align = alClient TabOrder = 4 end object cxSplitter2: TcxSplitter [5] Left = 785 - Top = 99 + Top = 136 Width = 4 - Height = 746 + Height = 709 AlignSplitter = salRight Control = Panel2 end @@ -469,8 +555,8 @@ inherited frmDyeSimpleTechnicsList: TfrmDyeSimpleTechnicsList object GPM_2: TcxGridPopupMenu Grid = cxGrid2 PopupMenus = <> - Left = 447 - Top = 361 + Left = 463 + Top = 337 end object DS_2: TDataSource DataSet = CDS_2 @@ -519,9 +605,9 @@ inherited frmDyeSimpleTechnicsList: TfrmDyeSimpleTechnicsList Top = 564 end object GPM_3: TcxGridPopupMenu - Grid = cxGrid9 + Grid = cxGrid3 PopupMenus = <> - Left = 495 - Top = 321 + Left = 519 + Top = 289 end end diff --git a/F02染色计划单/U_DyeSimpleTechnicsList.pas b/F02染色计划单/U_DyeSimpleTechnicsList.pas index e8098b8..28cb87f 100644 --- a/F02染色计划单/U_DyeSimpleTechnicsList.pas +++ b/F02染色计划单/U_DyeSimpleTechnicsList.pas @@ -16,7 +16,8 @@ uses dxBarBuiltInMenu, Menus, U_BaseList, dxSkinsCore, dxSkinsDefaultPainters, dxDateRanges, dxScrollbarAnnotations, cxContainer, cxDropDownEdit, cxLabel, cxButtons, cxMemo, U_frameFPList, U_frameGJList, U_frameGDXList, U_frameFSList, - U_frameCCQXList, U_frameJGQXList, U_frameRGQXList, U_frameYMList; + U_frameCCQXList, U_frameJGQXList, U_frameRGQXList, U_frameYMList, + U_framePDList; //U_frameJGQXList, U_frameRGQXList, U_frameCCQXList, U_frameYMList @@ -62,26 +63,36 @@ type cxGrid1: TcxGrid; Tv1: TcxGridDBTableView; cxGrid1Level1: TcxGridLevel; - cxGrid9: TcxGrid; - Tv3: TcxGridDBTableView; - cxGridLevel8: TcxGridLevel; Tv1PSType: TcxGridDBColumn; CDS_GX: TClientDataSet; DS_GX: TDataSource; - Tv3PSNO: TcxGridDBColumn; - Tv3PSType: TcxGridDBColumn; - Tv3PSName: TcxGridDBColumn; - Tv3PSID: TcxGridDBColumn; Tv2DTMID: TcxGridDBColumn; ToolBar2: TToolBar; ToolButton5: TToolButton; Tv2Editer: TcxGridDBColumn; Tv2Edittime: TcxGridDBColumn; ToolButton6: TToolButton; - Tv3Page: TcxGridDBColumn; GPM_3: TcxGridPopupMenu; cxSplitter2: TcxSplitter; cxSplitter1: TcxSplitter; + TbCopy: TToolButton; + TbMoveUp: TToolButton; + ToolButton7: TToolButton; + Label2: TLabel; + Label4: TLabel; + Label5: TLabel; + Char: TEdit; + Product: TEdit; + GYRequire: TEdit; + Label6: TLabel; + Tv3: TcxGridDBTableView; + cxGrid3Level1: TcxGridLevel; + cxGrid3: TcxGrid; + Tv3PSNO: TcxGridDBColumn; + Tv3PSType: TcxGridDBColumn; + Tv3PSName: TcxGridDBColumn; + Tv3PSID: TcxGridDBColumn; + Tv3Page: TcxGridDBColumn; procedure FormDestroy(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure TBCloseClick(Sender: TObject); @@ -108,6 +119,10 @@ type procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); procedure DTMNameKeyPress(Sender: TObject; var Key: Char); procedure DTMNoKeyPress(Sender: TObject; var Key: Char); + procedure TbCopyClick(Sender: TObject); + procedure TbMoveUpClick(Sender: TObject); + procedure ToolButton7Click(Sender: TObject); + procedure CharKeyPress(Sender: TObject; var Key: Char); private { Private declarations } @@ -131,6 +146,7 @@ type public fPSIDList: string; fmanage: string; + fState: string; end; var @@ -143,6 +159,7 @@ var frameRGQXList1, frameRGQXList2, frameRGQXList3: TframeRGQXList; frameCCQXList1, frameCCQXList2, frameCCQXList3: TframeCCQXList; frameYMList1, frameYMList2, frameYMList3: TframeYMList; + framePDList1, framePDList2, framePDList3: TframePDList; implementation @@ -231,7 +248,50 @@ begin end; procedure TfrmDyeSimpleTechnicsList.InitGrid(); +var + Pwhere: string; begin + + Pwhere := SGetFilters(Panel1, 1, 2); + + if trim(char.Text) <> '' then + begin + if Length(trim(char.Text)) > 1 then + begin + if Pwhere <> '' then + Pwhere := Pwhere + ' and 1=2' + else + Pwhere := '1=2'; + end + else + begin + if Pwhere <> '' then + Pwhere := Pwhere + ' and DTMNo like ''' + trim(char.Text) + '%-%'' ' + else + Pwhere := 'DTMNo like ''' + trim(char.Text) + '%-%'' '; + end; + end; + + if trim(Product.Text) <> '' then + begin + if Pwhere <> '' then + Pwhere := Pwhere + ' and DTMNo like ''%' + trim(Product.Text) + '%-%''' + else + Pwhere := 'DTMNo like ''%' + trim(Product.Text) + '%-%'''; + end; + + if trim(GYRequire.Text) <> '' then + begin + if Pwhere <> '' then + begin + Pwhere := Pwhere + ' and SUBSTRING(DTMNo, 7, 1) = ''' + trim(GYRequire.Text) + ''''; + end + else + begin + Pwhere := ' SUBSTRING(DTMNo, 7, 1) = ''' + trim(GYRequire.Text) + ''''; + end; + end; + try ADOQueryMain.DisableControls; @@ -239,9 +299,13 @@ begin begin Close; SQL.Clear; - sql.Add(' select * FROM Dye_Technics_Main'); + sql.Add(' select * FROM Dye_Technics_Main where 1=1 '); + if Pwhere <> '' then + begin + sql.Add(' and ' + Pwhere); + end; if cxTabControl1.TabIndex < 2 then - sql.Add(' where isnull(status,''0'')=''' + inttostr(cxTabControl1.TabIndex) + ''' '); + sql.Add(' and isnull(status,''0'')=''' + inttostr(cxTabControl1.TabIndex) + ''' '); // ShowMessage(SQL.Text); Open; @@ -484,6 +548,21 @@ begin begin frameYMList3.SaveData(maxId); end; + end + else if mPSType = 'Ĵ' then + begin + if CDS_GX.FieldByName('page').AsString = 'framePDList1' then + begin + framePDList1.SaveData(maxId); + end + else if CDS_GX.FieldByName('page').AsString = 'framePDList2' then + begin + framePDList2.SaveData(maxId); + end + else if CDS_GX.FieldByName('page').AsString = 'framePDList3' then + begin + framePDList3.SaveData(maxId); + end; end; CDS_GX.Next; @@ -664,6 +743,7 @@ begin sql.Add(' select A.* FROM V_Dye_Technics_Details A'); sql.Add(' Where A.DTMID=''' + trim(CDS_2.fieldbyname('DTMID').AsString) + ''''); SQL.Add(' ORDER BY A.PSNO'); +// ShowMessage(sql.Text); Open; end; SCreateCDS(ADOQueryTemp, CDS_GX); @@ -1196,6 +1276,63 @@ begin SCSHData(ADOQueryTemp, frameYMList3.Panel_zm, 2); frameYMList3.zm_Precautions.Lines.Text := ADOQueryTemp.FieldByName('zm_Precautions').AsString; + end; + end + else if CDS_GX.FieldByName('PSType').AsString = 'Ĵ' then + begin + if self.FindComponent('framePDList1') = nil then + begin + framePDList1 := TframePDList.Create(self); + framePDList1.Name := 'framePDList1'; + framePDList1.Parent := self.ScrollBox1; + framePDList1.Top := GetNextFrameTop; + framePDList1.Visible := True; + framePDList1.LabelPD.Caption := CDS_GX.FieldByName('PSName').AsString; + framePDList1.InitGrid(); + + CDS_GX.Edit; + CDS_GX.FieldByName('page').AsString := 'framePDList1'; + CDS_GX.Post; + + SCSHData(ADOQueryTemp, framePDList1.Panel_pd, 2); +// frameYMList1.zm_Precautions.Lines.Text := ADOQueryTemp.FieldByName('zm_Precautions').AsString; + + end + else if self.FindComponent('framePDList2') = nil then + begin + framePDList2 := TframePDList.Create(self); + framePDList2.Name := 'framePDList2'; + framePDList2.Parent := self.ScrollBox1; + framePDList2.Top := GetNextFrameTop; + framePDList2.Visible := True; + framePDList2.LabelPD.Caption := CDS_GX.FieldByName('PSName').AsString; + framePDList2.InitGrid(); + + CDS_GX.Edit; + CDS_GX.FieldByName('page').AsString := 'framePDList2'; + CDS_GX.Post; + + SCSHData(ADOQueryTemp, framePDList2.Panel_pd, 2); +// frameYMList2.zm_Precautions.Lines.Text := ADOQueryTemp.FieldByName('zm_Precautions').AsString; + + end + else if self.FindComponent('framePDList3') = nil then + begin + framePDList3 := TframePDList.Create(self); + framePDList3.Name := 'framePDList3'; + framePDList3.Parent := self.ScrollBox1; + framePDList3.Top := GetNextFrameTop; + framePDList3.Visible := True; + framePDList3.LabelPD.Caption := CDS_GX.FieldByName('PSName').AsString; + framePDList3.InitGrid(); + + CDS_GX.Edit; + CDS_GX.FieldByName('page').AsString := 'framePDList3'; + CDS_GX.Post; + + SCSHData(ADOQueryTemp, framePDList3.Panel_pd, 2); +// frameYMList3.zm_Precautions.Lines.Text := ADOQueryTemp.FieldByName('zm_Precautions').AsString; + end; end; CDS_GX.Next; @@ -1283,6 +1420,14 @@ begin TFrame(Component).Free; end; end; + for i := 1 to 3 do + begin + Component := self.FindComponent('framePDList' + IntToStr(i)); + if Component <> nil then + begin + TFrame(Component).Free; + end; + end; end; procedure TfrmDyeSimpleTechnicsList.FormDestroy(Sender: TObject); @@ -1372,6 +1517,42 @@ begin end; end; +procedure TfrmDyeSimpleTechnicsList.TbMoveUpClick(Sender: TObject); +var + test: string; + ACurrentRow, APrevRow: Integer; +begin + ACurrentRow := Tv3.DataController.FocusedRowIndex + 1;//ǰλã1ʼ + if ACurrentRow = 1 then // Ѿǵһ¼ + Exit; + + APrevRow := ACurrentRow - 1; + + CDS_GX.DisableControls; + try + // ǰ¼һ¼˳ֵ + CDS_GX.RecNo := ACurrentRow; + CDS_GX.Edit; + CDS_GX.FieldByName('PSNo').AsInteger := APrevRow; + test := CDS_GX.FieldByName('PSName').AsString; + CDS_GX.Post; + + CDS_GX.RecNo := APrevRow; + CDS_GX.Edit; + CDS_GX.FieldByName('PSNo').AsInteger := ACurrentRow; + test := CDS_GX.FieldByName('PSName').AsString; + CDS_GX.Post; + + // ˢ +// CDS_1.Refresh; + CDS_GX.IndexFieldNames := 'PSNo'; + // ¶λƶļ¼ + Tv3.DataController.FocusedRowIndex := APrevRow - 1; + finally + CDS_GX.EnableControls; + end; +end; + procedure TfrmDyeSimpleTechnicsList.FormShow(Sender: TObject); begin inherited; @@ -1455,6 +1636,212 @@ begin InitGXDetails(); end; +procedure TfrmDyeSimpleTechnicsList.ToolButton7Click(Sender: TObject); +var + test: string; + ACurrentRow, APrevRow: Integer; +begin + ACurrentRow := Tv3.DataController.FocusedRowIndex + 1;//ǰλã1ʼ + if ACurrentRow = CDS_GX.RecordCount then // Ѿǵһ¼ + Exit; + + APrevRow := ACurrentRow + 1; + + CDS_GX.DisableControls; + try + // ǰ¼һ¼˳ֵ + + CDS_GX.RecNo := APrevRow; + CDS_GX.Edit; + CDS_GX.FieldByName('PSNo').AsInteger := ACurrentRow; + test := CDS_GX.FieldByName('PSName').AsString; + CDS_GX.Post; + + CDS_GX.RecNo := ACurrentRow; + CDS_GX.Edit; + CDS_GX.FieldByName('PSNo').AsInteger := APrevRow; + test := CDS_GX.FieldByName('PSName').AsString; + CDS_GX.Post; + + + + // ˢ +// CDS_1.Refresh; + CDS_GX.IndexFieldNames := 'PSNo'; + + Tv3.DataController.FocusedRowIndex := ACurrentRow - 1; + finally + CDS_GX.EnableControls; + end; +end; + +procedure TfrmDyeSimpleTechnicsList.TbCopyClick(Sender: TObject); +var + maxNo, maxsubid: string; + mMaxDTMID: string; + mCopyDTMID: string; +begin + + try + ADOQueryCmd.Connection.BeginTrans; + //踴ƵĹ + mCopyDTMID := CDS_2.FieldByName('DTMID').AsString; +// fState := ''; + if GetLSNo(ADOQueryCmd, mMaxDTMID, 'GY', 'Dye_Technics_Main', 3, 1) = False then + raise Exception.Create('ȡʧܣ'); + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from Dye_Technics_Main where 1 = 2'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('Editer').Value := Trim(DName); + FieldByName('Edittime').Value := SGetServerDateTime(ADOQueryTemp); + FieldByName('DTMID').Value := Trim(mMaxDTMID); + Post; + end; + + CDS_GX.First; + while not CDS_GX.Eof do + begin + + if GetLSNo(ADOQueryCmd, maxNo, 'JP', 'Dye_Process', 4, 1) = False then + begin + Application.MessageBox('ȡʧܣ', 'ʾ', 0); + Exit; + end; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + SQL.Add('exec P_CopyDyeProcess '); + SQL.Add(' @PSID = ' + QuotedStr(Trim(CDS_GX.fieldbyname('PSID').AsString))); + SQL.Add(' ,@maxNo = ' + QuotedStr(Trim(maxNo))); + SQL.Add(' ,@DName = ' + QuotedStr(Trim(DName))); +// SQL.Add(' ,@DTMID = ' + QuotedStr(Trim(DTMID.Text))); + Open; + end; + + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('SELECT * FROM Dye_Technics_Sub WHERE 1=2'); + Open; + end; + with ADOQueryCmd do + begin + Append; + FieldByName('PSNO').Value := Trim(CDS_GX.fieldbyname('PSNO').AsString); + FieldByName('DTMID').Value := Trim(mMaxDTMID); + FieldByName('PSId').Value := Trim(maxNo); + Post; + end; + + with ADOQueryCmd do + begin + Close; + SQL.Clear; + SQL.Add(' select * from BS_Cloth_GY_Sub where PSID = ' + QuotedStr(Trim(maxNo))); + Open; + end; + ADOQueryCmd.First; + while not ADOQueryCmd.Eof do + begin + + if ADOQueryCmd.FieldByName('gytype').Value = 'ϴ' then + begin + if GetLSNo(ADOQueryTemp, maxsubid, 'CCQX', 'Bs_Cloth_GY_Sub', 5, 1) = False then + begin + Application.MessageBox('ȡˮʧܣ', 'ʾ', 0); + Exit; + end; + end + else if ADOQueryCmd.FieldByName('gytype').Value = 'Ⱦϴ' then + begin + if GetLSNo(ADOQueryTemp, maxsubid, 'RGQX', 'Bs_Cloth_GY_Sub', 5, 1) = False then + begin + Application.MessageBox('ȡˮʧܣ', 'ʾ', 0); + Exit; + end; + end + else if ADOQueryCmd.FieldByName('gytype').Value = 'ϴ' then + begin + if GetLSNo(ADOQueryTemp, maxsubid, 'JGQX', 'Bs_Cloth_GY_Sub', 5, 1) = False then + begin + Application.MessageBox('ȡˮʧܣ', 'ʾ', 0); + Exit; + end; + end + else if ADOQueryCmd.FieldByName('gytype').Value = 'ˮ' then + begin + if GetLSNo(ADOQueryTemp, maxsubid, 'FS', 'Bs_Cloth_GY_Sub', 5, 1) = False then + begin + Application.MessageBox('ȡˮʧܣ', 'ʾ', 0); + Exit; + end; + end + else if ADOQueryCmd.FieldByName('gytype').Value = 'ν' then + begin + if GetLSNo(ADOQueryTemp, maxsubid, 'GJ', 'Bs_Cloth_GY_Sub', 5, 1) = False then + begin + Application.MessageBox('ȡˮʧܣ', 'ʾ', 0); + Exit; + end; + end + else + begin + if GetLSNo(ADOQueryTemp, maxsubid, 'FP', 'Bs_Cloth_GY_Sub', 5, 1) = False then + begin + Application.MessageBox('ȡˮʧܣ', 'ʾ', 0); + Exit; + end; + end; + + ADOQueryCmd.Edit; + ADOQueryCmd.fieldByName('BCPID').Value := maxsubid; + ADOQueryCmd.Post; + ADOQueryCmd.Next; + end; + + CDS_GX.next; + end; + + CDS_2.Append; + CDS_2.FieldByName('DTMID').AsString := mMaxDTMID; + tv2.Columns[1].Options.Editing := true; + tv2.Columns[2].Options.Editing := true; + + with ADOQueryTemp do + begin + Close; + SQL.Clear; + sql.Add(' select A.* FROM V_Dye_Technics_Details A'); + sql.Add(' Where A.DTMID=''' + trim(mMaxDTMID) + ''''); + SQL.Add(' ORDER BY A.PSNO'); + Open; + end; + SCreateCDS(ADOQueryTemp, CDS_GX); + SInitCDSData(ADOQueryTemp, CDS_GX); + + CloseAllFrames(); + InitGXDetails(); + + ADOQueryCmd.Connection.CommitTrans; +// FPSID := maxId; + + except + + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('ʧ!', 'ʾ', 0); + end; +end; + procedure TfrmDyeSimpleTechnicsList.Tv1DblClick(Sender: TObject); begin @@ -1472,6 +1859,8 @@ end; procedure TfrmDyeSimpleTechnicsList.Tv2FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); begin +// if fState <> '' then +// begin CloseAllFrames(); SetStatus(); InitGlide(); @@ -1496,6 +1885,8 @@ begin SCreateCDS(ADOQueryCMD, CDS_PSType); SInitCDSData(ADOQueryCMD, CDS_PSType); end; +// end; + end; procedure TfrmDyeSimpleTechnicsList.ButtonEdit(Sender: TObject; AButtonIndex: Integer); @@ -1522,7 +1913,11 @@ end; procedure TfrmDyeSimpleTechnicsList.DTMNameKeyPress(Sender: TObject; var Key: Char); begin - ToolButton2.Click; + if Key = #13 then + begin + ToolButton2.Click; +end; + end; procedure TfrmDyeSimpleTechnicsList.DTMNoChange(Sender: TObject); @@ -1532,7 +1927,11 @@ end; procedure TfrmDyeSimpleTechnicsList.DTMNoKeyPress(Sender: TObject; var Key: Char); begin - ToolButton2.Click; + if Key = #13 then + begin + ToolButton2.Click; + end; + end; procedure TfrmDyeSimpleTechnicsList.TchkClick(Sender: TObject); @@ -1673,6 +2072,16 @@ begin end; end; +procedure TfrmDyeSimpleTechnicsList.CharKeyPress(Sender: TObject; var Key: Char); +begin + if Key = #13 then + begin + InitGrid(); + + end; + +end; + procedure TfrmDyeSimpleTechnicsList.ClearAllTextEditsByHint(AParent: TWinControl; const AHint: string; AExclude: TcxTextEdit = nil); var i: Integer; diff --git a/F02染色计划单/U_DyeTechnicsList.dfm b/F02染色计划单/U_DyeTechnicsList.dfm index 12a89f1..b201cfc 100644 --- a/F02染色计划单/U_DyeTechnicsList.dfm +++ b/F02染色计划单/U_DyeTechnicsList.dfm @@ -157,7 +157,8 @@ inherited frmDyeTechnicsList: TfrmDyeTechnicsList Height = 494 Align = alLeft TabOrder = 2 - ExplicitLeft = 2 + ExplicitLeft = -3 + ExplicitTop = 105 object Tv2: TcxGridDBTableView Navigator.Buttons.CustomButtons = <> Navigator.Buttons.Delete.Enabled = False @@ -280,8 +281,6 @@ inherited frmDyeTechnicsList: TfrmDyeTechnicsList Height = 494 Align = alClient TabOrder = 4 - ExplicitLeft = 854 - ExplicitTop = 105 object TV1: TcxGridDBTableView Navigator.Buttons.CustomButtons = <> Navigator.Buttons.Delete.Enabled = False diff --git a/F02染色计划单/U_DyeTechnicsinput.dfm b/F02染色计划单/U_DyeTechnicsinput.dfm index 4db1687..17fdecf 100644 --- a/F02染色计划单/U_DyeTechnicsinput.dfm +++ b/F02染色计划单/U_DyeTechnicsinput.dfm @@ -27,10 +27,11 @@ inherited frmDyeTechnicsinput: TfrmDyeTechnicsinput object cxGrid2: TcxGrid Left = 1 Top = 39 - Width = 15 + Width = 151 Height = 553 Align = alClient TabOrder = 0 + ExplicitWidth = 15 object Tv2: TcxGridDBTableView OnDblClick = Tv2DblClick Navigator.Buttons.CustomButtons = <> @@ -114,9 +115,9 @@ inherited frmDyeTechnicsinput: TfrmDyeTechnicsinput end end object cxGrid3: TcxGrid - Left = -120 + Left = 152 Top = 39 - Width = 432 + Width = 160 Height = 553 Align = alRight TabOrder = 2 @@ -175,6 +176,8 @@ inherited frmDyeTechnicsinput: TfrmDyeTechnicsinput Align = alClient PopupMenu = PM_1 TabOrder = 0 + ExplicitLeft = 5 + ExplicitTop = 119 object TV1: TcxGridDBTableView Navigator.Buttons.CustomButtons = <> Navigator.Buttons.Delete.Enabled = False @@ -322,6 +325,8 @@ inherited frmDyeTechnicsinput: TfrmDyeTechnicsinput BevelOuter = bvLowered Color = clSkyBlue TabOrder = 2 + ExplicitLeft = -4 + ExplicitTop = 33 object Label2: TLabel Left = 295 Top = 9 diff --git a/F02染色计划单/U_Dye_AbnormalCardSel.dfm b/F02染色计划单/U_Dye_AbnormalCardSel.dfm new file mode 100644 index 0000000..606164e --- /dev/null +++ b/F02染色计划单/U_Dye_AbnormalCardSel.dfm @@ -0,0 +1,4618 @@ +inherited frmDye_AbnormalCardSel: TfrmDye_AbnormalCardSel + Left = 372 + Top = 106 + Caption = #24322#24120#21345#32452#36873#25321 + ClientHeight = 558 + ClientWidth = 893 + Color = clWhite + Font.Charset = GB2312_CHARSET + Font.Height = -12 + Font.Name = #23435#20307 + Position = poScreenCenter + OnClose = FormClose + OnKeyDown = FormKeyDown + ExplicitWidth = 909 + ExplicitHeight = 597 + PixelsPerInch = 96 + TextHeight = 12 + object cxGrid1: TcxGrid [0] + Left = 0 + Top = 82 + Width = 893 + Height = 476 + Align = alClient + TabOrder = 0 + object TV1: TcxGridDBTableView + OnDblClick = TV1DblClick + Navigator.Buttons.CustomButtons = <> + ScrollbarAnnotations.CustomAnnotations = <> + DataController.DataSource = DS_1 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsView.GroupByBox = False + Styles.Header = Default + object TV1F_Name: TcxGridDBColumn + Caption = #21345#32452#21495 + DataBinding.FieldName = 'KaZu' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 140 + end + object TV1OrderNo: TcxGridDBColumn + Caption = #35745#21010#21333#21495 + DataBinding.FieldName = 'OrderNo' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 150 + end + object TV1PCPiece: TcxGridDBColumn + Caption = #21345#32452#21305#25968 + DataBinding.FieldName = 'PCPiece' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 80 + end + object TV1PCQty: TcxGridDBColumn + Caption = #21345#32452#25968#37327 + DataBinding.FieldName = 'PCQty' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 80 + end + object TV1C_Name: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'C_Name' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 150 + end + object TV1C_Width: TcxGridDBColumn + Caption = #38376#24133 + DataBinding.FieldName = 'C_Width' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 80 + end + object TV1C_GramWeight: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'C_GramWeight' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 80 + end + object TV1DTMPSlist: TcxGridDBColumn + Caption = #24037#24207 + DataBinding.FieldName = 'DTMPSlist' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 482 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = TV1 + end + end + object ToolBar1: TToolBar [1] + Tag = 1 + Left = 0 + Top = 0 + Width = 893 + Height = 38 + AutoSize = True + ButtonHeight = 38 + ButtonWidth = 91 + Caption = 'ToolBar1' + Color = clWhite + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = ImageList1 + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 1 + ExplicitTop = 6 + object ToolButton1: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #36873#25321 + ImageIndex = 12 + OnClick = ToolButton1Click + end + object TBSaveFormat: TToolButton + Left = 71 + Top = 0 + AutoSize = True + Caption = #20445#23384#26684#24335 + ImageIndex = 16 + OnClick = TBSaveFormatClick + end + object TBClose: TToolButton + Left = 166 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 7 + OnClick = TBCloseClick + end + end + object Panel1: TPanel [2] + Left = 0 + Top = 38 + Width = 893 + Height = 44 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 2 + object Label1: TLabel + Left = 18 + Top = 17 + Width = 48 + Height = 12 + Caption = #24037#33402#32534#21495 + end + object Label2: TLabel + Left = 250 + Top = 17 + Width = 48 + Height = 12 + Caption = #24037#33402#21517#31216 + end + object DTMNo: TEdit + Tag = 2 + Left = 70 + Top = 12 + Width = 169 + Height = 20 + TabOrder = 0 + OnChange = DTMNoChange + end + object DTMName: TEdit + Tag = 2 + Left = 302 + Top = 12 + Width = 169 + Height = 20 + TabOrder = 1 + OnChange = DTMNoChange + end + end + inherited ADOQueryBaseCmd: TADOQuery + Connection = ADOConnection1 + Left = 297 + Top = 128 + end + inherited ADOQueryBaseTemp: TADOQuery + Connection = ADOConnection1 + Left = 193 + Top = 129 + 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 = 576 + Top = 272 + end + object CDS_1: TClientDataSet + Aggregates = <> + Params = <> + Left = 536 + Top = 272 + end + object ADOConnection1: TADOConnection + LoginPrompt = False + Left = 624 + Top = 168 + end + object GPM_1: TcxGridPopupMenu + Grid = cxGrid1 + 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 = 411 + Top = 168 + 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 +end diff --git a/F02染色计划单/U_Dye_AbnormalCardSel.pas b/F02染色计划单/U_Dye_AbnormalCardSel.pas new file mode 100644 index 0000000..f06f343 --- /dev/null +++ b/F02染色计划单/U_Dye_AbnormalCardSel.pas @@ -0,0 +1,193 @@ +unit U_Dye_AbnormalCardSel; + +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, dxSkinsCore, dxSkinsDefaultPainters, cxNavigator, + dxDateRanges, dxBarBuiltInMenu, System.ImageList, U_BaseInput, + dxScrollbarAnnotations, cxDropDownEdit, cxCheckBox, cxCheckComboBox, + cxCheckGroup; + +type + TfrmDye_AbnormalCardSel = class(TfrmBaseHelp) + TV1: TcxGridDBTableView; + cxGrid1Level1: TcxGridLevel; + cxGrid1: TcxGrid; + ToolBar1: TToolBar; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + DS_1: TDataSource; + CDS_1: TClientDataSet; + TBSaveFormat: TToolButton; + TBClose: TToolButton; + ToolButton1: TToolButton; + ADOConnection1: TADOConnection; + Panel1: TPanel; + Label1: TLabel; + DTMNo: TEdit; + GPM_1: TcxGridPopupMenu; + ImageList1: TImageList; + TV1C_Name: TcxGridDBColumn; + TV1OrderNo: TcxGridDBColumn; + TV1DTMPSlist: TcxGridDBColumn; + 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; + Label2: TLabel; + DTMName: TEdit; + TV1F_Name: TcxGridDBColumn; + TV1C_Width: TcxGridDBColumn; + TV1C_GramWeight: TcxGridDBColumn; + TV1PCPiece: TcxGridDBColumn; + TV1PCQty: TcxGridDBColumn; + procedure FormCreate(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormShow(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure TBSaveFormatClick(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure DTMNoChange(Sender: TObject); + procedure TV1DblClick(Sender: TObject); + procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); + private + procedure InitGrid(); + { Private declarations } + public + FCoType, FAuthority, FBCIID, fcode, FC_Name: string; + { Public declarations } + end; + +var + frmDye_AbnormalCardSel: TfrmDye_AbnormalCardSel; + +implementation + +uses + U_DataLink, U_RTFun; + +{$R *.dfm} + +procedure TfrmDye_AbnormalCardSel.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 TfrmDye_AbnormalCardSel.DTMNoChange(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2)); + SCreateCDS(ADOQueryMain, CDS_1); + SInitCDSData(ADOQueryMain, CDS_1); + end; + +end; + +procedure TfrmDye_AbnormalCardSel.FormClose(Sender: TObject; var Action: TCloseAction); +begin + + Action := cahide; +end; + +procedure TfrmDye_AbnormalCardSel.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Close; + sql.Clear; +// sql.Add('select A.* from Bs_Cloth_Dye_Technics A where C_Code = ' + QuotedStr(Trim(fCode))); + SQL.Add(' select A.KaZu,A.OrderNo,A.C_Name,A.C_Width,A.C_GramWeight,A.DTMPSlist '); + SQL.Add(' ,sum(PCPiece) as PCPiece,sum(PCQty) as PCQty '); + SQL.Add(' from Dye_Plan_Card A where A.status = ''-1'' '); + sql.Add(' group by A.KaZu,A.OrderNo,A.C_Name,A.C_Width,A.C_GramWeight,A.DTMPSlist '); + SQL.Add(' ,A.TotalPCIDNum '); + Open; + end; + SCreateCDS(ADOQueryMain, CDS_1); + SInitCDSData(ADOQueryMain, CDS_1); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmDye_AbnormalCardSel.FormShow(Sender: TObject); +begin + inherited; + + InitGrid(); + + ReadCxGrid(self.Caption + 'TV1', TV1, '쳣ѡ'); + KeyPreview := True; +end; + +procedure TfrmDye_AbnormalCardSel.TBCloseClick(Sender: TObject); +begin + inherited; + Close; +end; + +procedure TfrmDye_AbnormalCardSel.TBSaveFormatClick(Sender: TObject); +begin + WriteCxGrid(self.Caption + 'TV1', TV1, '쳣ѡ'); + +end; + +procedure TfrmDye_AbnormalCardSel.ToolButton1Click(Sender: TObject); +begin + if CDS_1.IsEmpty then + Exit; + ModalResult := 1; +end; + +procedure TfrmDye_AbnormalCardSel.TV1DblClick(Sender: TObject); +begin + if CDS_1.IsEmpty then + Exit; + ModalResult := 1; +end; + +procedure TfrmDye_AbnormalCardSel.FormKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); +begin + if Key = VK_ESCAPE then // VK_ESCAPE ESC ij + begin + Key := 0; // ֹ + Close; // ModalResult := mrCancel; + end; +end; + +end. + diff --git a/F02染色计划单/U_framePDList.dfm b/F02染色计划单/U_framePDList.dfm new file mode 100644 index 0000000..a07c517 --- /dev/null +++ b/F02染色计划单/U_framePDList.dfm @@ -0,0 +1,106 @@ +object framePDList: TframePDList + Left = 0 + Top = 0 + Width = 1147 + Height = 61 + TabOrder = 0 + object Panel_pd: TPanel + Left = 0 + Top = 0 + Width = 1147 + Height = 61 + Align = alTop + TabOrder = 0 + object LabelPD: TLabel + Left = 4 + Top = 6 + Width = 24 + Height = 12 + Caption = #25293#25171 + Font.Charset = GB2312_CHARSET + Font.Color = clMenuHighlight + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + end + object cxLabel336: TcxLabel + Left = 29 + Top = 31 + Caption = #36710#36895 + end + object pd_speed: TcxTextEdit + Tag = 2 + Left = 63 + Top = 30 + Style.LookAndFeel.SkinName = 'WXI' + StyleDisabled.LookAndFeel.SkinName = 'WXI' + StyleFocused.LookAndFeel.SkinName = 'WXI' + StyleHot.LookAndFeel.SkinName = 'WXI' + TabOrder = 1 + Width = 70 + end + object cxLabel344: TcxLabel + Left = 207 + Top = 31 + Caption = #28201#24230 + end + object pd_temperature: TcxTextEdit + Tag = 2 + Left = 241 + Top = 30 + Style.LookAndFeel.SkinName = 'WXI' + StyleDisabled.LookAndFeel.SkinName = 'WXI' + StyleFocused.LookAndFeel.SkinName = 'WXI' + StyleHot.LookAndFeel.SkinName = 'WXI' + TabOrder = 3 + Width = 74 + end + end + object ADOQueryMain: TADOQuery + Connection = DataLink_DyePlan.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 187 + Top = 207 + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_DyePlan.ADOLink + Parameters = <> + Left = 284 + Top = 206 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_DyePlan.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 361 + Top = 207 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 427 + Top = 193 + end + object DS_HZ: TDataSource + DataSet = CDS_HZ + Left = 491 + Top = 212 + end + object cxGridPopupMenu2: TcxGridPopupMenu + PopupMenus = <> + Left = 520 + Top = 264 + end + object PopupMenu1: TPopupMenu + Left = 146 + Top = 311 + object N1: TMenuItem + Caption = #20840#36873 + end + object N2: TMenuItem + Caption = #20840#24323 + end + end +end diff --git a/F02染色计划单/U_framePDList.pas b/F02染色计划单/U_framePDList.pas new file mode 100644 index 0000000..32ac832 --- /dev/null +++ b/F02染色计划单/U_framePDList.pas @@ -0,0 +1,172 @@ +unit U_framePDList; + +interface + +uses + Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, + System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, cxGraphics, + cxControls, cxLookAndFeels, cxLookAndFeelPainters, cxContainer, cxEdit, + cxStyles, cxCustomData, cxFilter, cxData, cxDataStorage, cxNavigator, + dxDateRanges, dxScrollbarAnnotations, Data.DB, cxDBData, cxCheckBox, + cxTextEdit, dxBarBuiltInMenu, Vcl.Menus, cxGridCustomPopupMenu, + cxGridPopupMenu, Datasnap.DBClient, Data.Win.ADODB, cxGridLevel, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses, + cxGridCustomView, cxGrid, Vcl.StdCtrls, Vcl.ComCtrls, Vcl.ToolWin, + Vcl.ExtCtrls, dxSkinsCore, dxSkinsDefaultPainters, cxMemo, cxLabel, + cxMaskEdit, cxDropDownEdit; + +type + TframePDList = class(TFrame) + ADOQueryMain: TADOQuery; + ADOQueryCmd: TADOQuery; + ADOQueryTemp: TADOQuery; + CDS_HZ: TClientDataSet; + DS_HZ: TDataSource; + cxGridPopupMenu2: TcxGridPopupMenu; + PopupMenu1: TPopupMenu; + N1: TMenuItem; + N2: TMenuItem; + Panel_pd: TPanel; + LabelPD: TLabel; + cxLabel336: TcxLabel; + pd_speed: TcxTextEdit; + cxLabel344: TcxLabel; + pd_temperature: TcxTextEdit; + procedure TBRafreshClick(Sender: TObject); + + procedure ToolButton5Click(Sender: TObject); + + private + + { Private declarations } + public + procedure InitGrid(); + function SaveData(mPSID : string): Boolean; + { Public declarations } + end; + +implementation + +uses + U_DataLink, U_RTFun, U_LabelPrint; +{$R *.dfm} + +procedure TframePDList.InitGrid(); +begin +// POSNO.SetFocus; +// try +// ADOQueryMain.DisableControls; +// with ADOQueryMain do +// begin +// Close; +// SQL.Clear; +// sql.Add(' select A.* from BS_Position A order by POSNO '); +// Open; +// end; +// SCreateCDS(ADOQueryMain, CDS_HZ); +// SInitCDSData(ADOQueryMain, CDS_HZ); +// finally +// ADOQueryMain.EnableControls; +// ToolButton2.Click; +// end; +end; + +procedure TframePDList.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + + + +procedure TframePDList.ToolButton5Click(Sender: TObject); +begin + if CDS_HZ.IsEmpty then + Exit; + + if CDS_HZ.Locate('SSel', True, []) = False then + begin + Application.MessageBox('ѡݣ', 'ʾ', 0); + Exit; + end; + + if Application.MessageBox('ȷҪɾ', 'ʾ', 32 + 4) <> IDYES then + Exit; + + with CDS_HZ do + begin + while not Eof do + begin + if CDS_HZ.Locate('SSel', True, []) = True then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete BS_Position where POSID=' + QuotedStr(CDS_HZ.FieldByName('POSID').AsString)); + ExecSQL; + end; + end; + + CDS_HZ.Edit; + CDS_HZ.FieldByName('SSel').Value := False; + CDS_HZ.Post; + Next; + end; + end; + InitGrid(); +end; + + +function TframePDList.SaveData(mPSID : string): Boolean; +var + MaxProcessID, MaxBCPID, MaxPSID, MaxDTMID, mDTMID, DTMPSlist: string; + maxsubid1, maxsubid2, maxsubid3, maxsubid4, maxsubid5, maxsubid6, mmaxgx: string; +begin + try + + +//////////////// ////////////////////// + with ADOQueryCmd do + begin + Close; + SQL.Clear; + sql.Add('select * from Bs_Cloth_GY_Main where PSID=''' + Trim(mPSID) + ''''); + Open; + end; + with ADOQueryCmd do + begin + if Trim(mPSID) = '' then + begin + Append; + end + else + begin + Edit; + end; + FieldByName('PSID').Value := Trim(mPSID); + + RTSetsavedata(ADOQueryCmd, 'Bs_Cloth_GY_Main', panel_pd, 2); + ADOQueryCmd.Post; + + + + + end; +//////////////// ////////////////////// + + + +// FPSID := maxId; + Result := True; + except + Result := False; + + Application.MessageBox('ʧ!', 'ʾ', 0); + end; +end; + + + + +end. + diff --git a/F03染色配方管理/Formula.dproj.local b/F03染色配方管理/Formula.dproj.local index 215b16e..c6fbf0b 100644 --- a/F03染色配方管理/Formula.dproj.local +++ b/F03染色配方管理/Formula.dproj.local @@ -1,12 +1,12 @@  - 1899/12/30 00:00:00.000.422,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas + 1899/12/30 00:00:00.000.630,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas 1899/12/30 00:00:00.000.692,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_ClothInfoSel.dfm=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.dfm 1899/12/30 00:00:00.000.092,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_EmployeeSel.pas 1899/12/30 00:00:00.000.734,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas 1899/12/30 00:00:00.000.939,=D:\Dp10Repo\public10\design\U_BaseInput.pas - 1899/12/30 00:00:00.000.630,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas + 1899/12/30 00:00:00.000.422,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas 1899/12/30 00:00:00.000.616,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LablePrint.pas 1899/12/30 00:00:00.000.149,=D:\Dp10Repo\public10\ThreeFun\Form\U_ZDYHelp.pas 1899/12/30 00:00:00.000.339,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_ClothInfoSel.pas @@ -22,13 +22,13 @@ 1899/12/30 00:00:00.000.975,=D:\Dp10Repo\public10\ThreeFun\Fun\U_CompressionFun.pas 1899/12/30 00:00:00.000.979,=D:\Dp10Repo\项目代码\红绿蓝\A00通用窗体\U_LabelPrint.pas 1899/12/30 00:00:00.000.844,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_AttachmentUpload.pas - 1899/12/30 00:00:00.000.736,D:\Dp10Repo\项目代码\睿特\新DLL初始化(CSH.dll)\U_ModuleNote.pas= + 1899/12/30 00:00:00.000.178,=D:\Dp10Repo\public10\design\U_WindowFormdesign.pas 1899/12/30 00:00:00.000.756,D:\Dp10Repo\项目代码\RTBasics\F03染色配方管理\Formula.dproj=D:\Dp10Repo\项目代码\RTBasics\F03染色配方管理\InformationBase.dproj 1899/12/30 00:00:00.000.135,D:\Dp10Repo\项目代码\睿特\新DLL初始化(CSH.dll)\U_ZDYHelp.pas= 1899/12/30 00:00:00.000.048,=D:\Dp10Repo\public10\design\U_BaseList.pas - 1899/12/30 00:00:00.000.086,=D:\Dp10Repo\public10\design\U_cxGridCustomCss.pas 1899/12/30 00:00:00.000.123,=D:\Dp10Repo\public10\design\U_globalVar.pas - 1899/12/30 00:00:00.000.178,=D:\Dp10Repo\public10\design\U_WindowFormdesign.pas + 1899/12/30 00:00:00.000.086,=D:\Dp10Repo\public10\design\U_cxGridCustomCss.pas + 1899/12/30 00:00:00.000.736,D:\Dp10Repo\项目代码\睿特\新DLL初始化(CSH.dll)\U_ModuleNote.pas= diff --git a/F03染色配方管理/Formula.identcache b/F03染色配方管理/Formula.identcache index c6ba28a..4ac0c29 100644 Binary files a/F03染色配方管理/Formula.identcache and b/F03染色配方管理/Formula.identcache differ diff --git a/F04染色刷卡/U_DyeOutput.dfm b/F04染色刷卡/U_DyeOutput.dfm index 68bc514..c0203da 100644 --- a/F04染色刷卡/U_DyeOutput.dfm +++ b/F04染色刷卡/U_DyeOutput.dfm @@ -3,7 +3,7 @@ inherited frmDyeOutput: TfrmDyeOutput ClientHeight = 658 ClientWidth = 1166 Font.Height = -16 - ExplicitLeft = -164 + OnKeyDown = FormKeyDown ExplicitWidth = 1182 ExplicitHeight = 697 PixelsPerInch = 96 @@ -77,7 +77,6 @@ inherited frmDyeOutput: TfrmDyeOutput Font.Style = [fsBold] ParentFont = False TabOrder = 1 - ExplicitTop = 79 object Label2: TLabel Left = 48 Top = 20 diff --git a/F04染色刷卡/U_DyeOutput.pas b/F04染色刷卡/U_DyeOutput.pas index 3b9882d..c07f258 100644 --- a/F04染色刷卡/U_DyeOutput.pas +++ b/F04染色刷卡/U_DyeOutput.pas @@ -107,6 +107,7 @@ type procedure Edit17Click(Sender: TObject); procedure Button1Click(Sender: TObject); procedure Timer1Timer(Sender: TObject); + procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); private fGlideName, fSCunit, fJPUnit: string; procedure InitCar(fPCID: string); @@ -234,6 +235,15 @@ begin frmDyeOutput := nil; end; +procedure TfrmDyeOutput.FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); +begin + if Key = VK_ESCAPE then // VK_ESCAPE ESC ij + begin + Key := 0; // ֹ + Close; // ModalResult := mrCancel; + end; +end; + procedure TfrmDyeOutput.FormCreate(Sender: TObject); begin inherited; @@ -596,6 +606,7 @@ procedure TfrmDyeOutput.FormShow(Sender: TObject); begin inherited; Scan.OnClick(Scan); + KeyPreview := True; // ȷԤ end; end. diff --git a/F04染色刷卡/U_DyeOutputList.dfm b/F04染色刷卡/U_DyeOutputList.dfm index 7469628..6ddf52f 100644 --- a/F04染色刷卡/U_DyeOutputList.dfm +++ b/F04染色刷卡/U_DyeOutputList.dfm @@ -8,6 +8,7 @@ inherited frmDyeOutputList: TfrmDyeOutputList Font.Name = 'Tahoma' OldCreateOrder = True WindowState = wsMaximized + OnKeyDown = FormKeyDown ExplicitWidth = 1161 ExplicitHeight = 623 PixelsPerInch = 96 @@ -323,7 +324,6 @@ inherited frmDyeOutputList: TfrmDyeOutputList Height = 482 Align = alClient TabOrder = 2 - ExplicitTop = 97 object Tv1: TcxGridDBTableView Navigator.Buttons.CustomButtons = <> ScrollbarAnnotations.CustomAnnotations = <> diff --git a/F04染色刷卡/U_DyeOutputList.pas b/F04染色刷卡/U_DyeOutputList.pas index 2cdfa67..e3ceea3 100644 --- a/F04染色刷卡/U_DyeOutputList.pas +++ b/F04染色刷卡/U_DyeOutputList.pas @@ -96,6 +96,7 @@ type procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure ToolButton2Click(Sender: TObject); + procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); private FLeft, FTop: Integer; procedure InitGrid(); @@ -121,6 +122,16 @@ begin frmDyeOutputList := nil; end; +procedure TfrmDyeOutputList.FormKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); +begin + if Key = VK_ESCAPE then // VK_ESCAPE ESC ij + begin + Key := 0; // ֹ + Close; // ModalResult := mrCancel; + end; +end; + procedure TfrmDyeOutputList.FormClose(Sender: TObject; var Action: TCloseAction); begin inherited; @@ -276,6 +287,7 @@ begin canshu1 := self.fParameters1; initgrid(); + KeyPreview := True; // ȷԤ end; procedure TfrmDyeOutputList.TBExportClick(Sender: TObject); diff --git a/F04染色刷卡/U_DyePCDetailsList.dfm b/F04染色刷卡/U_DyePCDetailsList.dfm index d93d47b..8d901c0 100644 --- a/F04染色刷卡/U_DyePCDetailsList.dfm +++ b/F04染色刷卡/U_DyePCDetailsList.dfm @@ -1,16 +1,16 @@ inherited frmDyePCDetailsList: TfrmDyePCDetailsList Caption = #25490#20135#20449#24687#26126#32454 ClientHeight = 584 - ClientWidth = 1396 + ClientWidth = 1439 Color = clBtnFace Font.Charset = DEFAULT_CHARSET Font.Height = -11 Font.Name = 'Tahoma' + KeyPreview = True OldCreateOrder = True WindowState = wsMaximized OnKeyDown = FormKeyDown - ExplicitLeft = -315 - ExplicitWidth = 1412 + ExplicitWidth = 1455 ExplicitHeight = 623 PixelsPerInch = 96 TextHeight = 13 @@ -18,11 +18,11 @@ inherited frmDyePCDetailsList: TfrmDyePCDetailsList Tag = 1 Left = 0 Top = 0 - Width = 1396 + Width = 1439 Height = 38 AutoSize = True ButtonHeight = 38 - ButtonWidth = 97 + ButtonWidth = 109 Caption = 'ToolBar1' Color = clSkyBlue DisabledImages = DataLink_DyeProcess.ImageList_new32 @@ -37,7 +37,6 @@ inherited frmDyePCDetailsList: TfrmDyePCDetailsList ParentFont = False ShowCaptions = True TabOrder = 0 - ExplicitWidth = 1216 object TBRafresh: TToolButton Left = 0 Top = 0 @@ -102,18 +101,26 @@ inherited frmDyePCDetailsList: TfrmDyePCDetailsList ImageIndex = 7 OnClick = TBCloseClick end + object ToolButton2: TToolButton + Left = 670 + Top = 0 + AutoSize = True + Caption = 'ToolButton2' + ImageIndex = 8 + Visible = False + OnClick = ToolButton2Click + end end object Panel1: TPanel [1] Left = 0 Top = 38 - Width = 1396 - Height = 83 + Width = 1439 + Height = 99 Align = alTop BevelInner = bvRaised BevelOuter = bvLowered Color = clSkyBlue TabOrder = 1 - ExplicitLeft = -1 object Label3: TLabel Left = 260 Top = 10 @@ -164,7 +171,7 @@ inherited frmDyePCDetailsList: TfrmDyePCDetailsList Caption = #35774#22791 end object Label5: TLabel - Left = 1016 + Left = 982 Top = 6 Width = 24 Height = 13 @@ -205,19 +212,18 @@ inherited frmDyePCDetailsList: TfrmDyePCDetailsList end object SBCCQX1: TSpeedButton Tag = 1 - Left = 9 - Top = 57 + Left = 122 + Top = 69 Width = 50 Height = 20 GroupIndex = 1 - Down = True Caption = #28165#27927'1' OnClick = SBCCQX1Click end object SBDX3: TSpeedButton Tag = 5 - Left = 233 - Top = 57 + Left = 607 + Top = 69 Width = 50 Height = 22 GroupIndex = 1 @@ -226,8 +232,8 @@ inherited frmDyePCDetailsList: TfrmDyePCDetailsList end object SBDX2: TSpeedButton Tag = 4 - Left = 177 - Top = 57 + Left = 553 + Top = 69 Width = 50 Height = 22 GroupIndex = 1 @@ -236,8 +242,8 @@ inherited frmDyePCDetailsList: TfrmDyePCDetailsList end object SBDX1: TSpeedButton Tag = 3 - Left = 121 - Top = 57 + Left = 499 + Top = 69 Width = 50 Height = 22 GroupIndex = 1 @@ -246,8 +252,8 @@ inherited frmDyePCDetailsList: TfrmDyePCDetailsList end object SBJG1: TSpeedButton Tag = 8 - Left = 458 - Top = 57 + Left = 392 + Top = 69 Width = 50 Height = 22 GroupIndex = 1 @@ -256,8 +262,8 @@ inherited frmDyePCDetailsList: TfrmDyePCDetailsList end object SBDX6: TSpeedButton Tag = 8 - Left = 402 - Top = 57 + Left = 769 + Top = 69 Width = 50 Height = 22 GroupIndex = 1 @@ -266,8 +272,8 @@ inherited frmDyePCDetailsList: TfrmDyePCDetailsList end object SBDX5: TSpeedButton Tag = 7 - Left = 346 - Top = 57 + Left = 715 + Top = 69 Width = 50 Height = 22 GroupIndex = 1 @@ -276,8 +282,8 @@ inherited frmDyePCDetailsList: TfrmDyePCDetailsList end object SBDX4: TSpeedButton Tag = 6 - Left = 290 - Top = 57 + Left = 661 + Top = 69 Width = 50 Height = 22 GroupIndex = 1 @@ -286,8 +292,8 @@ inherited frmDyePCDetailsList: TfrmDyePCDetailsList end object SBJRG1: TSpeedButton Tag = 10 - Left = 515 - Top = 57 + Left = 230 + Top = 69 Width = 50 Height = 22 GroupIndex = 1 @@ -296,8 +302,8 @@ inherited frmDyePCDetailsList: TfrmDyePCDetailsList end object SBJRG3: TSpeedButton Tag = 12 - Left = 627 - Top = 57 + Left = 338 + Top = 69 Width = 50 Height = 22 GroupIndex = 1 @@ -306,18 +312,19 @@ inherited frmDyePCDetailsList: TfrmDyePCDetailsList end object SBZM1: TSpeedButton Tag = 13 - Left = 684 - Top = 57 + Left = 14 + Top = 69 Width = 50 Height = 22 GroupIndex = 1 + Down = True Caption = #36711#27611'1' OnClick = SBCCQX1Click end object SBJRG2: TSpeedButton Tag = 11 - Left = 571 - Top = 57 + Left = 284 + Top = 69 Width = 50 Height = 22 GroupIndex = 1 @@ -325,9 +332,9 @@ inherited frmDyePCDetailsList: TfrmDyePCDetailsList OnClick = SBCCQX1Click end object SBZM2: TSpeedButton - Tag = 13 - Left = 740 - Top = 57 + Tag = 14 + Left = 68 + Top = 69 Width = 50 Height = 22 GroupIndex = 1 @@ -336,8 +343,8 @@ inherited frmDyePCDetailsList: TfrmDyePCDetailsList end object SBCCQX2: TSpeedButton Tag = 2 - Left = 65 - Top = 57 + Left = 176 + Top = 69 Width = 50 Height = 20 GroupIndex = 1 @@ -346,8 +353,8 @@ inherited frmDyePCDetailsList: TfrmDyePCDetailsList end object SBPD1: TSpeedButton Tag = 15 - Left = 796 - Top = 57 + Left = 445 + Top = 69 Width = 50 Height = 22 GroupIndex = 1 @@ -435,7 +442,7 @@ inherited frmDyePCDetailsList: TfrmDyePCDetailsList end> Properties.OnButtonClick = MCNOPropertiesButtonClick TabOrder = 8 - Text = #38271#36710#28165#27927#26426'1' + Text = #36711#27611#21333#25490#38024'1' Width = 120 end object MCName: TEdit @@ -444,11 +451,11 @@ inherited frmDyePCDetailsList: TfrmDyePCDetailsList Width = 121 Height = 21 TabOrder = 9 - Text = 'CCQX1' + Text = 'ZM1' Visible = False end object cbALL_temperature6: TCheckBox - Left = 1056 + Left = 1022 Top = 6 Width = 65 Height = 17 @@ -457,7 +464,7 @@ inherited frmDyePCDetailsList: TfrmDyePCDetailsList OnClick = cbALL_temperature6Click end object cbAll_zhuji: TCheckBox - Left = 1056 + Left = 1022 Top = 29 Width = 65 Height = 17 @@ -466,8 +473,8 @@ inherited frmDyePCDetailsList: TfrmDyePCDetailsList OnClick = cbALL_temperature6Click end object cxComboBox1: TcxComboBox - Left = 886 - Top = 25 + Left = 672 + Top = 33 Properties.Items.Strings = ( #20840#37096 #26410#25490#20135 @@ -478,11 +485,12 @@ inherited frmDyePCDetailsList: TfrmDyePCDetailsList Properties.OnChange = cxComboBox1PropertiesChange TabOrder = 12 Text = #20840#37096 + Visible = False Width = 121 end object cbTime: TCheckBox - Left = 1056 - Top = 52 + Left = 1022 + Top = 54 Width = 65 Height = 17 Caption = #24635#29992#26102 @@ -507,41 +515,112 @@ inherited frmDyePCDetailsList: TfrmDyePCDetailsList TabOrder = 15 OnKeyPress = pcidKeyPress end - object Panel4: TPanel - Left = 1127 + object cbPC0: TCheckBox + Left = 896 Top = 6 + Width = 65 + Height = 17 + Caption = #26410#25490#20135 + Checked = True + Color = 13421823 + ParentColor = False + State = cbChecked + TabOrder = 16 + OnClick = cbPC0Click + end + object cbPC1: TCheckBox + Left = 896 + Top = 29 + Width = 65 + Height = 17 + Caption = #24050#25490#20135 + Checked = True + Color = clWhite + ParentColor = False + State = cbChecked + TabOrder = 17 + OnClick = cbPC0Click + end + object cbBG: TCheckBox + Left = 896 + Top = 77 + Width = 65 + Height = 17 + Caption = #24050#25253#24037 + Checked = True + Color = 14737632 + ParentColor = False + State = cbChecked + TabOrder = 18 + OnClick = cbPC0Click + end + object cbSC: TCheckBox + Left = 896 + Top = 52 + Width = 65 + Height = 17 + Caption = #29983#20135#20013 + Checked = True + Color = 11597232 + ParentColor = False + State = cbChecked + TabOrder = 19 + OnClick = cbPC0Click + end + object Panel4: TPanel + Left = 1111 + Top = 9 Width = 60 Height = 25 Caption = #26410#25490#20135 Color = 13421823 Font.Charset = ANSI_CHARSET Font.Color = clWindowText - Font.Height = -16 + Font.Height = -12 Font.Name = #24494#36719#38597#40657 Font.Style = [] ParentBackground = False ParentFont = False - TabOrder = 16 + TabOrder = 20 end object Panel5: TPanel - Left = 1193 - Top = 6 + Left = 1177 + Top = 9 Width = 60 Height = 25 - Caption = #25490#20135#26410#25253#24037 + Caption = #24050#25490#20135 Color = clWindow ParentBackground = False - TabOrder = 17 + TabOrder = 21 end object Panel6: TPanel - Left = 1259 - Top = 6 - Width = 67 + Left = 1111 + Top = 40 + Width = 60 Height = 25 - Caption = #24050#19978#26426#26410#19979#26426 + Caption = #29983#20135#20013 + Color = 11597232 + ParentBackground = False + TabOrder = 22 + end + object Panel7: TPanel + Left = 1177 + Top = 40 + Width = 60 + Height = 25 + Caption = #24050#25253#24037 Color = 14737632 ParentBackground = False - TabOrder = 18 + TabOrder = 23 + end + object cbGlideName: TCheckBox + Left = 1022 + Top = 77 + Width = 65 + Height = 17 + Caption = #24037#24207#21517#31216 + TabOrder = 24 + OnClick = cbALL_temperature6Click end end object MovePanel2: TMovePanel [2] @@ -563,22 +642,20 @@ inherited frmDyePCDetailsList: TfrmDyePCDetailsList end object Panel2: TPanel [3] Left = 0 - Top = 121 - Width = 1396 - Height = 463 + Top = 137 + Width = 1439 + Height = 447 Align = alClient TabOrder = 3 - ExplicitWidth = 1216 object cxGrid1: TcxGrid Left = 1 Top = 1 Width = 736 - Height = 461 + Height = 445 Align = alLeft + PopupMenu = PM_1 TabOrder = 0 - ExplicitTop = 0 object Tv1: TcxGridDBTableView - OnKeyDown = Tv1KeyDown Navigator.Buttons.CustomButtons = <> ScrollbarAnnotations.CustomAnnotations = <> OnCustomDrawCell = Tv1CustomDrawCell @@ -610,6 +687,13 @@ inherited frmDyePCDetailsList: TfrmDyePCDetailsList HeaderAlignmentHorz = taCenter Width = 90 end + object Tv1GlideNo: TcxGridDBColumn + Caption = #24037#24207#32534#21495 + DataBinding.FieldName = 'GlideNo' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 80 + end object Tv1PSName: TcxGridDBColumn Caption = #24037#24207#21517#31216 DataBinding.FieldName = 'GlideName' @@ -686,13 +770,6 @@ inherited frmDyePCDetailsList: TfrmDyePCDetailsList HeaderAlignmentHorz = taCenter Width = 80 end - object Tv1CGlideNo: TcxGridDBColumn - DataBinding.FieldName = 'GlideNo' - DataBinding.IsNullValueType = True - Visible = False - HeaderAlignmentHorz = taCenter - Width = 80 - end end object cxGrid1Level1: TcxGridLevel GridView = Tv1 @@ -701,13 +778,12 @@ inherited frmDyePCDetailsList: TfrmDyePCDetailsList object cxGrid2: TcxGrid Left = 824 Top = 1 - Width = 571 - Height = 461 + Width = 614 + Height = 445 Align = alClient + PopupMenu = PM_2 TabOrder = 1 - ExplicitTop = 2 object Tv2: TcxGridDBTableView - OnKeyDown = Tv2KeyDown Navigator.Buttons.CustomButtons = <> ScrollbarAnnotations.CustomAnnotations = <> OnCellClick = Tv2CellClick @@ -716,7 +792,6 @@ inherited frmDyePCDetailsList: TfrmDyePCDetailsList DataController.Summary.DefaultGroupSummaryItems = <> DataController.Summary.FooterSummaryItems = <> DataController.Summary.SummaryGroups = <> - OptionsData.Editing = False OptionsView.GroupByBox = False Styles.Selection = DataLink_DyeProcess.SHuangSe object cxGridDBColumn1: TcxGridDBColumn @@ -724,6 +799,7 @@ inherited frmDyePCDetailsList: TfrmDyePCDetailsList DataBinding.FieldName = 'PCID' DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter + Options.Editing = False Width = 90 end object cxGridDBColumn2: TcxGridDBColumn @@ -731,6 +807,7 @@ inherited frmDyePCDetailsList: TfrmDyePCDetailsList DataBinding.FieldName = 'OrderNo' DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter + Options.Editing = False Width = 90 end object cxGridDBColumn3: TcxGridDBColumn @@ -738,13 +815,22 @@ inherited frmDyePCDetailsList: TfrmDyePCDetailsList DataBinding.FieldName = 'C_Name' DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter + Options.Editing = False Width = 90 end + object Tv2GlideNo: TcxGridDBColumn + Caption = #24037#24207#32534#21495 + DataBinding.FieldName = 'GlideNo' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 80 + end object cxGridDBColumn4: TcxGridDBColumn Caption = #24037#24207#21517#31216 DataBinding.FieldName = 'GlideName' DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter + Options.Editing = False Width = 90 end object cxGridDBColumn5: TcxGridDBColumn @@ -752,6 +838,7 @@ inherited frmDyePCDetailsList: TfrmDyePCDetailsList DataBinding.FieldName = 'ALL_temperature6' DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter + Options.Editing = False Width = 90 end object Tv2CAll_zhuji: TcxGridDBColumn @@ -759,6 +846,7 @@ inherited frmDyePCDetailsList: TfrmDyePCDetailsList DataBinding.FieldName = 'All_zhuji' DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter + Options.Editing = False Width = 100 end object Tv2All_rate: TcxGridDBColumn @@ -766,6 +854,7 @@ inherited frmDyePCDetailsList: TfrmDyePCDetailsList DataBinding.FieldName = 'All_rate' DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter + Options.Editing = False Width = 80 end object cxGridDBColumn6: TcxGridDBColumn @@ -773,6 +862,7 @@ inherited frmDyePCDetailsList: TfrmDyePCDetailsList DataBinding.FieldName = 'PCQty' DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter + Options.Editing = False Width = 90 end object cxGridDBColumn7: TcxGridDBColumn @@ -780,6 +870,7 @@ inherited frmDyePCDetailsList: TfrmDyePCDetailsList DataBinding.FieldName = 'time' DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter + Options.Editing = False Width = 90 end object Tv2PC_FLAG: TcxGridDBColumn @@ -791,8 +882,8 @@ inherited frmDyePCDetailsList: TfrmDyePCDetailsList Width = 90 end object Tv2isComplete: TcxGridDBColumn - Caption = #25253#24037 - DataBinding.FieldName = 'isComplete' + Caption = #29983#20135 + DataBinding.FieldName = 'Complete' DataBinding.IsNullValueType = True Visible = False HeaderAlignmentHorz = taCenter @@ -805,11 +896,19 @@ inherited frmDyePCDetailsList: TfrmDyePCDetailsList HeaderAlignmentHorz = taCenter Width = 80 end - object Tv2GlideNo: TcxGridDBColumn - DataBinding.FieldName = 'GlideNo' + object Tv2BG: TcxGridDBColumn + Caption = #25253#24037 + DataBinding.FieldName = 'BG' DataBinding.IsNullValueType = True Visible = False HeaderAlignmentHorz = taCenter + Width = 65 + end + object Tv2MCNo: TcxGridDBColumn + Caption = #24050#25490#26426#21488 + DataBinding.FieldName = 'MCNo' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter Width = 80 end end @@ -821,7 +920,7 @@ inherited frmDyePCDetailsList: TfrmDyePCDetailsList Left = 737 Top = 1 Width = 87 - Height = 461 + Height = 445 Align = alLeft TabOrder = 2 object cxButton1: TcxButton @@ -955,4 +1054,20 @@ inherited frmDyePCDetailsList: TfrmDyePCDetailsList Left = 696 Top = 176 end + object PM_1: TPopupMenu + Left = 320 + Top = 273 + object N1: TMenuItem + Caption = #22797#21046 + OnClick = N1Click + end + end + object PM_2: TPopupMenu + Left = 560 + Top = 401 + object N2: TMenuItem + Caption = #22797#21046 + OnClick = N2Click + end + end end diff --git a/F04染色刷卡/U_DyePCDetailsList.pas b/F04染色刷卡/U_DyePCDetailsList.pas index 69fe7b1..f924875 100644 --- a/F04染色刷卡/U_DyePCDetailsList.pas +++ b/F04染色刷卡/U_DyePCDetailsList.pas @@ -5,7 +5,7 @@ interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage, - cxEdit, DB, cxDBData, cxGridCustomTableView, cxGridTableView, + cxEdit, DB, cxDBData, cxGridCustomTableView, cxGridTableView, Clipbrd, cxGridBandedTableView, cxGridDBBandedTableView, cxGridLevel, cxClasses, cxControls, cxGridCustomView, cxGridDBTableView, cxGrid, StdCtrls, ComCtrls, ExtCtrls, ToolWin, cxGridCustomPopupMenu, cxGridPopupMenu, ADODB, DBClient, @@ -13,7 +13,7 @@ uses RM_Class, RM_GridReport, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, dxSkinsCore, dxSkinsDefaultPainters, dxDateRanges, dxBarBuiltInMenu, U_BaseList, dxScrollbarAnnotations, cxContainer, cxTextEdit, cxMaskEdit, - Vcl.Menus, cxButtons, Vcl.Buttons; + Vcl.Menus, cxButtons, Vcl.Buttons, cxCheckBox; type TfrmDyePCDetailsList = class(TfrmBaseList) @@ -84,7 +84,7 @@ type Tv1GlideID: TcxGridDBColumn; Tv2GlideID: TcxGridDBColumn; Tv1IsConflict: TcxGridDBColumn; - Tv1CGlideNo: TcxGridDBColumn; + Tv1GlideNo: TcxGridDBColumn; Tv2GlideNo: TcxGridDBColumn; Panel3: TPanel; cxButton1: TcxButton; @@ -121,9 +121,22 @@ type SBZM2: TSpeedButton; SBCCQX2: TSpeedButton; SBPD1: TSpeedButton; + cbPC0: TCheckBox; + cbPC1: TCheckBox; + cbBG: TCheckBox; + cbSC: TCheckBox; + Tv2BG: TcxGridDBColumn; + PM_1: TPopupMenu; + PM_2: TPopupMenu; + N1: TMenuItem; + N2: TMenuItem; Panel4: TPanel; Panel5: TPanel; Panel6: TPanel; + Panel7: TPanel; + ToolButton2: TToolButton; + cbGlideName: TCheckBox; + Tv2MCNo: TcxGridDBColumn; procedure FormDestroy(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure FormCreate(Sender: TObject); @@ -141,8 +154,7 @@ type procedure TbUpdateTimeClick(Sender: TObject); procedure MCNOPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); - procedure Tv2KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); - procedure Tv1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); + procedure cxButton1Click(Sender: TObject); procedure Tv2CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); procedure cxButton2Click(Sender: TObject); @@ -155,6 +167,10 @@ type procedure TbEditClick(Sender: TObject); procedure pcidKeyPress(Sender: TObject; var Key: Char); procedure SBCCQX1Click(Sender: TObject); + procedure cbPC0Click(Sender: TObject); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + procedure ToolButton2Click(Sender: TObject); private FLeft, FTop: Integer; @@ -166,6 +182,11 @@ type function GetNextTenMinutes(ACurrentTime: TDateTime): TDateTime; function BuildOrderBySQL: string; + + procedure CheckFocusLocation; + procedure AppIdleSetFocus(Sender: TObject; var Done: Boolean); + procedure AutoCloseMessage(const Msg: string; CloseTime: Integer = 2000); + procedure TimerCloseForm(Sender: TObject); { Private declarations } public fsyrName, canshu1: string; @@ -185,6 +206,36 @@ uses {$R *.dfm} +procedure TfrmDyePCDetailsList.CheckFocusLocation; +var + ActiveForm: TCustomForm; + FocusedControl: TWinControl; +begin + // 1. ȡǰ + ActiveForm := Screen.ActiveForm; + if Assigned(ActiveForm) then + ShowMessage('ǰ: ' + ActiveForm.Name) + else + ShowMessage('ûл'); + + // 2. ȡǰӵнĿؼ + FocusedControl := Screen.ActiveControl; + if Assigned(FocusedControl) then + begin + ShowMessage('ؼ: ' + FocusedControl.Name + #13#10': ' + (FocusedControl.Parent as TCustomForm).Name); + end + else + ShowMessage('ûпؼý'); + + // 3. 鱾Ƿӵн + if Self.Focused then + ShowMessage('ӵн') + else if Assigned(Self.ActiveControl) then + ShowMessage('Ľؼ: ' + Self.ActiveControl.Name) + else + ShowMessage('ûн'); +end; + procedure TfrmDyePCDetailsList.FormDestroy(Sender: TObject); begin inherited; @@ -201,37 +252,35 @@ begin Close; end; - VK_LEFT: + VK_LEFT, Ord('A'), Ord('a'): begin // ƶ߼ - ShowMessage(''); +// ShowMessage(''); cxButton1.Click; Key := 0; // ֹ end; - VK_RIGHT: + VK_RIGHT, Ord('D'), Ord('d'): begin // ƶ߼ cxButton2.Click; Key := 0; end; - VK_UP: + VK_UP, Ord('W'), Ord('w'): begin // ƶ߼ TbMoveUp.Click; Key := 0; end; - VK_DOWN: + VK_DOWN, Ord('S'), Ord('s'): begin // ƶ߼ TbMoveDown.Click; Key := 0; end; - end; - end; function TfrmDyePCDetailsList.SaveData(): boolean; @@ -595,95 +644,95 @@ begin begin case (Sender as TSpeedButton).Tag of // Tagֲͬť 1: - begin - MCNO.Text := 'ϴ1'; - MCName.Text := 'CCQX1'; - InitGrid1(); - end; + begin + MCNO.Text := 'ϴ1'; + MCName.Text := 'CCQX1'; + InitGrid1(); + end; 2: - begin - MCNO.Text := 'ϴ2'; - MCName.Text := 'CCQX2'; - InitGrid1(); - end; + begin + MCNO.Text := 'ϴ2'; + MCName.Text := 'CCQX2'; + InitGrid1(); + end; 3: - begin - MCNO.Text := 'ͻ1'; - MCName.Text := 'DX1'; - InitGrid1(); - end; + begin + MCNO.Text := 'ͻ1'; + MCName.Text := 'DX1'; + InitGrid1(); + end; 4: - begin - MCNO.Text := 'ͻ2'; - MCName.Text := 'DX2'; - InitGrid1(); - end; + begin + MCNO.Text := 'ͻ2'; + MCName.Text := 'DX2'; + InitGrid1(); + end; 5: - begin - MCNO.Text := 'ͻ3'; - MCName.Text := 'DX3'; - InitGrid1(); - end; + begin + MCNO.Text := 'ͻ3'; + MCName.Text := 'DX3'; + InitGrid1(); + end; 6: - begin - MCNO.Text := 'ͻ4'; - MCName.Text := 'DX4'; - InitGrid1(); - end; + begin + MCNO.Text := 'ͻ4'; + MCName.Text := 'DX4'; + InitGrid1(); + end; 7: - begin - MCNO.Text := 'ͻ5'; - MCName.Text := 'DX5'; - InitGrid1(); - end; + begin + MCNO.Text := 'ͻ5'; + MCName.Text := 'DX5'; + InitGrid1(); + end; 8: - begin - MCNO.Text := 'ͻ6'; - MCName.Text := 'DX6'; - InitGrid1(); - end; + begin + MCNO.Text := 'ͻ6'; + MCName.Text := 'DX6'; + InitGrid1(); + end; 9: - begin - MCNO.Text := '1'; - MCName.Text := 'JG1'; - InitGrid1(); - end; + begin + MCNO.Text := '1'; + MCName.Text := 'JG1'; + InitGrid1(); + end; 10: - begin - MCNO.Text := 'Ⱦ1'; - MCName.Text := 'JRG1'; - InitGrid1(); - end; + begin + MCNO.Text := 'Ⱦ1'; + MCName.Text := 'JRG1'; + InitGrid1(); + end; 11: - begin - MCNO.Text := 'Ⱦ2'; - MCName.Text := 'JRG2'; - InitGrid1(); - end; + begin + MCNO.Text := 'Ⱦ2'; + MCName.Text := 'JRG2'; + InitGrid1(); + end; 12: - begin - MCNO.Text := 'Ⱦ3'; - MCName.Text := 'JRG3'; - InitGrid1(); - end; + begin + MCNO.Text := 'Ⱦ3'; + MCName.Text := 'JRG3'; + InitGrid1(); + end; 13: - begin - MCNO.Text := 'ë1'; - MCName.Text := 'ZM1'; - InitGrid1(); - end; + begin + MCNO.Text := 'ë1'; + MCName.Text := 'ZM1'; + InitGrid1(); + end; 14: - begin - MCNO.Text := 'ë˫1'; - MCName.Text := 'ZM2'; - InitGrid1(); - end; + begin + MCNO.Text := 'ë˫2'; + MCName.Text := 'ZM2'; + InitGrid1(); + end; 15: - begin - MCNO.Text := 'Ĵ1'; - MCName.Text := 'PD1'; - InitGrid1(); - end; + begin + MCNO.Text := 'Ĵ1'; + MCName.Text := 'PD1'; + InitGrid1(); + end; end; end; @@ -725,7 +774,7 @@ begin Application.MessageBox('Ų', 'ʾϢ', MB_OK); exit; end - else if not CDS_2.FieldByName('isComplete').IsNull then + else if CDS_2.FieldByName('BG').asString = '1' then begin Application.MessageBox('ѱ', 'ʾϢ', MB_OK); exit; @@ -926,7 +975,7 @@ begin begin Close; SQL.Clear; - SQL.Add(' update Dye_Plan_Glide set PC_FLAG = 0,IsConflict = 0,endTime = null,begTime = null where GlideID = ' + QuotedStr(Trim(CDS_1.FieldByName('GlideID').asString))); + SQL.Add(' update Dye_Plan_Glide set PC_FLAG = 0,IsConflict = 0,endTime = null,begTime = null,MCNO = null,MCName = null where GlideID = ' + QuotedStr(Trim(CDS_1.FieldByName('GlideID').asString))); ExecSQL; end; /////////////////////////////ʱͻ///////////////////// @@ -1074,6 +1123,7 @@ begin tv1.EndUpdate; // tv1.ApplyBestFit(); end; + end; procedure TfrmDyePCDetailsList.InitGrid2(); @@ -1083,25 +1133,109 @@ var rs: _Recordset; r: integer; msql1: string; + CheckBox: TCheckBox; begin // ʱ - try tv1.BeginUpdate; ADOQueryMain.DisableControls; - if cxComboBox1.Text = 'δŲ' then - msql1 := 'and PC_FLAG = 0' - else if cxComboBox1.Text = 'Ųδ' then - msql1 := 'and isComplete is null and PC_FLAG = 1' - else if cxComboBox1.Text = 'ѱ' then - msql1 := 'and isComplete is not null' - else if cxComboBox1.Text = 'δ' then - msql1 := 'and isComplete = 0' -// else if cxComboBox1.Text = '' then -// msql1 := 'and isComplete = 1' - else - msql1 := ''; + if cbPC0.Checked then + begin + if msql1 = '' then + begin + msql1 := ' (PC_FLAG = 0) '; + end + else + begin + msql1 := msql1 + ' or (PC_FLAG = 0) '; + end; +// msql1 := msql1 + ' or (PC_FLAG = 0) '; + end; +// else +// begin +// if msql1 = '' then +// begin +// msql1 := ' (PC_FLAG <> 0) '; +// end +// else +// begin +// msql1 := msql1 + ' and (PC_FLAG <> 0) '; +// end; +// end; + + if cbPC1.Checked then + begin + if msql1 = '' then + begin + msql1 := ' (PC_FLAG = 1) '; + end + else + begin + msql1 := msql1 + ' or (PC_FLAG = 1) '; + end; +// msql1 := msql1 + ' or (PC_FLAG = 1) '; + end; +// else +// begin +// if msql1 = '' then +// begin +// msql1 := ' (PC_FLAG <> 1) '; +// end +// else +// begin +// msql1 := msql1 + ' and (PC_FLAG <> 1) '; +// end; +// end; + + if cbSC.Checked then + begin + if msql1 = '' then + begin + msql1 := ' (Complete > 0) '; + end + else + begin + msql1 := msql1 + ' or (Complete > 0) '; + end; +// msql1 := msql1 + ' or (Complete > 0) '; + end; +// else +// begin +// if msql1 = '' then +// begin +// msql1 := ' (Complete <> 1) '; +// end +// else +// begin +// msql1 := msql1 + ' and (Complete <> 1) '; +// end; +// end; + + if cbBG.Checked then + begin + if msql1 = '' then + begin + msql1 := ' (BG = 1)'; + end + else + begin + msql1 := msql1 + ' or (BG = 1)'; + end; +// msql1 := msql1 + ' or (BG = 1)'; + end; +// else +// begin +// if msql1 = '' then +// begin +// msql1 := ' (BG <> 1) '; +// end +// else +// begin +// msql1 := msql1 + ' and (BG <> 1) '; +// end; +// end; + fsql2 := BuildOrderBySQL; with ADOQueryMain do @@ -1109,15 +1243,26 @@ begin close; filtered := false; sql.Clear; - SQL.Add(' select A.* from V_Dye_Cloth_PaiGang A where 1=1 ' + msql1); - sql.Add(' AND EXISTS ( SELECT * from Dye_Plan_Card X where X.KaZu = A.PCID and X.Status = ''10'') '); + SQL.Add(' select A.* from V_Dye_Cloth_PaiGang A where 1=1 '); + sql.Add(' AND A.KaZuState = 9 '); + if msql1 <> '' then + begin + sql.Add(' and ( ' + msql1 + ' )'); + end; + SQL.Add(fsql2); - // ShowMessage(sql.Text); +// ShowMessage(sql.Text); Open; end; + if Tv2.DataController.Filter.FilterText <> '' then + begin + SDofilter(ADOQueryMain, Tv2.DataController.Filter.FilterText); + end; + SCreateCDS(ADOQueryMain, CDS_2); SInitCDSData(ADOQueryMain, CDS_2); + finally ADOQueryMain.EnableControls; tv1.EndUpdate; @@ -1142,6 +1287,8 @@ begin FieldName := 'All_zhuji' else if CheckBox = cbTime then FieldName := 'Time' + else if CheckBox = cbGlideName then + FieldName := 'GlideName' else Exit; @@ -1186,6 +1333,12 @@ begin InitGrid2(); end; +procedure TfrmDyePCDetailsList.cbPC0Click(Sender: TObject); +begin + InitGrid2(); + +end; + // SQLʹö̬汾 function TfrmDyePCDetailsList.BuildOrderBySQL: string; var @@ -1230,6 +1383,17 @@ begin end; end; +procedure TfrmDyePCDetailsList.N1Click(Sender: TObject); +begin + Clipboard.SetTextBuf(PChar(Trim(CDS_1.fieldbyname(TV1.Controller.FocusedColumn.DataBinding.FilterFieldName).AsString))); + +end; + +procedure TfrmDyePCDetailsList.N2Click(Sender: TObject); +begin + Clipboard.SetTextBuf(PChar(Trim(CDS_2.fieldbyname(TV2.Controller.FocusedColumn.DataBinding.FilterFieldName).AsString))); +end; + procedure TfrmDyePCDetailsList.TBRafreshClick(Sender: TObject); begin MovePanel2.Visible := True; @@ -1276,6 +1440,11 @@ begin WriteCxGrid(self.Caption + tv2.Name, Tv2, 'ŲϢϸ'); end; +procedure TfrmDyePCDetailsList.ToolButton2Click(Sender: TObject); +begin + CheckFocusLocation(); +end; + procedure TfrmDyePCDetailsList.Tv1BegTimePropertiesValidate(Sender: TObject; var DisplayValue: Variant; var ErrorText: TCaption; var Error: Boolean); var Begtime: TDateTime; @@ -1320,19 +1489,12 @@ begin // ȡֵֶ mIsConflict := AViewInfo.GridRecord.Values[TcxGridDBTableView(Sender).GetColumnByFieldName('IsConflict').Index]; - if AViewInfo.GridRecord.Selected then - begin - ADone := False; // ÿؼʹĬϵѡʽ - Exit; - end; - - // òͬ״̬ɫ if mIsConflict = 1 then // δƻ begin ACanvas.Brush.Color := clRed; // ɫ ACanvas.Font.Color := clWindowText; - ACanvas.Font.Style := [fsBold]; + ACanvas.Font.Style := []; end else // Ĭ begin @@ -1340,44 +1502,15 @@ begin ACanvas.Font.Color := clWindowText; ACanvas.Font.Style := []; end; + if AViewInfo.GridRecord.Selected then + begin - // ҪԶɣȡע - // ADone := True; -end; - -procedure TfrmDyePCDetailsList.Tv1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); -begin - case Key of - VK_LEFT: - begin - // - ShowMessage(''); - // ִƶĴ - end; - - VK_RIGHT: - begin - // ҷ - ShowMessage('ҷ'); - // ִƶĴ - end; - - VK_UP: - begin - // Ϸ - ShowMessage('Ϸ'); - // ִƶĴ - end; - - VK_DOWN: - begin - // · - ShowMessage('·'); - // ִƶĴ - end; + ACanvas.Font.Color := $000080FF; + ACanvas.Font.Style := [fsBold]; end; - + // ҪԶɣȡע + // ADone := True; end; procedure TfrmDyePCDetailsList.Tv2CellClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); @@ -1388,43 +1521,41 @@ end; procedure TfrmDyePCDetailsList.Tv2CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); var - PC_FLAG, isComplete: Variant; + PC_FLAG, Complete, BG: Variant; begin // ȡֵֶ PC_FLAG := AViewInfo.GridRecord.Values[TcxGridDBTableView(Sender).GetColumnByFieldName('PC_FLAG').Index]; - isComplete := AViewInfo.GridRecord.Values[TcxGridDBTableView(Sender).GetColumnByFieldName('isComplete').Index]; - - if AViewInfo.GridRecord.Selected then - begin - ADone := False; // ÿؼʹĬϵѡʽ - Exit; - end; - + Complete := AViewInfo.GridRecord.Values[TcxGridDBTableView(Sender).GetColumnByFieldName('Complete').Index]; + BG := AViewInfo.GridRecord.Values[TcxGridDBTableView(Sender).GetColumnByFieldName('BG').Index]; +// if AViewInfo.GridRecord.Selected then +// begin +// ADone := False; // ÿؼʹĬϵѡʽ +// Exit; +// end; // òͬ״̬ɫ -// if (not VarIsNull(isComplete)) and (isComplete = true) then // Ʒ -// begin -// ACanvas.Brush.Color := $00E0FFE0; // dzɫ -// ACanvas.Font.Color := $00008000; -// ACanvas.Font.Style := [fsBold]; -// end -// else - if (not VarIsNull(isComplete)) then // һ and (isComplete = False) + if (BG = 1) then // δ begin ACanvas.Brush.Color := $00E0E0E0; // dzɫ - ACanvas.Font.Color := clGray; - ACanvas.Font.Style := [fsBold]; // + ACanvas.Font.Color := clWindowText; + ACanvas.Font.Style := []; end - else if VarIsNull(PC_FLAG) or (PC_FLAG = 0) then // δƻ + else if (Complete > 0) then // begin - ACanvas.Brush.Color := $00CCCCFF; // dzɫ - ACanvas.Font.Color := clRed; - ACanvas.Font.Style := [fsBold]; + ACanvas.Brush.Color := $00E0FFE0; // dzɫ + ACanvas.Font.Color := clWindowText; + ACanvas.Font.Style := []; // end - else if (PC_FLAG = 1) and VarIsNull(isComplete) then // δ + else if (PC_FLAG = 1) then // Ų begin ACanvas.Brush.Color := clWindow; // Ĭϴڱɫ - ACanvas.Font.Color := clWindowText; // Ĭϴıɫ + ACanvas.Font.Color := clWindowText; + ACanvas.Font.Style := []; + end + else if (PC_FLAG = 0) then // δŲ + begin + ACanvas.Brush.Color := $00CCCCFF; // dzɫ + ACanvas.Font.Color := clWindowText; ACanvas.Font.Style := []; end else // Ĭ @@ -1434,44 +1565,15 @@ begin ACanvas.Font.Style := []; end; - // ҪԶɣȡע - // ADone := True; -end; - -procedure TfrmDyePCDetailsList.Tv2KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); -begin - case Key of - - VK_LEFT: - begin - // - ShowMessage(''); - // ִƶĴ - end; - - VK_RIGHT: - begin - // ҷ - ShowMessage('ҷ'); - // ִƶĴ - end; - - VK_UP: - begin - // Ϸ - ShowMessage('Ϸ'); - // ִƶĴ - end; - - VK_DOWN: - begin - // · - ShowMessage('·'); - // ִƶĴ - end; - + if AViewInfo.GridRecord.Selected then + begin + ACanvas.Font.Color := $000080FF; + ACanvas.Font.Style := [fsBold]; end; + + // ҪԶɣȡע + // ADone := True; end; procedure TfrmDyePCDetailsList.ConNoMChange(Sender: TObject); @@ -1484,13 +1586,15 @@ end; procedure TfrmDyePCDetailsList.TBCloseClick(Sender: TObject); begin - Close; end; procedure TfrmDyePCDetailsList.FormShow(Sender: TObject); begin + KeyPreview := True; +// ShowMessage(BoolToStr(KeyPreview)); inherited; +// ReadCxGrid(self.Caption + tv1.Name, Tv1, 'ŲϢϸ'); ReadCxGrid(self.Caption + tv2.Name, Tv2, 'ŲϢϸ'); canshu1 := self.fParameters1; @@ -1502,9 +1606,83 @@ begin EndDate.Date := Trunc(ServerDate) + 1; // һ Begtime.Time := EncodeTime(0, 0, 0, 0); // 8 endTime.Time := EncodeTime(0, 0, 0, 0); // 6 - initgrid1(); - initgrid2(); - KeyPreview := True; + InitGrid1(); + InitGrid2(); + + // Ӧóʱý㣨ȷгʼɣ + Application.OnIdle := AppIdleSetFocus; + +// CheckFocusLocation(); +// ShowMessage(BoolToStr(KeyPreview)); +end; + +procedure TfrmDyePCDetailsList.AutoCloseMessage(const Msg: string; CloseTime: Integer = 2000); +var + Form: TForm; + Label1: TLabel; + Timer: TTimer; +begin + Form := TForm.Create(nil); + try + Form.BorderStyle := bsDialog; + Form.Caption := 'ʾ'; + Form.Position := poScreenCenter; + Form.Width := 300; + Form.Height := 120; + + Label1 := TLabel.Create(Form); + Label1.Parent := Form; + Label1.Caption := Msg + #13#10 + IntToStr(CloseTime div 1000) + 'Զر...'; + Label1.Align := alClient; + Label1.Alignment := taCenter; + Label1.Layout := tlCenter; + Label1.WordWrap := True; + + Timer := TTimer.Create(Form); + Timer.Interval := CloseTime; + Timer.OnTimer := TimerCloseForm; // ʹöķ + + // Ҫ洢 Form Ա¼з + Tag := Integer(Form); // ʹ Tag 洢 + + Form.ShowModal; + finally + Form.Free; + end; +end; + +// ļʱ¼ +procedure TfrmDyePCDetailsList.TimerCloseForm(Sender: TObject); +var + Form: TForm; +begin + // Sender ȡ Timer + TTimer(Sender).Enabled := False; + + // ȡ Form + Form := TForm(TTimer(Sender).Owner); + if Assigned(Form) then + Form.ModalResult := mrOk; +end; + +procedure TfrmDyePCDetailsList.AppIdleSetFocus(Sender: TObject; var Done: Boolean); +begin + // ȷִֻһ + Application.OnIdle := nil; + + // õ + if Self.CanFocus then + begin + Self.SetFocus; +// ѡϢ + + AutoCloseMessage('ɹ', 1000); // 1Զر + +// ShowMessage('õ: ' + Self.Name); + + end; + + Done := True; // Ĭϴ end; procedure TfrmDyePCDetailsList.TBExportClick(Sender: TObject); diff --git a/F04染色刷卡/U_DyePCList.dfm b/F04染色刷卡/U_DyePCList.dfm index 53a8624..2f81430 100644 --- a/F04染色刷卡/U_DyePCList.dfm +++ b/F04染色刷卡/U_DyePCList.dfm @@ -9,7 +9,6 @@ inherited frmDyePCList: TfrmDyePCList OldCreateOrder = True WindowState = wsMaximized OnKeyDown = FormKeyDown - ExplicitLeft = -312 ExplicitWidth = 1196 ExplicitHeight = 623 PixelsPerInch = 96 @@ -261,8 +260,6 @@ inherited frmDyePCList: TfrmDyePCList TabOrder = 3 LookAndFeel.ScrollbarMode = sbmHybrid LookAndFeel.ScrollMode = scmDefault - ExplicitLeft = -40 - ExplicitTop = 89 object tv1: TcxGridDBTableView Tag = 9999 DragMode = dmAutomatic @@ -465,14 +462,29 @@ inherited frmDyePCList: TfrmDyePCList DataBinding.FieldName = 'ZM1' DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter + Options.CellMerging = True + Styles.OnGetContentStyle = tv1ZM1StylesGetContentStyle Width = 61 + OnCompareRowValuesForCellMerging = tv1ZM1CompareRowValuesForCellMerging end object tv1ZM2: TcxGridDBColumn Caption = #36711#27611#26426'2' DataBinding.FieldName = 'ZM2' DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter + Options.CellMerging = True + Styles.OnGetContentStyle = tv1ZM2StylesGetContentStyle Width = 60 + OnCompareRowValuesForCellMerging = tv1ZM2CompareRowValuesForCellMerging + end + object tv1PD1: TcxGridDBColumn + Caption = #25293#25171#26426'1' + DataBinding.FieldName = 'PD1' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Styles.OnGetContentStyle = tv1PD1StylesGetContentStyle + Width = 80 + OnCompareRowValuesForCellMerging = tv1PD1CompareRowValuesForCellMerging end end object dbGrid1Level1: TcxGridLevel diff --git a/F04染色刷卡/U_DyePCList.pas b/F04染色刷卡/U_DyePCList.pas index a3a60b7..d20283a 100644 --- a/F04染色刷卡/U_DyePCList.pas +++ b/F04染色刷卡/U_DyePCList.pas @@ -72,6 +72,7 @@ type tv1ZM1: TcxGridDBColumn; tv1ZM2: TcxGridDBColumn; TbUpdateTime: TToolButton; + tv1PD1: TcxGridDBColumn; procedure FormDestroy(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure FormCreate(Sender: TObject); @@ -112,6 +113,30 @@ type procedure tv1CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); procedure TbUpdateTimeClick(Sender: TObject); procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); + procedure tv1ZM1StylesGetContentStyle(Sender: TcxCustomGridTableView; + ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; + var AStyle: TcxStyle); + procedure tv1ZM2StylesGetContentStyle(Sender: TcxCustomGridTableView; + ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; + var AStyle: TcxStyle); + procedure tv1ZM1CompareRowValuesForCellMerging(Sender: TcxGridColumn; + ARow1: TcxGridDataRow; AProperties1: TcxCustomEditProperties; + const AValue1: Variant; ARow2: TcxGridDataRow; + AProperties2: TcxCustomEditProperties; const AValue2: Variant; + var AAreEqual: Boolean); + procedure tv1ZM2CompareRowValuesForCellMerging(Sender: TcxGridColumn; + ARow1: TcxGridDataRow; AProperties1: TcxCustomEditProperties; + const AValue1: Variant; ARow2: TcxGridDataRow; + AProperties2: TcxCustomEditProperties; const AValue2: Variant; + var AAreEqual: Boolean); + procedure tv1PD1StylesGetContentStyle(Sender: TcxCustomGridTableView; + ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem; + var AStyle: TcxStyle); + procedure tv1PD1CompareRowValuesForCellMerging(Sender: TcxGridColumn; + ARow1: TcxGridDataRow; AProperties1: TcxCustomEditProperties; + const AValue1: Variant; ARow2: TcxGridDataRow; + AProperties2: TcxCustomEditProperties; const AValue2: Variant; + var AAreEqual: Boolean); private FLeft, FTop: Integer; @@ -735,6 +760,135 @@ begin end; end; +procedure TfrmDyePCList.tv1PD1CompareRowValuesForCellMerging( + Sender: TcxGridColumn; ARow1: TcxGridDataRow; + AProperties1: TcxCustomEditProperties; const AValue1: Variant; + ARow2: TcxGridDataRow; AProperties2: TcxCustomEditProperties; + const AValue2: Variant; var AAreEqual: Boolean); +begin + if (ARow1.Values[tv1PD1.Index] = ARow2.Values[tv1PD1.Index]) and (ARow1.Values[tv1PD1.Index] <> NULL) then + AAreEqual := True + else + AAreEqual := False; +end; + +procedure TfrmDyePCList.tv1PD1StylesGetContentStyle( + Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; + AItem: TcxCustomGridTableItem; var AStyle: TcxStyle); +var + GroupValue: string; + ColorValue: Integer; + I: Integer; +begin + if (ARecord <> nil) and (ARecord is TcxGridDataRow) then + begin + GroupValue := VarToStr(ARecord.Values[tv1PD1.Index]); + + if (GroupValue <> '') and (GroupValue <> null) then + begin + // ÿַλúֵϣ + + ColorValue := StrToInt(Copy(GroupValue, Length(GroupValue), 1)); + AStyle := TcxStyle.Create(nil); + case ColorValue mod 3 of + 0: + AStyle.Color := $00CCFFFF; // ɫ + 1: + AStyle.Color := $00CCFFCC; // ɫ + 2: + AStyle.Color := $00FFCCCC; // ɫ + end; + AStyle.TextColor := clBlack; + end; + end; +end; + +procedure TfrmDyePCList.tv1ZM1CompareRowValuesForCellMerging( + Sender: TcxGridColumn; ARow1: TcxGridDataRow; + AProperties1: TcxCustomEditProperties; const AValue1: Variant; + ARow2: TcxGridDataRow; AProperties2: TcxCustomEditProperties; + const AValue2: Variant; var AAreEqual: Boolean); +begin + if (ARow1.Values[tv1ZM1.Index] = ARow2.Values[tv1ZM1.Index]) and (ARow1.Values[tv1ZM1.Index] <> NULL) then + AAreEqual := True + else + AAreEqual := False; +end; + +procedure TfrmDyePCList.tv1ZM1StylesGetContentStyle( + Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; + AItem: TcxCustomGridTableItem; var AStyle: TcxStyle); +var + GroupValue: string; + ColorValue: Integer; + I: Integer; +begin + if (ARecord <> nil) and (ARecord is TcxGridDataRow) then + begin + GroupValue := VarToStr(ARecord.Values[tv1ZM1.Index]); + + if (GroupValue <> '') and (GroupValue <> null) then + begin + // ÿַλúֵϣ + + ColorValue := StrToInt(Copy(GroupValue, Length(GroupValue), 1)); + AStyle := TcxStyle.Create(nil); + case ColorValue mod 3 of + 0: + AStyle.Color := $00CCFFFF; // ɫ + 1: + AStyle.Color := $00CCFFCC; // ɫ + 2: + AStyle.Color := $00FFCCCC; // ɫ + end; + AStyle.TextColor := clBlack; + end; + end; +end; + +procedure TfrmDyePCList.tv1ZM2CompareRowValuesForCellMerging( + Sender: TcxGridColumn; ARow1: TcxGridDataRow; + AProperties1: TcxCustomEditProperties; const AValue1: Variant; + ARow2: TcxGridDataRow; AProperties2: TcxCustomEditProperties; + const AValue2: Variant; var AAreEqual: Boolean); +begin + if (ARow1.Values[tv1ZM2.Index] = ARow2.Values[tv1ZM2.Index]) and (ARow1.Values[tv1ZM2.Index] <> NULL) then + AAreEqual := True + else + AAreEqual := False; +end; + +procedure TfrmDyePCList.tv1ZM2StylesGetContentStyle( + Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; + AItem: TcxCustomGridTableItem; var AStyle: TcxStyle); +var + GroupValue: string; + ColorValue: Integer; + I: Integer; +begin + if (ARecord <> nil) and (ARecord is TcxGridDataRow) then + begin + GroupValue := VarToStr(ARecord.Values[tv1ZM2.Index]); + + if (GroupValue <> '') and (GroupValue <> null) then + begin + // ÿַλúֵϣ + + ColorValue := StrToInt(Copy(GroupValue, Length(GroupValue), 1)); + AStyle := TcxStyle.Create(nil); + case ColorValue mod 3 of + 0: + AStyle.Color := $00CCFFFF; // ɫ + 1: + AStyle.Color := $00CCFFCC; // ɫ + 2: + AStyle.Color := $00FFCCCC; // ɫ + end; + AStyle.TextColor := clBlack; + end; + end; +end; + procedure TfrmDyePCList.ConNoMChange(Sender: TObject); begin if ADOQueryMain.Active then diff --git a/F04染色刷卡/U_MachTaskList.dfm b/F04染色刷卡/U_MachTaskList.dfm index 801b888..c83d768 100644 --- a/F04染色刷卡/U_MachTaskList.dfm +++ b/F04染色刷卡/U_MachTaskList.dfm @@ -13,6 +13,7 @@ object frmMachTaskList: TfrmMachTaskList OldCreateOrder = False WindowState = wsMaximized OnCreate = FormCreate + OnKeyDown = FormKeyDown OnShow = FormShow PixelsPerInch = 96 TextHeight = 21 @@ -195,7 +196,7 @@ object frmMachTaskList: TfrmMachTaskList Height = 38 AutoSize = True ButtonHeight = 38 - ButtonWidth = 114 + ButtonWidth = 137 Caption = 'ToolBar1' GradientEndColor = clWindow Images = DataLink_DyeProcess.ImageList_new32 @@ -212,7 +213,7 @@ object frmMachTaskList: TfrmMachTaskList OnClick = TrefreshClick end object ToolButton1: TToolButton - Left = 71 + Left = 79 Top = 0 AutoSize = True Caption = #19978#31227 @@ -221,7 +222,7 @@ object frmMachTaskList: TfrmMachTaskList OnClick = ToolButton1Click end object ToolButton2: TToolButton - Left = 142 + Left = 158 Top = 0 AutoSize = True Caption = #19979#31227 @@ -230,7 +231,7 @@ object frmMachTaskList: TfrmMachTaskList OnClick = ToolButton2Click end object TbSave: TToolButton - Left = 213 + Left = 237 Top = 0 AutoSize = True Caption = #20445#23384 @@ -238,7 +239,7 @@ object frmMachTaskList: TfrmMachTaskList OnClick = TbSaveClick end object TbEditSave: TToolButton - Left = 284 + Left = 316 Top = 0 AutoSize = True Caption = #20462#25913#20445#23384 @@ -246,7 +247,7 @@ object frmMachTaskList: TfrmMachTaskList OnClick = TbEditSaveClick end object TBDel: TToolButton - Left = 379 + Left = 427 Top = 0 AutoSize = True Caption = #21024#38500#20445#23384 @@ -254,7 +255,7 @@ object frmMachTaskList: TfrmMachTaskList OnClick = TBDelClick end object Tconfirm: TToolButton - Left = 474 + Left = 538 Top = 0 AutoSize = True Caption = #20445#23384#26684#24335 @@ -262,7 +263,7 @@ object frmMachTaskList: TfrmMachTaskList OnClick = TconfirmClick end object Tclose: TToolButton - Left = 569 + Left = 649 Top = 0 AutoSize = True Caption = #20851#38381 @@ -270,17 +271,19 @@ object frmMachTaskList: TfrmMachTaskList OnClick = TcloseClick end object ToolButton3: TToolButton - Left = 640 + Left = 728 Top = 0 Caption = 'ToolButton3' ImageIndex = 8 + Visible = False OnClick = ToolButton3Click end object ToolButton4: TToolButton - Left = 754 + Left = 865 Top = 0 Caption = 'ToolButton4' ImageIndex = 9 + Visible = False OnClick = ToolButton4Click end end @@ -293,7 +296,6 @@ object frmMachTaskList: TfrmMachTaskList BevelInner = bvRaised BevelOuter = bvLowered TabOrder = 2 - ExplicitTop = 32 object Label1: TLabel Left = 24 Top = 18 @@ -349,8 +351,8 @@ object frmMachTaskList: TfrmMachTaskList Width = 155 end object Panel2: TPanel - Left = 968 - Top = 6 + Left = 942 + Top = 17 Width = 60 Height = 25 Caption = #26410#25490#20135 @@ -365,31 +367,31 @@ object frmMachTaskList: TfrmMachTaskList TabOrder = 2 end object Panel3: TPanel - Left = 1048 - Top = 6 - Width = 105 + Left = 1071 + Top = 17 + Width = 60 Height = 25 - Caption = #25490#20837#26410#25253#24037 + Caption = #24050#25490#20135 Color = clWindow ParentBackground = False TabOrder = 3 end object Panel4: TPanel - Left = 1184 - Top = 6 - Width = 105 + Left = 1199 + Top = 17 + Width = 60 Height = 25 - Caption = #29983#20135#19968#37096#20998 + Caption = #29983#20135#20013 Color = 14737632 ParentBackground = False TabOrder = 4 end object Panel5: TPanel Left = 1328 - Top = 6 - Width = 129 + Top = 17 + Width = 60 Height = 25 - Caption = #25104#21697#24050#20837#24211 + Caption = #24050#25253#24037 Color = 14745568 ParentBackground = False TabOrder = 5 diff --git a/F04染色刷卡/U_MachTaskList.pas b/F04染色刷卡/U_MachTaskList.pas index cf11eee..aadaf42 100644 --- a/F04染色刷卡/U_MachTaskList.pas +++ b/F04染色刷卡/U_MachTaskList.pas @@ -100,6 +100,7 @@ type procedure Tv2CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); procedure ToolButton3Click(Sender: TObject); procedure ToolButton4Click(Sender: TObject); + procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); private procedure initGrid(); @@ -127,6 +128,16 @@ begin cxgrid1.Align := alClient; end; +procedure TfrmMachTaskList.FormKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); +begin + if Key = VK_ESCAPE then // VK_ESCAPE ESC ij + begin + Key := 0; // ֹ + Close; // ModalResult := mrCancel; + end; +end; + procedure TfrmMachTaskList.TBDelClick(Sender: TObject); begin if MessageDlg('ȷɾ˲޷', mtWarning, [mbOK, mbCancel], 0) = mrOK then @@ -830,6 +841,8 @@ begin TbEditSave.Visible := false; TbDel.Visible := False; end; + + KeyPreview := True; // ȷԤ end; procedure TfrmMachTaskList.initGrid(); @@ -911,8 +924,9 @@ begin begin close; sql.Clear; - sql.Add('select * from V_Dye_Cloth_PaiGang '); - sql.Add('where isComplete <> 1 OR isComplete IS NULL order by PCID ASC, GlideNo ASC'); + SQL.Add(' select A.* from V_Dye_Cloth_PaiGang A where 1=1 '); + sql.Add(' AND A.KaZuState = 9 '); +// sql.Add('where isComplete <> 1 OR isComplete IS NULL order by PCID ASC, GlideNo ASC'); // ShowMessage(SQL.Text); // a.taskDate, open; diff --git a/F05染色检验/DyeInsp.dproj.local b/F05染色检验/DyeInsp.dproj.local index 7fbc9a8..9caa1e0 100644 --- a/F05染色检验/DyeInsp.dproj.local +++ b/F05染色检验/DyeInsp.dproj.local @@ -26,13 +26,13 @@ 1899/12/30 00:00:00.000.965,D:\Dp10Repo\项目代码\RTBasics\F05染色检验\DyeInsp.dproj=D:\Dp10Repo\项目代码\RTBasics\F05染色检验\InformationBase.dproj 1899/12/30 00:00:00.000.015,=D:\Dp10Repo\public10\ThreeFun\Fun\U_RTFun.pas 1899/12/30 00:00:00.000.909,=D:\Dp10Repo\项目代码\RTBasics\F05染色检验\U_DyeClothInspList.pas + 1899/12/30 00:00:00.000.630,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas 1899/12/30 00:00:00.000.422,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas - 1899/12/30 00:00:00.000.734,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas 1899/12/30 00:00:00.000.958,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LabelPrint.pas 1899/12/30 00:00:00.000.092,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_EmployeeSel.pas 1899/12/30 00:00:00.000.178,=D:\Dp10Repo\public10\design\U_WindowFormdesign.pas 1899/12/30 00:00:00.000.616,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LablePrint.pas - 1899/12/30 00:00:00.000.630,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas + 1899/12/30 00:00:00.000.734,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas 2025/10/30 16:43:17.000.471,=D:\Dp10Repo\项目代码\D10sxYilanbuyi\F05染色检验\U_DyeCardRoll.pas diff --git a/F05染色检验/DyeInsp.identcache b/F05染色检验/DyeInsp.identcache index 4f3c04d..33d22c8 100644 Binary files a/F05染色检验/DyeInsp.identcache and b/F05染色检验/DyeInsp.identcache differ diff --git a/F05染色检验/DyeInspLogin.dproj.local b/F05染色检验/DyeInspLogin.dproj.local index e76adfc..8a45a34 100644 --- a/F05染色检验/DyeInspLogin.dproj.local +++ b/F05染色检验/DyeInspLogin.dproj.local @@ -1,26 +1,26 @@  - - - - - - - - - - - - + + + + + + + + + + + + - 1899/12/30 00:00:00.000.635,D:\Dp10Repo\项目代码\RTBasics\F05染色检验\WFBProduction.dproj=D:\Dp10Repo\项目代码\RTBasics\F05染色检验\DyeInspLogin.dproj + 1899/12/30 00:00:00.000.635,D:\Dp10Repo\项目代码\RTBasics\F05染色检验\DyeInspLogin.dproj=D:\Dp10Repo\项目代码\RTBasics\F05染色检验\WFBProduction.dproj diff --git a/F05染色检验/DyeInspLogin.identcache b/F05染色检验/DyeInspLogin.identcache index da5bc7b..948741f 100644 Binary files a/F05染色检验/DyeInspLogin.identcache and b/F05染色检验/DyeInspLogin.identcache differ diff --git a/F05染色检验/U_DyeCardRoll.dfm b/F05染色检验/U_DyeCardRoll.dfm index 8496fd9..9303b14 100644 --- a/F05染色检验/U_DyeCardRoll.dfm +++ b/F05染色检验/U_DyeCardRoll.dfm @@ -2,6 +2,7 @@ inherited frmDyeCardRoll: TfrmDyeCardRoll Caption = #22823#21367#26729#31649#29702 ClientHeight = 699 ClientWidth = 1401 + OnKeyDown = FormKeyDown ExplicitWidth = 1417 ExplicitHeight = 738 PixelsPerInch = 96 @@ -45,17 +46,33 @@ inherited frmDyeCardRoll: TfrmDyeCardRoll ImageIndex = 0 OnClick = TBFindClick end - object TBPrint: TToolButton + object TbEditMeter: TToolButton Left = 142 Top = 0 AutoSize = True + Caption = #20462#25913#31859#25968 + ImageIndex = 3 + OnClick = TbEditMeterClick + end + object ToolButton3: TToolButton + Left = 237 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 9 + OnClick = ToolButton3Click + end + object TBPrint: TToolButton + Left = 308 + Top = 0 + AutoSize = True Caption = #25171#21360 ImageIndex = 21 Visible = False OnClick = TBPrintClick end object TBExport: TToolButton - Left = 213 + Left = 379 Top = 0 AutoSize = True Caption = #23548#20986 @@ -63,7 +80,7 @@ inherited frmDyeCardRoll: TfrmDyeCardRoll OnClick = TBExportClick end object ToolButton2: TToolButton - Left = 284 + Left = 450 Top = 0 AutoSize = True Caption = #20445#23384#26684#24335 @@ -71,7 +88,7 @@ inherited frmDyeCardRoll: TfrmDyeCardRoll OnClick = ToolButton2Click end object TBClose: TToolButton - Left = 379 + Left = 545 Top = 0 AutoSize = True Caption = #20851#38381 @@ -89,7 +106,6 @@ inherited frmDyeCardRoll: TfrmDyeCardRoll BevelOuter = bvLowered Color = clSkyBlue TabOrder = 1 - ExplicitTop = 32 object Label1: TLabel Left = 18 Top = 17 @@ -104,7 +120,7 @@ inherited frmDyeCardRoll: TfrmDyeCardRoll ParentFont = False end object Label3: TLabel - Left = 223 + Left = 366 Top = 17 Width = 52 Height = 12 @@ -117,32 +133,6 @@ inherited frmDyeCardRoll: TfrmDyeCardRoll ParentFont = False OnDblClick = Label3DblClick end - object Label8: TLabel - Left = 404 - Top = 17 - Width = 39 - Height = 12 - Caption = #21367#26729#21495 - Font.Charset = GB2312_CHARSET - Font.Color = clWindowText - Font.Height = -12 - Font.Name = #23435#20307 - Font.Style = [fsBold] - ParentFont = False - end - object Label11: TLabel - Left = 404 - Top = 43 - Width = 52 - Height = 12 - Caption = #27969#31243#21345#21495 - Font.Charset = GB2312_CHARSET - Font.Color = clWindowText - Font.Height = -12 - Font.Name = #23435#20307 - Font.Style = [fsBold] - ParentFont = False - end object Label12: TLabel Left = 613 Top = 119 @@ -157,11 +147,11 @@ inherited frmDyeCardRoll: TfrmDyeCardRoll ParentFont = False end object Label2: TLabel - Left = 223 - Top = 43 - Width = 39 + Left = 190 + Top = 17 + Width = 52 Height = 12 - Caption = #21345#32452#21495 + Caption = #27969#31243#21345#32452 Font.Charset = GB2312_CHARSET Font.Color = clWindowText Font.Height = -12 @@ -170,7 +160,7 @@ inherited frmDyeCardRoll: TfrmDyeCardRoll ParentFont = False end object Label4: TLabel - Left = 588 + Left = 543 Top = 17 Width = 52 Height = 12 @@ -182,25 +172,12 @@ inherited frmDyeCardRoll: TfrmDyeCardRoll Font.Style = [fsBold] ParentFont = False end - object Label5: TLabel - Left = 588 - Top = 43 + object Label6: TLabel + Left = 724 + Top = 17 Width = 52 Height = 12 - Caption = #24037#24207#21517#31216 - Font.Charset = GB2312_CHARSET - Font.Color = clWindowText - Font.Height = -12 - Font.Name = #23435#20307 - Font.Style = [fsBold] - ParentFont = False - end - object Label6: TLabel - Left = 773 - Top = 17 - Width = 26 - Height = 12 - Caption = #24037#24207 + Caption = #24037#24207#32534#21495 Font.Charset = GB2312_CHARSET Font.Color = clWindowText Font.Height = -12 @@ -230,74 +207,71 @@ inherited frmDyeCardRoll: TfrmDyeCardRoll end object OrderNo: TEdit Tag = 2 - Left = 281 + Left = 421 Top = 13 Width = 100 Height = 20 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False TabOrder = 2 OnChange = OrderNoChange end - object RollNumber: TEdit - Tag = 2 - Left = 462 - Top = 13 - Width = 100 - Height = 20 - TabOrder = 3 - OnChange = OrderNoChange - end - object PCID: TEdit - Tag = 2 - Left = 462 - Top = 39 - Width = 100 - Height = 20 - TabOrder = 4 - OnChange = OrderNoChange - end object MPRTKZ: TEdit Tag = 2 Left = 654 Top = 99 Width = 56 Height = 20 - TabOrder = 5 + TabOrder = 3 OnChange = OrderNoChange end object KaZu: TEdit Tag = 2 - Left = 281 - Top = 39 + Left = 246 + Top = 13 Width = 100 Height = 20 - TabOrder = 6 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 4 OnChange = OrderNoChange end object C_Name: TEdit Tag = 2 - Left = 646 + Left = 601 Top = 13 Width = 100 Height = 20 - TabOrder = 7 - OnChange = OrderNoChange - end - object GlideName: TEdit - Tag = 2 - Left = 646 - Top = 39 - Width = 100 - Height = 20 - TabOrder = 8 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 5 OnChange = OrderNoChange end object GlideNo: TEdit Tag = 2 - Left = 805 + Left = 780 Top = 13 Width = 100 Height = 20 - TabOrder = 9 + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + ParentFont = False + TabOrder = 6 OnChange = OrderNoChange end end @@ -309,7 +283,6 @@ inherited frmDyeCardRoll: TfrmDyeCardRoll Align = alClient PopupMenu = PM_1 TabOrder = 2 - ExplicitTop = 131 object Tv1: TcxGridDBTableView Navigator.Buttons.CustomButtons = <> ScrollbarAnnotations.CustomAnnotations = <> @@ -552,32 +525,32 @@ inherited frmDyeCardRoll: TfrmDyeCardRoll Connection = DataLink_DyeInsp.ADOLink Parameters = <> Left = 672 - Top = 188 + Top = 194 end object ADOQueryMain: TADOQuery Connection = DataLink_DyeInsp.ADOLink LockType = ltReadOnly Parameters = <> Left = 504 - Top = 192 + Top = 198 end object ADOQueryTemp: TADOQuery Connection = DataLink_DyeInsp.ADOLink LockType = ltReadOnly Parameters = <> Left = 580 - Top = 184 + Top = 190 end object DataSource1: TDataSource DataSet = Order_Main Left = 592 - Top = 288 + Top = 294 end object Order_Main: TClientDataSet Aggregates = <> Params = <> Left = 440 - Top = 308 + Top = 314 end object PM_1: TPopupMenu Left = 272 diff --git a/F05染色检验/U_DyeCardRoll.pas b/F05染色检验/U_DyeCardRoll.pas index ea5a4da..52129ff 100644 --- a/F05染色检验/U_DyeCardRoll.pas +++ b/F05染色检验/U_DyeCardRoll.pas @@ -42,10 +42,6 @@ type Order_Main: TClientDataSet; PM_1: TPopupMenu; N2: TMenuItem; - Label8: TLabel; - RollNumber: TEdit; - Label11: TLabel; - PCID: TEdit; Label12: TLabel; MPRTKZ: TEdit; DS_2: TDataSource; @@ -84,11 +80,11 @@ type KaZu: TEdit; Label4: TLabel; C_Name: TEdit; - Label5: TLabel; - GlideName: TEdit; Tv1Column1: TcxGridDBColumn; Label6: TLabel; GlideNo: TEdit; + TbEditMeter: TToolButton; + ToolButton3: TToolButton; procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure FormCreate(Sender: TObject); procedure TBCloseClick(Sender: TObject); @@ -108,6 +104,9 @@ type procedure cxTabControl1Change(Sender: TObject); procedure Label3DblClick(Sender: TObject); procedure ToolButton2Click(Sender: TObject); + procedure ToolButton3Click(Sender: TObject); + procedure TbEditMeterClick(Sender: TObject); + procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); private DQdate: TDateTime; @@ -150,9 +149,6 @@ end; procedure TfrmDyeCardRoll.SetStatus(); begin - - - if Trim(canshu1) = '' then begin @@ -160,12 +156,10 @@ begin 0: begin - end; 1: begin - end; 2: begin @@ -185,7 +179,6 @@ begin 0: begin - end; 1: begin @@ -237,11 +230,54 @@ begin FWorkshop := trim(Self.fParameters3); end; +procedure TfrmDyeCardRoll.FormKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); +begin + if Key = VK_ESCAPE then // VK_ESCAPE ESC ij + begin + Key := 0; // ֹ + Close; // ModalResult := mrCancel; + end; +end; + procedure TfrmDyeCardRoll.TBCloseClick(Sender: TObject); begin Close; end; +procedure TfrmDyeCardRoll.TbEditMeterClick(Sender: TObject); +var + InputStr: string; + MID: string; +begin + if not Order_Main.IsEmpty then + MID := Trim(Order_Main.FieldByName('ID').AsString) + else + MID := ''; +// Զλԭ¼ + + + + // + InputStr := InputBox('༭', 'µ:', ''); + + if InputStr <> '' then // û + begin + // ֵ + with ADOQueryCmd do + begin + Close; + sql.clear; + sql.Add(' update Dye_ClothCardRoll set RollMeter = ' + QuotedStr(Trim(InputStr))); + sql.add(' where ID = ' + Order_Main.FieldByName('ID').AsString); + ExecSQL; + end; + end; + InitGrid(); + if MID <> '' then + Order_Main.Locate('ID', MID, []); +end; + procedure TfrmDyeCardRoll.InitGrid(); begin @@ -283,7 +319,7 @@ begin //// sql.Add(' and A.Workshop=''' + trim(FWorkshop) + ''' '); // if Trim(canshu1) = '¼' then // sql.Add('and Filler=' + QuotedStr(Trim(DName))); - sql.Add(' order By KaZu ,GlideNo'); + sql.Add(' order By KaZu ,GlideNo'); //// ShowMessage(sql.Text); /// /// @@ -307,8 +343,6 @@ begin SInitCDSData(ADOQueryMain, Order_Main); end; - - function TfrmDyeCardRoll.DelData(): Boolean; begin try @@ -397,6 +431,7 @@ begin SetStatus(); InitGrid(); + KeyPreview := True; // ȷԤ end; procedure TfrmDyeCardRoll.CheckBox1Click(Sender: TObject); @@ -467,9 +502,54 @@ begin WriteCxGrid(self.Caption + 'TV1', Tv1, '׮'); end; +procedure TfrmDyeCardRoll.ToolButton3Click(Sender: TObject); +begin + if Order_Main.Locate('ssel', true, []) = False then + begin + Application.MessageBox('ѡ', 'ʾϢ', MB_OK); + Exit; + end; + if Application.MessageBox('ȷҪɾ', 'ʾ', 32 + 4) <> IDYES then + Exit; + try + with Order_Main do + begin + DisableControls; + First; + while not Eof do + begin + if Fieldbyname('Ssel').AsBoolean then + begin + try + ADOQueryCmd.Connection.BeginTrans; + with ADOQueryCmd do + begin + Close; + Sql.Clear; + Sql.Add('delete from Dye_ClothCardRoll where ID = ' + quotedstr(Trim(Order_Main.fieldbyname('ID').AsString))); + ExecSQL; + end; + ADOQueryCmd.Connection.CommitTrans; + except + ADOQueryCmd.Connection.RollbackTrans; + raise Exception.Create(PChar(Exception(ExceptObject).Message)); + end; + end; + + Next; + end; + EnableControls; + end; + + TBRafresh.Click; + except + Order_Main.EnableControls; + application.MessageBox(PChar(Exception(ExceptObject).Message), 'ʾϢ', 0); + end; +end; procedure TfrmDyeCardRoll.cxTabControl1Change(Sender: TObject); begin diff --git a/F05染色检验/U_DyeClothInspList.dfm b/F05染色检验/U_DyeClothInspList.dfm index 1d0972e..32de713 100644 --- a/F05染色检验/U_DyeClothInspList.dfm +++ b/F05染色检验/U_DyeClothInspList.dfm @@ -7,6 +7,7 @@ inherited frmDyeClothInspList: TfrmDyeClothInspList FormStyle = fsMDIChild Position = poScreenCenter Visible = True + OnKeyDown = FormKeyDown ExplicitWidth = 1487 ExplicitHeight = 621 PixelsPerInch = 96 diff --git a/F05染色检验/U_DyeClothInspList.pas b/F05染色检验/U_DyeClothInspList.pas index 46aad1c..b667d4d 100644 --- a/F05染色检验/U_DyeClothInspList.pas +++ b/F05染色检验/U_DyeClothInspList.pas @@ -124,6 +124,7 @@ type procedure N2Click(Sender: TObject); procedure N3Click(Sender: TObject); procedure ToolButton2Click(Sender: TObject); + procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); private DQdate: TDateTime; FLeft, FTop: Integer; @@ -174,6 +175,16 @@ begin FWorkshop := trim(Self.fParameters3); end; +procedure TfrmDyeClothInspList.FormKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); +begin + if Key = VK_ESCAPE then // VK_ESCAPE ESC ij + begin + Key := 0; // ֹ + Close; // ModalResult := mrCancel; + end; +end; + procedure TfrmDyeClothInspList.TBCloseClick(Sender: TObject); begin Close; @@ -285,6 +296,7 @@ begin InitGrid(); SetStatus(); InitGrid(); + KeyPreview := True; // ȷԤ end; procedure TfrmDyeClothInspList.Tv1MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); @@ -553,6 +565,16 @@ end; procedure TfrmDyeClothInspList.ToolButton2Click(Sender: TObject); begin try + with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('exec P_OrderCR'); + +// ShowMessage(sql.Text); + execsql; + end; + with ADOQueryCmd do begin Close; diff --git a/F05染色检验/U_DyeClothInspStaffOutputList.dfm b/F05染色检验/U_DyeClothInspStaffOutputList.dfm index debe036..b3af95d 100644 --- a/F05染色检验/U_DyeClothInspStaffOutputList.dfm +++ b/F05染色检验/U_DyeClothInspStaffOutputList.dfm @@ -3,6 +3,7 @@ inherited frmDyeClothInspStaffOutputList: TfrmDyeClothInspStaffOutputList Caption = #25171#21367#21592#24037#20135#37327#20449#24687' ' ClientHeight = 715 ClientWidth = 1477 + OnKeyDown = FormKeyDown ExplicitWidth = 1493 ExplicitHeight = 754 PixelsPerInch = 96 diff --git a/F05染色检验/U_DyeClothInspStaffOutputList.pas b/F05染色检验/U_DyeClothInspStaffOutputList.pas index 9999d40..683ad77 100644 --- a/F05染色检验/U_DyeClothInspStaffOutputList.pas +++ b/F05染色检验/U_DyeClothInspStaffOutputList.pas @@ -87,6 +87,7 @@ type procedure PRTColorChange(Sender: TObject); procedure Tv1MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); procedure cxTabControl1Change(Sender: TObject); + procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); private FLeft, FTop: Integer; procedure InitGrid(); @@ -111,6 +112,16 @@ begin frmDyeClothInspStaffOutputList := nil; end; +procedure TfrmDyeClothInspStaffOutputList.FormKeyDown(Sender: TObject; + var Key: Word; Shift: TShiftState); +begin + if Key = VK_ESCAPE then // VK_ESCAPE ESC ij + begin + Key := 0; // ֹ + Close; // ModalResult := mrCancel; + end; +end; + procedure TfrmDyeClothInspStaffOutputList.FormClose(Sender: TObject; var Action: TCloseAction); begin inherited; @@ -190,6 +201,7 @@ begin begin //v1Column5.Options.Focusing:=False; end; + KeyPreview := True; // ȷԤ //InitGrid(); end; diff --git a/F05染色检验/U_DyeInspEdit.dfm b/F05染色检验/U_DyeInspEdit.dfm index 5bbb2b2..24756c8 100644 --- a/F05染色检验/U_DyeInspEdit.dfm +++ b/F05染色检验/U_DyeInspEdit.dfm @@ -13,6 +13,7 @@ object frmDyeInspEdit: TfrmDyeInspEdit OldCreateOrder = False OnClose = FormClose OnDestroy = FormDestroy + OnKeyDown = FormKeyDown OnShow = FormShow PixelsPerInch = 96 TextHeight = 12 @@ -266,6 +267,7 @@ object frmDyeInspEdit: TfrmDyeInspEdit TabOrder = 2 object TV1: TcxGridDBTableView Navigator.Buttons.CustomButtons = <> + ScrollbarAnnotations.CustomAnnotations = <> DataController.Filter.AutoDataSetFilter = True DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] DataController.Summary.DefaultGroupSummaryItems = <> @@ -292,6 +294,7 @@ object frmDyeInspEdit: TfrmDyeInspEdit object TV1Column1: TcxGridDBColumn Caption = #30133#28857 DataBinding.FieldName = 'CIFName' + DataBinding.IsNullValueType = True PropertiesClassName = 'TcxButtonEditProperties' Properties.Buttons = < item @@ -305,6 +308,7 @@ object frmDyeInspEdit: TfrmDyeInspEdit object cxGridDBColumn2: TcxGridDBColumn Caption = #30133#28857#21517#31216 DataBinding.FieldName = 'CIFName' + DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Options.Focusing = False Options.Sorting = False @@ -313,6 +317,7 @@ object frmDyeInspEdit: TfrmDyeInspEdit object cxGridDBColumn3: TcxGridDBColumn Caption = #20301#32622#36215 DataBinding.FieldName = 'CIFbeg' + DataBinding.IsNullValueType = True PropertiesClassName = 'TcxTextEditProperties' Properties.OnEditValueChanged = cxGridDBColumn3PropertiesEditValueChanged HeaderAlignmentHorz = taCenter @@ -323,6 +328,7 @@ object frmDyeInspEdit: TfrmDyeInspEdit object cxGridDBColumn4: TcxGridDBColumn Caption = #20301#32622#27490 DataBinding.FieldName = 'CIFend' + DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter HeaderGlyphAlignmentHorz = taCenter Width = 79 @@ -330,6 +336,7 @@ object frmDyeInspEdit: TfrmDyeInspEdit object cxGridDBColumn5: TcxGridDBColumn Caption = #38271#24230 DataBinding.FieldName = 'CIFQty' + DataBinding.IsNullValueType = True PropertiesClassName = 'TcxTextEditProperties' HeaderAlignmentHorz = taCenter Options.Sorting = False @@ -338,6 +345,7 @@ object frmDyeInspEdit: TfrmDyeInspEdit object cxGridDBColumn6: TcxGridDBColumn Caption = #21407#22240 DataBinding.FieldName = 'CDReason' + DataBinding.IsNullValueType = True Visible = False HeaderAlignmentHorz = taCenter Options.Sorting = False @@ -345,12 +353,14 @@ object frmDyeInspEdit: TfrmDyeInspEdit end object cxGridDBColumn7: TcxGridDBColumn DataBinding.FieldName = 'CDQty' + DataBinding.IsNullValueType = True Visible = False Width = 60 end object cxGridDBColumn8: TcxGridDBColumn Caption = #25187#20998 DataBinding.FieldName = 'CIFPoints' + DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Options.Editing = False Width = 73 @@ -358,6 +368,7 @@ object frmDyeInspEdit: TfrmDyeInspEdit object cxGridDBColumn9: TcxGridDBColumn Caption = #20010#25968 DataBinding.FieldName = 'CIFNumber' + DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Options.Editing = False Width = 69 diff --git a/F05染色检验/U_DyeInspEdit.pas b/F05染色检验/U_DyeInspEdit.pas index 7ef7697..17c1f83 100644 --- a/F05染色检验/U_DyeInspEdit.pas +++ b/F05染色检验/U_DyeInspEdit.pas @@ -9,7 +9,7 @@ uses cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses, cxControls, cxGridCustomView, cxGrid, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxButtonEdit, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, dxSkinsCore, - dxSkinsDefaultPainters, dxDateRanges; + dxSkinsDefaultPainters, dxDateRanges, dxScrollbarAnnotations; type TfrmDyeInspEdit = class(TForm) @@ -68,6 +68,7 @@ type procedure ToolButton4Click(Sender: TObject); procedure cxGridDBColumn3PropertiesEditValueChanged(Sender: TObject); procedure TV1Column1PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); private { Private declarations } function SaveData(): Boolean; @@ -181,6 +182,16 @@ begin frmDyeInspEdit := nil; end; +procedure TfrmDyeInspEdit.FormKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); +begin + if Key = VK_ESCAPE then // VK_ESCAPE ESC ij + begin + Key := 0; // ֹ + Close; // ModalResult := mrCancel; + end; +end; + procedure TfrmDyeInspEdit.tv2CDWZPropertiesEditValueChanged(Sender: TObject); var mvalue, CIFbeg, CIFEnd: string; @@ -410,6 +421,7 @@ begin begin GetJYXK(CIID.Text); end; + KeyPreview := True; // ȷԤ end; diff --git a/F05染色检验/testDll.identcache b/F05染色检验/testDll.identcache index 131539d..9988363 100644 Binary files a/F05染色检验/testDll.identcache and b/F05染色检验/testDll.identcache differ diff --git a/F06染色成品仓库/DyeClothStk.dproj.local b/F06染色成品仓库/DyeClothStk.dproj.local index a90d104..3613295 100644 --- a/F06染色成品仓库/DyeClothStk.dproj.local +++ b/F06染色成品仓库/DyeClothStk.dproj.local @@ -1,41 +1,41 @@  - 1899/12/30 00:00:00.000.982,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LbaelMapSet.pas - 1899/12/30 00:00:00.000.844,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_AttachmentUpload.pas - 1899/12/30 00:00:00.000.692,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.dfm=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_ClothInfoSel.dfm + 1899/12/30 00:00:00.000.616,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.dfm=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LablePrint.dfm 1899/12/30 00:00:00.000.832,=D:\Dp10Repo\public10\design\U_BaseHelp.pas - 1899/12/30 00:00:00.000.975,=D:\Dp10Repo\public10\ThreeFun\Fun\U_CompressionFun.pas - 1899/12/30 00:00:00.000.615,D:\Dp10Repo\项目代码\RTBasics\F06染色成品仓库\U_DyeClothOutEdit.pas=D:\Dp10Repo\项目代码\RTBasics\F06染色成品仓库\U_DyeClothInEdit.pas + 1899/12/30 00:00:00.000.443,=D:\Dp10Repo\项目代码\RTBasics\F06染色成品仓库\U_DyeClothWaitStorage.pas + 1899/12/30 00:00:00.000.048,=D:\Dp10Repo\public10\design\U_BaseList.pas + 1899/12/30 00:00:00.000.844,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_AttachmentUpload.pas 1899/12/30 00:00:00.000.716,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_ProcessSel.pas - 1899/12/30 00:00:00.000.845,=D:\Dp10Repo\项目代码\RTBasics\F06染色成品仓库\U_DyeClothInEdit.pas - 1899/12/30 00:00:00.000.092,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_EmployeeSel.pas - 1899/12/30 00:00:00.000.615,D:\Dp10Repo\项目代码\RTBasics\F06染色成品仓库\U_DyeClothOutEdit.dfm=D:\Dp10Repo\项目代码\RTBasics\F06染色成品仓库\U_DyeClothInEdit.dfm + 1899/12/30 00:00:00.000.420,D:\Dp10Repo\项目代码\RTBasics\F06染色成品仓库\DyeClothStk.dproj=D:\Dp10Repo\项目代码\RTBasics\F06染色成品仓库\InformationBase.dproj + 1899/12/30 00:00:00.000.975,=D:\Dp10Repo\public10\ThreeFun\Fun\U_CompressionFun.pas + 1899/12/30 00:00:00.000.982,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LbaelMapSet.pas 1899/12/30 00:00:00.000.149,=D:\Dp10Repo\public10\ThreeFun\Form\U_ZDYHelp.pas 1899/12/30 00:00:00.000.783,D:\Dp10Repo\项目代码\RTBasics\F06染色成品仓库\Unit1.pas= 1899/12/30 00:00:00.000.339,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_ClothInfoSel.pas - 1899/12/30 00:00:00.000.493,=D:\Dp10Repo\项目代码\RTBasics\A00通用模板\Unit1.pas - 1899/12/30 00:00:00.000.443,=D:\Dp10Repo\项目代码\RTBasics\F06染色成品仓库\U_DyeClothWaitStorage.pas - 1899/12/30 00:00:00.000.048,=D:\Dp10Repo\public10\design\U_BaseList.pas + 1899/12/30 00:00:00.000.692,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_ClothInfoSel.pas=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas + 1899/12/30 00:00:00.000.615,D:\Dp10Repo\项目代码\RTBasics\F06染色成品仓库\U_DyeClothInEdit.dfm=D:\Dp10Repo\项目代码\RTBasics\F06染色成品仓库\U_DyeClothOutEdit.dfm 1899/12/30 00:00:00.000.135,D:\Dp10Repo\项目代码\睿特\新DLL初始化(CSH.dll)\U_ZDYHelp.pas= 1899/12/30 00:00:00.000.939,=D:\Dp10Repo\public10\design\U_BaseInput.pas - 1899/12/30 00:00:00.000.755,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LabelPrint.pas - 1899/12/30 00:00:00.000.361,=D:\Dp10Repo\项目代码\RTBasics\F00染色通用窗体\U_DyePlanSel.pas + 1899/12/30 00:00:00.000.692,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_ClothInfoSel.dfm=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.dfm + 1899/12/30 00:00:00.000.493,=D:\Dp10Repo\项目代码\RTBasics\A00通用模板\Unit1.pas + 1899/12/30 00:00:00.000.487,D:\Dp10Repo\项目代码\睿特\新DLL初始化(CSH.dll)\U_ZDYHelpSel.pas= 1899/12/30 00:00:00.000.178,=D:\Dp10Repo\public10\design\U_WindowFormdesign.pas 1899/12/30 00:00:00.000.736,D:\Dp10Repo\项目代码\睿特\新DLL初始化(CSH.dll)\U_ModuleNote.pas= - 1899/12/30 00:00:00.000.420,D:\Dp10Repo\项目代码\RTBasics\F06染色成品仓库\InformationBase.dproj=D:\Dp10Repo\项目代码\RTBasics\F06染色成品仓库\DyeClothStk.dproj - 1899/12/30 00:00:00.000.123,=D:\Dp10Repo\public10\design\U_globalVar.pas + 1899/12/30 00:00:00.000.710,=D:\Dp10Repo\项目代码\RTBasics\F06染色成品仓库\U_DyeClothIOFlow.pas + 1899/12/30 00:00:00.000.616,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LablePrint.pas + 1899/12/30 00:00:00.000.361,=D:\Dp10Repo\项目代码\RTBasics\F00染色通用窗体\U_DyePlanSel.pas 1899/12/30 00:00:00.000.537,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LabelMapSet.pas - 1899/12/30 00:00:00.000.616,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LablePrint.dfm=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.dfm 1899/12/30 00:00:00.000.015,=D:\Dp10Repo\public10\ThreeFun\Fun\U_RTFun.pas 1899/12/30 00:00:00.000.086,=D:\Dp10Repo\public10\design\U_cxGridCustomCss.pas + 1899/12/30 00:00:00.000.123,=D:\Dp10Repo\public10\design\U_globalVar.pas 1899/12/30 00:00:00.000.734,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas - 1899/12/30 00:00:00.000.422,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas + 1899/12/30 00:00:00.000.755,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LabelPrint.pas + 1899/12/30 00:00:00.000.615,D:\Dp10Repo\项目代码\RTBasics\F06染色成品仓库\U_DyeClothInEdit.pas=D:\Dp10Repo\项目代码\RTBasics\F06染色成品仓库\U_DyeClothOutEdit.pas + 1899/12/30 00:00:00.000.845,=D:\Dp10Repo\项目代码\RTBasics\F06染色成品仓库\U_DyeClothInEdit.pas + 1899/12/30 00:00:00.000.092,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_EmployeeSel.pas 1899/12/30 00:00:00.000.045,=D:\Dp10Repo\项目代码\RTBasics\F06染色成品仓库\U_DyeClothPSI.pas - 1899/12/30 00:00:00.000.616,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LablePrint.pas=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas - 1899/12/30 00:00:00.000.487,D:\Dp10Repo\项目代码\睿特\新DLL初始化(CSH.dll)\U_ZDYHelpSel.pas= - 1899/12/30 00:00:00.000.710,=D:\Dp10Repo\项目代码\RTBasics\F06染色成品仓库\U_DyeClothIOFlow.pas - 1899/12/30 00:00:00.000.692,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_ClothInfoSel.pas + 1899/12/30 00:00:00.000.422,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas 1899/12/30 00:00:00.000.630,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas 2025/11/01 16:37:51.000.144,=D:\Dp10Repo\public10\ThreeFun\Fun\uSZHN_JSON.pas 2025/11/04 12:26:10.000.642,=D:\Dp10Repo\项目代码\D10sxYilanbuyi\F06染色成品仓库\U_DyeClothOutPut.pas diff --git a/F06染色成品仓库/DyeClothStk.identcache b/F06染色成品仓库/DyeClothStk.identcache index 56a6e39..f68b7c0 100644 Binary files a/F06染色成品仓库/DyeClothStk.identcache and b/F06染色成品仓库/DyeClothStk.identcache differ diff --git a/F06染色成品仓库/U_DyeClothInList.dfm b/F06染色成品仓库/U_DyeClothInList.dfm index 16e7b08..2c0fc31 100644 --- a/F06染色成品仓库/U_DyeClothInList.dfm +++ b/F06染色成品仓库/U_DyeClothInList.dfm @@ -7,6 +7,7 @@ inherited frmDyeClothInList: TfrmDyeClothInList FormStyle = fsMDIChild Position = poScreenCenter Visible = True + OnKeyDown = FormKeyDown ExplicitWidth = 1556 ExplicitHeight = 639 PixelsPerInch = 96 @@ -319,7 +320,6 @@ inherited frmDyeClothInList: TfrmDyeClothInList AutoSize = True BorderStyle = bsSingle TabOrder = 2 - ExplicitTop = 111 DesignSize = ( 1536 23) @@ -428,7 +428,6 @@ inherited frmDyeClothInList: TfrmDyeClothInList ParentFont = False PopupMenu = PM_1 TabOrder = 3 - ExplicitTop = 134 object Tv1: TcxGridDBTableView Navigator.Buttons.CustomButtons = <> ScrollbarAnnotations.CustomAnnotations = <> @@ -520,6 +519,7 @@ inherited frmDyeClothInList: TfrmDyeClothInList Caption = #20837#24211#26102#38388 DataBinding.FieldName = 'IOTime' DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter Options.Editing = False Width = 71 end @@ -561,7 +561,7 @@ inherited frmDyeClothInList: TfrmDyeClothInList DataBinding.IsNullValueType = True HeaderAlignmentHorz = taCenter Options.Editing = False - Width = 66 + Width = 67 end object v1Column23: TcxGridDBColumn Caption = #21367#21495 @@ -635,6 +635,13 @@ inherited frmDyeClothInList: TfrmDyeClothInList Options.Editing = False Width = 66 end + object Tv1finishDescription: TcxGridDBColumn + Caption = #21518#25972#29702#25551#36848 + DataBinding.FieldName = 'finishDescription' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 132 + end end object cxGrid1Level1: TcxGridLevel GridView = Tv1 diff --git a/F06染色成品仓库/U_DyeClothInList.pas b/F06染色成品仓库/U_DyeClothInList.pas index a50af33..96921af 100644 --- a/F06染色成品仓库/U_DyeClothInList.pas +++ b/F06染色成品仓库/U_DyeClothInList.pas @@ -80,6 +80,7 @@ type ToolButton1: TToolButton; N1: TMenuItem; N2: TMenuItem; + Tv1finishDescription: TcxGridDBColumn; procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure FormCreate(Sender: TObject); procedure TBRafreshClick(Sender: TObject); @@ -105,6 +106,7 @@ type procedure N1Click(Sender: TObject); procedure N2Click(Sender: TObject); procedure CustNameKeyPress(Sender: TObject; var Key: Char); + procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); private CurrentPage, RecordsNumber: Integer; lstCust: TStringList; @@ -147,6 +149,16 @@ begin FWorkshop := trim(Self.fParameters3); end; +procedure TfrmDyeClothInList.FormKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); +begin + if Key = VK_ESCAPE then // VK_ESCAPE ESC ij + begin + Key := 0; // ֹ + Close; // ModalResult := mrCancel; + end; +end; + procedure TfrmDyeClothInList.InitGrid(); var WSql: string; @@ -249,6 +261,7 @@ begin RecordsNumber := 500; InitGrid(); SetStatus(); + KeyPreview := True; // ȷԤ end; procedure TfrmDyeClothInList.TBExportClick(Sender: TObject); @@ -349,6 +362,15 @@ begin begin raise Exception.Create(pchar(trim(ADOQueryCmd.FieldByName('ShowMsg').AsString))); end; + + with ADOQueryCmd do + begin + Close; + Sql.Clear; + Sql.Add(' update Dye_Cloth_Stock set StkExists =0 where StkMeter =0 and StkPiece =0 '); + ExecSQL; + end; + with ADOQueryCmd do begin Close; diff --git a/F06染色成品仓库/U_DyeClothInTotalList.dfm b/F06染色成品仓库/U_DyeClothInTotalList.dfm index c842953..339e69a 100644 --- a/F06染色成品仓库/U_DyeClothInTotalList.dfm +++ b/F06染色成品仓库/U_DyeClothInTotalList.dfm @@ -7,6 +7,7 @@ inherited frmDyeClothInTotalList: TfrmDyeClothInTotalList FormStyle = fsMDIChild Position = poScreenCenter Visible = True + OnKeyDown = FormKeyDown ExplicitWidth = 1556 ExplicitHeight = 639 PixelsPerInch = 96 diff --git a/F06染色成品仓库/U_DyeClothInTotalList.pas b/F06染色成品仓库/U_DyeClothInTotalList.pas index 9ae052d..b74254d 100644 --- a/F06染色成品仓库/U_DyeClothInTotalList.pas +++ b/F06染色成品仓库/U_DyeClothInTotalList.pas @@ -85,6 +85,7 @@ type procedure ToolButton4Click(Sender: TObject); procedure PM11Click(Sender: TObject); procedure N1Click(Sender: TObject); + procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); private CurrentPage, RecordsNumber: Integer; lstCust: TStringList; @@ -124,6 +125,16 @@ begin FWorkshop := trim(Self.fParameters3); end; +procedure TfrmDyeClothInTotalList.FormKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); +begin + if Key = VK_ESCAPE then // VK_ESCAPE ESC ij + begin + Key := 0; // ֹ + Close; // ModalResult := mrCancel; + end; +end; + procedure TfrmDyeClothInTotalList.InitGrid(); var WSql: string; @@ -214,6 +225,7 @@ begin canshu1 := Trim(Self.fParameters1); SetStatus(); + KeyPreview := True; // ȷԤ end; procedure TfrmDyeClothInTotalList.TBExportClick(Sender: TObject); diff --git a/F06染色成品仓库/U_DyeClothOutList.dfm b/F06染色成品仓库/U_DyeClothOutList.dfm index e46b73c..4e2f8ee 100644 --- a/F06染色成品仓库/U_DyeClothOutList.dfm +++ b/F06染色成品仓库/U_DyeClothOutList.dfm @@ -7,6 +7,7 @@ inherited frmDyeClothOutList: TfrmDyeClothOutList FormStyle = fsMDIChild Position = poScreenCenter Visible = True + OnKeyDown = FormKeyDown ExplicitWidth = 1556 ExplicitHeight = 639 PixelsPerInch = 96 @@ -63,6 +64,7 @@ inherited frmDyeClothOutList: TfrmDyeClothOutList AutoSize = True Caption = #21024#38500 ImageIndex = 5 + Visible = False OnClick = TBDelClick end object TBRKCX: TToolButton @@ -343,7 +345,6 @@ inherited frmDyeClothOutList: TfrmDyeClothOutList AutoSize = True BorderStyle = bsSingle TabOrder = 2 - ExplicitTop = 99 DesignSize = ( 1536 23) @@ -452,7 +453,6 @@ inherited frmDyeClothOutList: TfrmDyeClothOutList ParentFont = False PopupMenu = PM_1 TabOrder = 3 - ExplicitTop = 131 object Tv1: TcxGridDBTableView Navigator.Buttons.CustomButtons = <> ScrollbarAnnotations.CustomAnnotations = <> @@ -509,6 +509,10 @@ inherited frmDyeClothOutList: TfrmDyeClothOutList end item Kind = skSum + end + item + Kind = skSum + Column = Tv1Piece end> DataController.Summary.SummaryGroups = <> OptionsCustomize.ColumnFiltering = False @@ -640,6 +644,13 @@ inherited frmDyeClothOutList: TfrmDyeClothOutList Options.Editing = False Width = 66 end + object Tv1finishDescription: TcxGridDBColumn + Caption = #21518#25972#29702#25551#36848 + DataBinding.FieldName = 'finishDescription' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 99 + end end object cxGrid1Level1: TcxGridLevel GridView = Tv1 diff --git a/F06染色成品仓库/U_DyeClothOutList.pas b/F06染色成品仓库/U_DyeClothOutList.pas index b8284f7..eff8771 100644 --- a/F06染色成品仓库/U_DyeClothOutList.pas +++ b/F06染色成品仓库/U_DyeClothOutList.pas @@ -81,6 +81,7 @@ type Tv1Piece: TcxGridDBColumn; TbEdit: TToolButton; TbDel: TToolButton; + Tv1finishDescription: TcxGridDBColumn; procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure FormCreate(Sender: TObject); procedure TBRafreshClick(Sender: TObject); @@ -109,6 +110,7 @@ type procedure TbOutClick(Sender: TObject); procedure TbEditClick(Sender: TObject); procedure TbDelClick(Sender: TObject); + procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); private CurrentPage, RecordsNumber: Integer; lstCust: TStringList; @@ -150,6 +152,16 @@ begin FWorkshop := trim(Self.fParameters3); end; +procedure TfrmDyeClothOutList.FormKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); +begin + if Key = VK_ESCAPE then // VK_ESCAPE ESC ij + begin + Key := 0; // ֹ + Close; // ModalResult := mrCancel; + end; +end; + procedure TfrmDyeClothOutList.InitGrid(); var WSql: string; @@ -314,6 +326,7 @@ begin FWorkshop := self.fParameters3; InitGrid(); SetStatus(); + KeyPreview := True; // ȷԤ end; procedure TfrmDyeClothOutList.TBExportClick(Sender: TObject); @@ -430,7 +443,7 @@ begin begin Close; Sql.Clear; - Sql.Add('exec P_Dye_Cloth_ReOut '); + Sql.Add('exec P_Dye_Cloth_ReOut_cai '); Sql.Add('@StkIds=' + quotedstr(trim(MStkIds))); Sql.Add(',@IOIDS=' + quotedstr(trim(MIOIDS))); Sql.Add(',@FillId=' + Quotedstr(DCode)); diff --git a/F06染色成品仓库/U_DyeClothOutPut.dfm b/F06染色成品仓库/U_DyeClothOutPut.dfm index a256b8e..139013e 100644 --- a/F06染色成品仓库/U_DyeClothOutPut.dfm +++ b/F06染色成品仓库/U_DyeClothOutPut.dfm @@ -10,6 +10,7 @@ inherited frmDyeClothOutPut: TfrmDyeClothOutPut Font.Name = #23435#20307 Position = poMainFormCenter OnClose = FormClose + OnKeyDown = FormKeyDown ExplicitWidth = 1422 ExplicitHeight = 585 PixelsPerInch = 96 @@ -36,7 +37,6 @@ inherited frmDyeClothOutPut: TfrmDyeClothOutPut ParentFont = False ShowCaptions = True TabOrder = 0 - ExplicitTop = -6 object TBSave: TToolButton Left = 0 Top = 0 @@ -154,11 +154,12 @@ inherited frmDyeClothOutPut: TfrmDyeClothOutPut DataBinding.FieldName = 'ioTime' DataBinding.IsNullValueType = True PropertiesClassName = 'TcxDateEditProperties' + Properties.Kind = ckDateTime Properties.SaveTime = False Properties.ShowTime = False HeaderAlignmentHorz = taCenter Options.Editing = False - Width = 93 + Width = 101 end object v1Column4: TcxGridDBColumn Tag = 2 diff --git a/F06染色成品仓库/U_DyeClothOutPut.pas b/F06染色成品仓库/U_DyeClothOutPut.pas index 0bbbbba..8d06f3d 100644 --- a/F06染色成品仓库/U_DyeClothOutPut.pas +++ b/F06染色成品仓库/U_DyeClothOutPut.pas @@ -50,6 +50,7 @@ type procedure ToolButton1Click(Sender: TObject); procedure Tv1Column2PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure v1Column13PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); private { Private declarations } function SaveCKData(): Boolean; @@ -92,7 +93,7 @@ begin with Self.CDS_Sub do begin Append; - FieldByName('IOTime').Value := Trim(FormatDateTime('yyyy-MM-dd', Now)); + FieldByName('IOTime').Value := Trim(FormatDateTime('yyyy-MM-dd hh:mm:ss',SGetServerDateTime(ADOQueryCmd))); FieldByName('STKID').Value := frmDyeClothStkSel.CDS_Main.fieldbyname('BCIOID').Value; FieldByName('IOType').Value := 'ӹ'; FieldByName('IONO').Value := frmDyeClothStkSel.CDS_Main.fieldbyname('OrderNo').Value; @@ -217,7 +218,6 @@ begin Open; end; - if ADOQueryTemp.FieldByName('StkMeter').Value < 0 then raise Exception.Create('ܱ棡'); @@ -247,6 +247,16 @@ begin Close; end; +procedure TfrmDyeClothOutPut.FormKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); +begin + if Key = VK_ESCAPE then // VK_ESCAPE ESC ij + begin + Key := 0; // ֹ + Close; // ModalResult := mrCancel; + end; +end; + procedure TfrmDyeClothOutPut.FormShow(Sender: TObject); var fsj: string; @@ -264,6 +274,7 @@ begin end; SCreateCDS(ADOQueryTemp, CDS_Sub); SInitCDSData(ADOQueryTemp, CDS_Sub); + KeyPreview := True; // ȷԤ // fsj:='select name=CJName ,Code=null from CheJian'; // SInitCxGridComboBoxBySql(ADOQueryTemp,v1CheJian,fsj,0,True,''); end; @@ -305,6 +316,8 @@ end; procedure TfrmDyeClothOutPut.TBSaveClick(Sender: TObject); begin + + if CDS_Sub.IsEmpty then Exit; if CDS_Sub.Locate('IOTime', null, []) = True then @@ -329,15 +342,26 @@ begin Exit; end; - if CDS_Sub.Locate('Meter', 0, []) = True then +// if CDS_Sub.Locate('Meter', 0, []) = True then +// begin +// Application.MessageBox('Ϊ0!', 'ʾ', 0); +// Exit; +// end; +// if CDS_Sub.Locate('Piece', 0, []) = True then +// begin +// Application.MessageBox('ƥΪ0!', 'ʾ', 0); +// Exit; +// end; + + CDS_Sub.First; + while not CDS_Sub.Eof do begin - Application.MessageBox('Ϊ0!', 'ʾ', 0); - Exit; - end; - if CDS_Sub.Locate('Piece', 0, []) = True then - begin - Application.MessageBox('ƥΪ0!', 'ʾ', 0); - Exit; + if (CDS_Sub.FieldByName('Meter').AsFloat = 0) and (CDS_Sub.FieldByName('Piece').AsFloat = 0) then + begin + Application.MessageBox('ƥܶΪ0!', 'ʾ', 0); + Exit; + end; + CDS_Sub.Next; end; if CDS_Sub.Locate('IONO', null, []) = True then diff --git a/F06染色成品仓库/U_DyeClothOutTotalList.dfm b/F06染色成品仓库/U_DyeClothOutTotalList.dfm index 174e713..b707640 100644 --- a/F06染色成品仓库/U_DyeClothOutTotalList.dfm +++ b/F06染色成品仓库/U_DyeClothOutTotalList.dfm @@ -7,6 +7,7 @@ inherited frmDyeClothOutTotalList: TfrmDyeClothOutTotalList FormStyle = fsMDIChild Position = poScreenCenter Visible = True + OnKeyDown = FormKeyDown ExplicitWidth = 1556 ExplicitHeight = 639 PixelsPerInch = 96 @@ -77,7 +78,6 @@ inherited frmDyeClothOutTotalList: TfrmDyeClothOutTotalList Color = clWhite ParentBackground = False TabOrder = 1 - ExplicitTop = 44 object Label2: TLabel Left = 70 Top = 36 diff --git a/F06染色成品仓库/U_DyeClothOutTotalList.pas b/F06染色成品仓库/U_DyeClothOutTotalList.pas index 4a23852..0d9456c 100644 --- a/F06染色成品仓库/U_DyeClothOutTotalList.pas +++ b/F06染色成品仓库/U_DyeClothOutTotalList.pas @@ -85,6 +85,7 @@ type procedure ToolButton4Click(Sender: TObject); procedure PM11Click(Sender: TObject); procedure N1Click(Sender: TObject); + procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); private CurrentPage, RecordsNumber: Integer; lstCust: TStringList; @@ -124,6 +125,16 @@ begin FWorkshop := trim(Self.fParameters3); end; +procedure TfrmDyeClothOutTotalList.FormKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); +begin + if Key = VK_ESCAPE then // VK_ESCAPE ESC ij + begin + Key := 0; // ֹ + Close; // ModalResult := mrCancel; + end; +end; + procedure TfrmDyeClothOutTotalList.InitGrid(); var WSql: string; @@ -214,6 +225,7 @@ begin canshu1 := Trim(Self.fParameters1); SetStatus(); + KeyPreview := True; // ȷԤ end; procedure TfrmDyeClothOutTotalList.TBExportClick(Sender: TObject); diff --git a/F06染色成品仓库/U_DyeClothStkList.dfm b/F06染色成品仓库/U_DyeClothStkList.dfm index 587b65d..2137099 100644 --- a/F06染色成品仓库/U_DyeClothStkList.dfm +++ b/F06染色成品仓库/U_DyeClothStkList.dfm @@ -7,6 +7,7 @@ inherited frmDyeClothStkList: TfrmDyeClothStkList FormStyle = fsMDIChild Position = poScreenCenter Visible = True + OnKeyDown = FormKeyDown ExplicitWidth = 1556 ExplicitHeight = 639 PixelsPerInch = 96 @@ -86,7 +87,6 @@ inherited frmDyeClothStkList: TfrmDyeClothStkList Color = clWhite ParentBackground = False TabOrder = 1 - ExplicitTop = 36 object Label2: TLabel Left = 70 Top = 36 @@ -302,7 +302,6 @@ inherited frmDyeClothStkList: TfrmDyeClothStkList AutoSize = True BorderStyle = bsSingle TabOrder = 2 - ExplicitTop = 99 DesignSize = ( 1536 23) @@ -403,9 +402,8 @@ inherited frmDyeClothStkList: TfrmDyeClothStkList Height = 468 Align = alClient TabOrder = 3 - Properties.ActivePage = cxTabSheet1 + Properties.ActivePage = cxTabSheet2 Properties.CustomButtons.Buttons = <> - ExplicitTop = 133 ClientRectBottom = 466 ClientRectLeft = 2 ClientRectRight = 1538 @@ -413,6 +411,10 @@ inherited frmDyeClothStkList: TfrmDyeClothStkList object cxTabSheet1: TcxTabSheet Caption = #27719#24635 ImageIndex = 0 + ExplicitLeft = 0 + ExplicitTop = 0 + ExplicitWidth = 0 + ExplicitHeight = 0 object cxGrid1: TcxGrid Left = 0 Top = 0 @@ -578,6 +580,13 @@ inherited frmDyeClothStkList: TfrmDyeClothStkList Options.Editing = False Width = 66 end + object Tv1Column1: TcxGridDBColumn + Caption = #21518#25972#29702#25551#36848 + DataBinding.FieldName = 'finishDescription' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 80 + end end object cxGrid1Level1: TcxGridLevel GridView = Tv1 @@ -600,10 +609,7 @@ inherited frmDyeClothStkList: TfrmDyeClothStkList Font.Name = #23435#20307 Font.Style = [] ParentFont = False - PopupMenu = PM_1 TabOrder = 0 - ExplicitLeft = -32 - ExplicitTop = -3 object Tv2: TcxGridDBTableView Navigator.Buttons.CustomButtons = <> ScrollbarAnnotations.CustomAnnotations = <> @@ -785,6 +791,13 @@ inherited frmDyeClothStkList: TfrmDyeClothStkList Options.Editing = False Width = 66 end + object Tv2finishDescription: TcxGridDBColumn + Caption = #21518#25972#29702#25551#36848 + DataBinding.FieldName = 'finishDescription' + DataBinding.IsNullValueType = True + HeaderAlignmentHorz = taCenter + Width = 80 + end end object cxGridLevel1: TcxGridLevel GridView = Tv2 @@ -853,6 +866,10 @@ inherited frmDyeClothStkList: TfrmDyeClothStkList Caption = #20840#24323 OnClick = PM11Click end + object N2: TMenuItem + Caption = #22797#21046 + OnClick = N2Click + end end object GPM2: TcxGridPopupMenu Grid = cxGrid2 diff --git a/F06染色成品仓库/U_DyeClothStkList.pas b/F06染色成品仓库/U_DyeClothStkList.pas index 7910951..ba27209 100644 --- a/F06染色成品仓库/U_DyeClothStkList.pas +++ b/F06染色成品仓库/U_DyeClothStkList.pas @@ -93,6 +93,9 @@ type CDS_2: TClientDataSet; DS_2: TDataSource; Tv2Column1: TcxGridDBColumn; + N2: TMenuItem; + Tv2finishDescription: TcxGridDBColumn; + Tv1Column1: TcxGridDBColumn; procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure FormCreate(Sender: TObject); procedure TBRafreshClick(Sender: TObject); @@ -115,6 +118,8 @@ type procedure Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); + procedure N2Click(Sender: TObject); + procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); private CurrentPage, RecordsNumber: Integer; @@ -156,6 +161,16 @@ begin FWorkshop := trim(Self.fParameters3); end; +procedure TfrmDyeClothStkList.FormKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); +begin + if Key = VK_ESCAPE then // VK_ESCAPE ESC ij + begin + Key := 0; // ֹ + Close; // ModalResult := mrCancel; + end; +end; + procedure TfrmDyeClothStkList.InitGrid(); var WSql: string; @@ -270,6 +285,7 @@ begin SetStatus(); v1Column4.Visible := false; v1Column4.Hidden := true; + KeyPreview := True; // ȷԤ end; procedure TfrmDyeClothStkList.TBExportClick(Sender: TObject); @@ -346,6 +362,11 @@ begin SelOKNo(CDS_1, true); end; +procedure TfrmDyeClothStkList.N2Click(Sender: TObject); +begin + Clipboard.SetTextBuf(PChar(Trim(CDS_1.fieldbyname(TV1.Controller.FocusedColumn.DataBinding.FilterFieldName).AsString))); +end; + procedure TfrmDyeClothStkList.ToolButton2Click(Sender: TObject); var WSql: string; diff --git a/F06染色成品仓库/U_DyeClothStkSel.dfm b/F06染色成品仓库/U_DyeClothStkSel.dfm index cb93403..a211cee 100644 --- a/F06染色成品仓库/U_DyeClothStkSel.dfm +++ b/F06染色成品仓库/U_DyeClothStkSel.dfm @@ -10,6 +10,7 @@ inherited frmDyeClothStkSel: TfrmDyeClothStkSel Font.Name = #23435#20307 Position = poMainFormCenter OnClose = FormClose + OnKeyDown = FormKeyDown ExplicitWidth = 1181 ExplicitHeight = 589 PixelsPerInch = 96 @@ -131,7 +132,6 @@ inherited frmDyeClothStkSel: TfrmDyeClothStkSel Align = alClient PopupMenu = PopupMenu1 TabOrder = 2 - ExplicitTop = 71 object Tv1: TcxGridDBTableView OnDblClick = Tv1DblClick Navigator.Buttons.CustomButtons = <> diff --git a/F06染色成品仓库/U_DyeClothStkSel.pas b/F06染色成品仓库/U_DyeClothStkSel.pas index dfbbcc5..efa3cd7 100644 --- a/F06染色成品仓库/U_DyeClothStkSel.pas +++ b/F06染色成品仓库/U_DyeClothStkSel.pas @@ -66,6 +66,7 @@ type procedure Tv1DblClick(Sender: TObject); procedure OrderNoKeyPress(Sender: TObject; var Key: Char); procedure C_nameKeyPress(Sender: TObject; var Key: Char); + procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); private procedure InitGrid(); { Private declarations } @@ -90,6 +91,16 @@ begin frmDyeClothStkSel := nil; end; +procedure TfrmDyeClothStkSel.FormKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); +begin + if Key = VK_ESCAPE then // VK_ESCAPE ESC ij + begin + Key := 0; // ֹ + Close; // ModalResult := mrCancel; + end; +end; + procedure TfrmDyeClothStkSel.C_nameKeyPress(Sender: TObject; var Key: Char); begin if Key = #13 then @@ -117,6 +128,7 @@ begin sql.Add(' select A.* '); sql.Add(' from Dye_Cloth_Stock A '); SQL.Add(' where A.StkExists=1 '); + SQL.Add(' and (A.StkMeter>0 or A.StkPiece>0) '); Open; end; SCreateCDS(ADOQueryMain, CDS_Main); @@ -150,6 +162,7 @@ begin inherited; ReadCxGrid(trim(self.Caption), Tv1, 'бѡ'); InitGrid(); + KeyPreview := True; // ȷԤ end; procedure TfrmDyeClothStkSel.TBFindClick(Sender: TObject); diff --git a/F06染色成品仓库/U_DyeClothStkTotalList.dfm b/F06染色成品仓库/U_DyeClothStkTotalList.dfm index a3b538b..947deaa 100644 --- a/F06染色成品仓库/U_DyeClothStkTotalList.dfm +++ b/F06染色成品仓库/U_DyeClothStkTotalList.dfm @@ -7,6 +7,7 @@ inherited frmDyeClothStkTotalList: TfrmDyeClothStkTotalList FormStyle = fsMDIChild Position = poScreenCenter Visible = True + OnKeyDown = FormKeyDown ExplicitWidth = 1556 ExplicitHeight = 639 PixelsPerInch = 96 diff --git a/F06染色成品仓库/U_DyeClothStkTotalList.pas b/F06染色成品仓库/U_DyeClothStkTotalList.pas index bd33132..0dd163f 100644 --- a/F06染色成品仓库/U_DyeClothStkTotalList.pas +++ b/F06染色成品仓库/U_DyeClothStkTotalList.pas @@ -86,6 +86,7 @@ type procedure ToolButton4Click(Sender: TObject); procedure PM11Click(Sender: TObject); procedure N1Click(Sender: TObject); + procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); private CurrentPage, RecordsNumber: Integer; lstCust: TStringList; @@ -125,6 +126,16 @@ begin FWorkshop := trim(Self.fParameters3); end; +procedure TfrmDyeClothStkTotalList.FormKeyDown(Sender: TObject; var Key: Word; + Shift: TShiftState); +begin + if Key = VK_ESCAPE then // VK_ESCAPE ESC ij + begin + Key := 0; // ֹ + Close; // ModalResult := mrCancel; + end; +end; + procedure TfrmDyeClothStkTotalList.InitGrid(); var WSql: string; @@ -215,6 +226,7 @@ begin canshu1 := Trim(Self.fParameters1); SetStatus(); + KeyPreview := True; // ȷԤ end; procedure TfrmDyeClothStkTotalList.TBExportClick(Sender: TObject); diff --git a/T02贸易汇总仓库/TradeTotalClothStk.dproj.local b/T02贸易汇总仓库/TradeTotalClothStk.dproj.local index 9087e26..e891e5f 100644 --- a/T02贸易汇总仓库/TradeTotalClothStk.dproj.local +++ b/T02贸易汇总仓库/TradeTotalClothStk.dproj.local @@ -1,45 +1,45 @@  - 1899/12/30 00:00:00.000.716,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_ProcessSel.pas - 1899/12/30 00:00:00.000.975,=D:\Dp10Repo\public10\ThreeFun\Fun\U_CompressionFun.pas - 1899/12/30 00:00:00.000.295,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LbaelMapSet.pas - 1899/12/30 00:00:00.000.844,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_AttachmentUpload.pas - 1899/12/30 00:00:00.000.616,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LablePrint.pas=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas - 1899/12/30 00:00:00.000.465,=D:\Dp10Repo\项目代码\RTBasics\T00贸易通用窗体\U_TradeSalesContractSel.pas - 1899/12/30 00:00:00.000.699,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LabelPrint.pas - 1899/12/30 00:00:00.000.092,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_EmployeeSel.pas - 1899/12/30 00:00:00.000.487,D:\Dp10Repo\项目代码\睿特\新DLL初始化(CSH.dll)\U_ZDYHelpSel.pas= - 1899/12/30 00:00:00.000.692,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.dfm=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_ClothInfoSel.dfm - 1899/12/30 00:00:00.000.939,=D:\Dp10Repo\public10\design\U_BaseInput.pas - 1899/12/30 00:00:00.000.493,=D:\Dp10Repo\项目代码\RTBasics\A00通用模板\Unit1.pas - 1899/12/30 00:00:00.000.149,=D:\Dp10Repo\public10\ThreeFun\Form\U_ZDYHelp.pas - 1899/12/30 00:00:00.000.339,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_ClothInfoSel.pas - 1899/12/30 00:00:00.000.135,D:\Dp10Repo\项目代码\睿特\新DLL初始化(CSH.dll)\U_ZDYHelp.pas= 1899/12/30 00:00:00.000.832,=D:\Dp10Repo\public10\design\U_BaseHelp.pas 1899/12/30 00:00:00.000.226,=D:\Dp10Repo\项目代码\RTBasics\T00贸易通用窗体\U_TradePlanSel.pas 1899/12/30 00:00:00.000.048,=D:\Dp10Repo\public10\design\U_BaseList.pas 1899/12/30 00:00:00.000.435,=D:\Dp10Repo\项目代码\RTBasics\T02贸易汇总仓库\U_TradeGreyClothInEdit.pas - 1899/12/30 00:00:00.000.010,D:\Dp10Repo\项目代码\RTBasics\G00贸易通用窗体\U_TradeSalesContractSel.dfm=D:\Dp10Repo\项目代码\RTBasics\G00贸易通用窗体\U_TradePlanSel.dfm - 1899/12/30 00:00:00.000.478,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LabelMapSet.pas - 1899/12/30 00:00:00.000.015,=D:\Dp10Repo\public10\ThreeFun\Fun\U_RTFun.pas - 1899/12/30 00:00:00.000.123,=D:\Dp10Repo\public10\design\U_globalVar.pas + 1899/12/30 00:00:00.000.616,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.dfm=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LablePrint.dfm + 1899/12/30 00:00:00.000.716,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_ProcessSel.pas + 1899/12/30 00:00:00.000.975,=D:\Dp10Repo\public10\ThreeFun\Fun\U_CompressionFun.pas + 1899/12/30 00:00:00.000.295,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LbaelMapSet.pas + 1899/12/30 00:00:00.000.844,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_AttachmentUpload.pas + 1899/12/30 00:00:00.000.135,D:\Dp10Repo\项目代码\睿特\新DLL初始化(CSH.dll)\U_ZDYHelp.pas= + 1899/12/30 00:00:00.000.493,=D:\Dp10Repo\项目代码\RTBasics\A00通用模板\Unit1.pas + 1899/12/30 00:00:00.000.149,=D:\Dp10Repo\public10\ThreeFun\Form\U_ZDYHelp.pas + 1899/12/30 00:00:00.000.339,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_ClothInfoSel.pas + 1899/12/30 00:00:00.000.692,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_ClothInfoSel.pas=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas + 1899/12/30 00:00:00.000.692,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_ClothInfoSel.dfm=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.dfm + 1899/12/30 00:00:00.000.908,D:\Dp10Repo\项目代码\雅尚\A00通用窗体\U_PictureList.pas=D:\Dp10Repo\项目代码\雅尚\A00通用窗体\U_CompanySel.pas + 1899/12/30 00:00:00.000.939,=D:\Dp10Repo\public10\design\U_BaseInput.pas + 1899/12/30 00:00:00.000.010,D:\Dp10Repo\项目代码\RTBasics\G00贸易通用窗体\U_TradePlanSel.dfm=D:\Dp10Repo\项目代码\RTBasics\G00贸易通用窗体\U_TradeSalesContractSel.dfm + 1899/12/30 00:00:00.000.010,D:\Dp10Repo\项目代码\RTBasics\G00贸易通用窗体\U_TradePlanSel.pas=D:\Dp10Repo\项目代码\RTBasics\G00贸易通用窗体\U_TradeSalesContractSel.pas + 1899/12/30 00:00:00.000.487,D:\Dp10Repo\项目代码\睿特\新DLL初始化(CSH.dll)\U_ZDYHelpSel.pas= 1899/12/30 00:00:00.000.086,=D:\Dp10Repo\public10\design\U_cxGridCustomCss.pas - 1899/12/30 00:00:00.000.202,=D:\Dp10Repo\项目代码\RTBasics\G00贸易通用窗体\U_TradeSalesContractSel.pas - 1899/12/30 00:00:00.000.908,D:\Dp10Repo\项目代码\雅尚\A00通用窗体\U_CompanySel.pas=D:\Dp10Repo\项目代码\雅尚\A00通用窗体\U_PictureList.pas - 1899/12/30 00:00:00.000.892,=D:\Dp10Repo\项目代码\雅尚\A00通用窗体\U_CompanySel.pas - 1899/12/30 00:00:00.000.616,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LablePrint.dfm=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.dfm - 1899/12/30 00:00:00.000.010,D:\Dp10Repo\项目代码\RTBasics\G00贸易通用窗体\U_TradeSalesContractSel.pas=D:\Dp10Repo\项目代码\RTBasics\G00贸易通用窗体\U_TradePlanSel.pas 1899/12/30 00:00:00.000.129,=D:\Dp10Repo\项目代码\路尚\T00贸易通用窗体\U_PurchaseContractSel.pas - 1899/12/30 00:00:00.000.692,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_ClothInfoSel.pas - 1899/12/30 00:00:00.000.734,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas - 1899/12/30 00:00:00.000.422,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas - 1899/12/30 00:00:00.000.630,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas - 1899/12/30 00:00:00.000.893,D:\Dp10Repo\项目代码\RTBasics\G02贸易汇总仓库\InformationBase.dproj=D:\Dp10Repo\项目代码\RTBasics\G02贸易汇总仓库\TradeTotalClothStk.dproj 1899/12/30 00:00:00.000.736,D:\Dp10Repo\项目代码\睿特\新DLL初始化(CSH.dll)\U_ModuleNote.pas= 1899/12/30 00:00:00.000.178,=D:\Dp10Repo\public10\design\U_WindowFormdesign.pas + 1899/12/30 00:00:00.000.123,=D:\Dp10Repo\public10\design\U_globalVar.pas + 1899/12/30 00:00:00.000.478,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LabelMapSet.pas + 1899/12/30 00:00:00.000.202,=D:\Dp10Repo\项目代码\RTBasics\G00贸易通用窗体\U_TradeSalesContractSel.pas + 1899/12/30 00:00:00.000.892,=D:\Dp10Repo\项目代码\雅尚\A00通用窗体\U_CompanySel.pas + 1899/12/30 00:00:00.000.015,=D:\Dp10Repo\public10\ThreeFun\Fun\U_RTFun.pas + 1899/12/30 00:00:00.000.908,D:\Dp10Repo\项目代码\雅尚\A00通用窗体\U_PictureList.dfm=D:\Dp10Repo\项目代码\雅尚\A00通用窗体\U_CompanySel.dfm + 1899/12/30 00:00:00.000.630,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas + 1899/12/30 00:00:00.000.465,=D:\Dp10Repo\项目代码\RTBasics\T00贸易通用窗体\U_TradeSalesContractSel.pas + 1899/12/30 00:00:00.000.699,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LabelPrint.pas + 1899/12/30 00:00:00.000.092,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_EmployeeSel.pas + 1899/12/30 00:00:00.000.422,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas 1899/12/30 00:00:00.000.336,=D:\Dp10Repo\项目代码\RTBasics\T02贸易汇总仓库\U_TradeClothOutInspList.pas - 1899/12/30 00:00:00.000.908,D:\Dp10Repo\项目代码\雅尚\A00通用窗体\U_CompanySel.dfm=D:\Dp10Repo\项目代码\雅尚\A00通用窗体\U_PictureList.dfm + 1899/12/30 00:00:00.000.893,D:\Dp10Repo\项目代码\RTBasics\G02贸易汇总仓库\TradeTotalClothStk.dproj=D:\Dp10Repo\项目代码\RTBasics\G02贸易汇总仓库\InformationBase.dproj + 1899/12/30 00:00:00.000.616,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LablePrint.pas + 1899/12/30 00:00:00.000.734,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas diff --git a/T02贸易汇总仓库/TradeTotalClothStk.identcache b/T02贸易汇总仓库/TradeTotalClothStk.identcache index 9dfe35d..13f366b 100644 Binary files a/T02贸易汇总仓库/TradeTotalClothStk.identcache and b/T02贸易汇总仓库/TradeTotalClothStk.identcache differ