增加二维码

This commit is contained in:
DESKTOP-E401PHE\Administrator 2025-09-24 13:58:45 +08:00
parent c446a0860f
commit 60e1f6aa5a
8 changed files with 1539 additions and 869 deletions

View File

@ -146,7 +146,8 @@ object frmCKProductBCPInList: TfrmCKProductBCPInList
#26816#39564#30721#21333'-10' #26816#39564#30721#21333'-10'
'PD'#33457#22411#31859#25968'+'#30721#25968 'PD'#33457#22411#31859#25968'+'#30721#25968
'PD'#31859#25968'+'#30721#25968 'PD'#31859#25968'+'#30721#25968
#26816#39564#30721#21333'('#28151#33394#25171#21253')') #26816#39564#30721#21333'('#28151#33394#25171#21253')'
#20108#32500#30721#30721#21333)
end end
object TBClose: TToolButton object TBClose: TToolButton
Left = 801 Left = 801

View File

@ -1089,7 +1089,7 @@ begin
end; end;
if trim(ComboBox1.Text) = 'PD花型米数+码数' then if trim(ComboBox1.Text) = 'PD花型米数+码数' then
begin begin
with ADOQueryTemp do with ADOQueryTemp do
begin begin
Close; Close;
sql.Clear; sql.Clear;
@ -1113,7 +1113,19 @@ begin
SCreateCDS20(ADOQueryTemp, CDS_HZ); SCreateCDS20(ADOQueryTemp, CDS_HZ);
SInitCDSData20(ADOQueryTemp, CDS_HZ); SInitCDSData20(ADOQueryTemp, CDS_HZ);
end; end;
if trim(ComboBox1.Text) = '¶þάÂëÂëµ¥' then
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.add('exec P_Print_CKMDHAEIL ');
sql.add('@DName=' + quotedstr(Trim(DCode)));
Open;
end;
SCreateCDS20(ADOQueryTemp, CDS_HZ);
SInitCDSData20(ADOQueryTemp, CDS_HZ);
end;
with ADOQueryTemp do with ADOQueryTemp do
begin begin
Close; Close;

View File

@ -138,7 +138,8 @@ object frmCKProductBCPOutList: TfrmCKProductBCPOutList
#26816#39564#30721#21333'-10' #26816#39564#30721#21333'-10'
'PD'#33457#22411#31859#25968'+'#30721#25968 'PD'#33457#22411#31859#25968'+'#30721#25968
'PD'#31859#25968'+'#30721#25968 'PD'#31859#25968'+'#30721#25968
#26816#39564#30721#21333'('#28151#33394#25171#21253')') #26816#39564#30721#21333'('#28151#33394#25171#21253')'
#20108#32500#30721#30721#21333)
end end
object ToolButton2: TToolButton object ToolButton2: TToolButton
Left = 673 Left = 673

View File

@ -855,7 +855,7 @@ begin
sql.add(',@CNum=''8'' '); sql.add(',@CNum=''8'' ');
Open; Open;
end; end;
SCreateCDS20(ADOQueryTemp, CDS_HZ); SCreateCDS20(ADOQueryTemp, CDS_HZ);
SInitCDSData20(ADOQueryTemp, CDS_HZ); SInitCDSData20(ADOQueryTemp, CDS_HZ);
end; end;
if trim(ComboBox1.Text) = '쇱駱쯤데(살<>댔관)' then if trim(ComboBox1.Text) = '쇱駱쯤데(살<>댔관)' then
@ -1088,7 +1088,20 @@ begin
sql.add('@DName=' + quotedstr(Trim(DCode))); sql.add('@DName=' + quotedstr(Trim(DCode)));
Open; Open;
end; end;
SCreateCDS20(ADOQueryTemp, CDS_HZ); SCreateCDS20(ADOQueryTemp, CDS_HZ);
SInitCDSData20(ADOQueryTemp, CDS_HZ);
end;
if trim(ComboBox1.Text) = '¶þάÂëÂëµ¥' then
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.add('exec P_Print_CKMDHAEIL ');
sql.add('@DName=' + quotedstr(Trim(DCode)));
Open;
end;
SCreateCDS20(ADOQueryTemp, CDS_HZ);
SInitCDSData20(ADOQueryTemp, CDS_HZ); SInitCDSData20(ADOQueryTemp, CDS_HZ);
end; end;
with ADOQueryTemp do with ADOQueryTemp do

View File

@ -1,6 +1,6 @@
object frmJYOrderCDOne: TfrmJYOrderCDOne object frmJYOrderCDOne: TfrmJYOrderCDOne
Left = 81 Left = 365
Top = 200 Top = 219
Width = 1382 Width = 1382
Height = 770 Height = 770
Caption = #26816#39564#25253#21578 Caption = #26816#39564#25253#21578
@ -21,7 +21,7 @@ object frmJYOrderCDOne: TfrmJYOrderCDOne
Left = 0 Left = 0
Top = 0 Top = 0
Width = 1366 Width = 1366
Height = 62 Height = 92
AutoSize = True AutoSize = True
ButtonHeight = 30 ButtonHeight = 30
ButtonWidth = 131 ButtonWidth = 131
@ -96,12 +96,13 @@ object frmJYOrderCDOne: TfrmJYOrderCDOne
AutoSize = True AutoSize = True
Caption = #26816#21518#22238#20462 Caption = #26816#21518#22238#20462
ImageIndex = 54 ImageIndex = 54
Wrap = True
Visible = False Visible = False
OnClick = TBAftChkHXClick OnClick = TBAftChkHXClick
end end
object ToolButton12: TToolButton object ToolButton12: TToolButton
Left = 465 Left = 0
Top = 0 Top = 30
AutoSize = True AutoSize = True
Caption = #25209#37327#20462#25913#25968#37327#21333#20301 Caption = #25209#37327#20462#25913#25968#37327#21333#20301
ImageIndex = 57 ImageIndex = 57
@ -109,8 +110,8 @@ object frmJYOrderCDOne: TfrmJYOrderCDOne
OnClick = ToolButton12Click OnClick = ToolButton12Click
end end
object ToolButton3: TToolButton object ToolButton3: TToolButton
Left = 600 Left = 135
Top = 0 Top = 30
AutoSize = True AutoSize = True
Caption = #25442#31639#31995#25968 Caption = #25442#31639#31995#25968
ImageIndex = 57 ImageIndex = 57
@ -118,25 +119,24 @@ object frmJYOrderCDOne: TfrmJYOrderCDOne
OnClick = ToolButton3Click OnClick = ToolButton3Click
end end
object ToolButton1: TToolButton object ToolButton1: TToolButton
Left = 687 Left = 222
Top = 0 Top = 30
AutoSize = True AutoSize = True
Caption = #25171#21360#21367#26631#31614 Caption = #25171#21360#21367#26631#31614
ImageIndex = 96 ImageIndex = 96
OnClick = ToolButton1Click OnClick = ToolButton1Click
end end
object ToolButton9: TToolButton object ToolButton9: TToolButton
Left = 786 Left = 321
Top = 0 Top = 30
AutoSize = True AutoSize = True
Caption = #25195#25551#25171#21360#21367#26631#31614 Caption = #25195#25551#25171#21360#21367#26631#31614
ImageIndex = 96 ImageIndex = 96
Wrap = True
Visible = False Visible = False
OnClick = ToolButton9Click OnClick = ToolButton9Click
end end
object ToolButton4: TToolButton object ToolButton4: TToolButton
Left = 0 Left = 444
Top = 30 Top = 30
AutoSize = True AutoSize = True
Caption = #24067#21305#25171#21253 Caption = #24067#21305#25171#21253
@ -145,7 +145,7 @@ object frmJYOrderCDOne: TfrmJYOrderCDOne
OnClick = ToolButton4Click OnClick = ToolButton4Click
end end
object ToolButton6: TToolButton object ToolButton6: TToolButton
Left = 87 Left = 531
Top = 30 Top = 30
AutoSize = True AutoSize = True
Caption = #25764#38144#25171#21253 Caption = #25764#38144#25171#21253
@ -154,17 +154,18 @@ object frmJYOrderCDOne: TfrmJYOrderCDOne
OnClick = ToolButton6Click OnClick = ToolButton6Click
end end
object ToolButton5: TToolButton object ToolButton5: TToolButton
Left = 174 Left = 618
Top = 30 Top = 30
AutoSize = True AutoSize = True
Caption = #25171#21360#21253#26631#31614 Caption = #25171#21360#21253#26631#31614
ImageIndex = 96 ImageIndex = 96
Wrap = True
Visible = False Visible = False
OnClick = ToolButton5Click OnClick = ToolButton5Click
end end
object ToolButton7: TToolButton object ToolButton7: TToolButton
Left = 273 Left = 0
Top = 30 Top = 60
AutoSize = True AutoSize = True
Caption = #24067#21305#25442#32568 Caption = #24067#21305#25442#32568
ImageIndex = 57 ImageIndex = 57
@ -172,8 +173,8 @@ object frmJYOrderCDOne: TfrmJYOrderCDOne
OnClick = ToolButton7Click OnClick = ToolButton7Click
end end
object ToolButton8: TToolButton object ToolButton8: TToolButton
Left = 360 Left = 87
Top = 30 Top = 60
AutoSize = True AutoSize = True
Caption = #26816#39564#25253#21578 Caption = #26816#39564#25253#21578
ImageIndex = 12 ImageIndex = 12
@ -181,8 +182,8 @@ object frmJYOrderCDOne: TfrmJYOrderCDOne
OnClick = ToolButton8Click OnClick = ToolButton8Click
end end
object ToolButton10: TToolButton object ToolButton10: TToolButton
Left = 447 Left = 174
Top = 30 Top = 60
AutoSize = True AutoSize = True
Caption = #26816#39564#27719#24635#25253#21578 Caption = #26816#39564#27719#24635#25253#21578
ImageIndex = 12 ImageIndex = 12
@ -190,8 +191,8 @@ object frmJYOrderCDOne: TfrmJYOrderCDOne
OnClick = ToolButton10Click OnClick = ToolButton10Click
end end
object ToolButton2: TToolButton object ToolButton2: TToolButton
Left = 558 Left = 285
Top = 30 Top = 60
AutoSize = True AutoSize = True
Caption = #26816#39564#25253#21578 Caption = #26816#39564#25253#21578
ImageIndex = 12 ImageIndex = 12
@ -199,8 +200,8 @@ object frmJYOrderCDOne: TfrmJYOrderCDOne
OnClick = ToolButton2Click OnClick = ToolButton2Click
end end
object ToolButton11: TToolButton object ToolButton11: TToolButton
Left = 645 Left = 372
Top = 30 Top = 60
AutoSize = True AutoSize = True
Caption = #25171#21253#30721#21333 Caption = #25171#21253#30721#21333
ImageIndex = 12 ImageIndex = 12
@ -208,17 +209,25 @@ object frmJYOrderCDOne: TfrmJYOrderCDOne
OnClick = ToolButton11Click OnClick = ToolButton11Click
end end
object TBClose: TToolButton object TBClose: TToolButton
Left = 732 Left = 459
Top = 30 Top = 60
AutoSize = True AutoSize = True
Caption = #20851#38381 Caption = #20851#38381
ImageIndex = 55 ImageIndex = 55
OnClick = TBCloseClick OnClick = TBCloseClick
end end
object ToolButton13: TToolButton
Left = 522
Top = 60
AutoSize = True
Caption = #25171#21360#26816#39564#25253#21578
ImageIndex = 12
OnClick = ToolButton13Click
end
end end
object Panel1: TPanel object Panel1: TPanel
Left = 0 Left = 0
Top = 62 Top = 92
Width = 1366 Width = 1366
Height = 87 Height = 87
Align = alTop Align = alTop
@ -875,7 +884,7 @@ object frmJYOrderCDOne: TfrmJYOrderCDOne
end end
object cxGrid1: TcxGrid object cxGrid1: TcxGrid
Left = 0 Left = 0
Top = 149 Top = 179
Width = 1366 Width = 1366
Height = 466 Height = 466
Align = alTop Align = alTop
@ -1241,6 +1250,12 @@ object frmJYOrderCDOne: TfrmJYOrderCDOne
HeaderAlignmentHorz = taCenter HeaderAlignmentHorz = taCenter
Width = 70 Width = 70
end end
object Tv1Column4: TcxGridDBColumn
Caption = #23458#25143
DataBinding.FieldName = 'CustomerNoName'
HeaderAlignmentHorz = taCenter
Width = 60
end
end end
object cxGrid1Level1: TcxGridLevel object cxGrid1Level1: TcxGridLevel
GridView = Tv1 GridView = Tv1
@ -1602,6 +1617,115 @@ object frmJYOrderCDOne: TfrmJYOrderCDOne
GridView = TV4 GridView = TV4
end end
end end
object Panel8: TPanel
Left = 439
Top = 155
Width = 231
Height = 216
TabOrder = 9
Visible = False
object Label30: TLabel
Left = 48
Top = 88
Width = 6
Height = 12
end
object Panel9: TPanel
Left = 1
Top = 1
Width = 229
Height = 23
Align = alTop
Alignment = taLeftJustify
BevelOuter = bvNone
Caption = #25253#34920#21517#31216
Color = clSkyBlue
Font.Charset = GB2312_CHARSET
Font.Color = clWindowText
Font.Height = -19
Font.Name = #23435#20307
Font.Style = [fsBold]
ParentFont = False
TabOrder = 0
OnMouseMove = Panel10MouseMove
object Image1: TImage
Left = 206
Top = 3
Width = 22
Height = 16
ParentShowHint = False
Picture.Data = {
07544269746D617076040000424D760400000000000036000000280000001500
0000110000000100180000000000400400000000000000000000000000000000
0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FF00FFFFFFFFFFFFF0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6
F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6F0CAA6FFFFFFFFFF
FF00FFFFFFFFFFFF404040404040404040404040404040404040404040404040
404040404040404040404040404040404040404040404040F0CAA6FFFFFFFFFF
FF00FFFFFFFFFFFFFFFFFF808080808080808080808080808080808080808080
808080808080808080808080808080808080808080404040F0CAA6FFFFFFFFFF
FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4
C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF
FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4
C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF
FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4
C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF
FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4
C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF
FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000
000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF
FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000
000000C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF
FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4000000000000
000000000000C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF
FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4000000000000C8D0D4
C8D0D4000000000000C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF
FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4000000000000C8D0D4C8D0D4
C8D0D4C8D0D4000000000000C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF
FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4
C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF
FF00FFFFFFFFFFFFFFFFFFC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4
C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4808080404040F0CAA6FFFFFFFFFF
FF00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FF00}
ShowHint = True
Transparent = True
OnClick = Image1Click
end
end
object Button11: TButton
Left = 83
Top = 180
Width = 75
Height = 25
Caption = #30830#23450
TabOrder = 2
OnClick = Button11Click
end
object RadioGroup2: TRadioGroup
Left = 56
Top = 24
Width = 129
Height = 145
ItemIndex = 0
Items.Strings = (
#26816#39564#25253#21578)
TabOrder = 1
end
end
object cxImage1: TcxImage
Left = 259
Top = 474
AutoSize = True
TabOrder = 10
Visible = False
Height = 113
Width = 169
end
object cxGridPopupMenu1: TcxGridPopupMenu object cxGridPopupMenu1: TcxGridPopupMenu
Grid = cxGrid1 Grid = cxGrid1
PopupMenus = <> PopupMenus = <>
@ -1799,4 +1923,10 @@ object frmJYOrderCDOne: TfrmJYOrderCDOne
Left = 96 Left = 96
Top = 173 Top = 173
end end
object ADOQuery2: TADOQuery
Connection = DataLink_TradeManage.ADOLink
Parameters = <>
Left = 147
Top = 443
end
end end

View File

@ -4,15 +4,67 @@ interface
uses uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData, StrUtils, Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles,
cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB,
cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, cxControls, cxDBData, ADODB, cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel,
cxGridCustomView, cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses, cxControls, cxGridCustomView, cxGridCustomTableView,
cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter, RM_Dataset, RM_System, cxGridTableView, cxGridDBTableView, cxGrid, DBClient, cxCheckBox, cxCalendar,
RM_Common, RM_Class, RM_GridReport, RM_e_Xls, Menus, MovePanel, cxTextEdit, cxSplitter, RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport,
cxContainer, cxCurrencyEdit, U_SMLB, BtnEdit, RM_e_main, RM_e_htm, RM_e_Xls, Menus, MovePanel, cxTextEdit, cxContainer, cxCurrencyEdit, U_SMLB,
RM_e_Graphic, RM_e_Jpeg, RM_e_txt, RM_e_csv, RM_E_llPDF, cxLookAndFeels, BtnEdit, RM_e_main, RM_e_htm, RM_e_Graphic, RM_e_Jpeg, RM_e_txt, RM_e_csv,
cxLookAndFeelPainters, cxNavigator; RM_E_llPDF, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, dxSkinsCore,
dxSkinBlack, dxSkinBlue, dxSkinBlueprint, dxSkinCaramel, dxSkinCoffee,
dxSkinDarkRoom, dxSkinDarkSide, dxSkinDevExpressDarkStyle,
dxSkinDevExpressStyle, dxSkinFoggy, dxSkinGlassOceans, dxSkinHighContrast,
dxSkiniMaginary, dxSkinLilian, dxSkinLiquidSky, dxSkinLondonLiquidSky,
dxSkinMcSkin, dxSkinMetropolis, dxSkinMetropolisDark, dxSkinMoneyTwins,
dxSkinOffice2007Black, dxSkinOffice2007Blue, dxSkinOffice2007Green,
dxSkinOffice2007Pink, dxSkinOffice2007Silver, dxSkinOffice2010Black,
dxSkinOffice2010Blue, dxSkinOffice2010Silver, dxSkinOffice2013DarkGray,
dxSkinOffice2013LightGray, dxSkinOffice2013White, dxSkinPumpkin, dxSkinSeven,
dxSkinSevenClassic, dxSkinSharp, dxSkinSharpPlus, dxSkinSilver,
dxSkinSpringTime, dxSkinStardust, dxSkinSummer2008, dxSkinTheAsphaltWorld,
dxSkinsDefaultPainters, dxSkinValentine, dxSkinVS2010, dxSkinWhiteprint,
dxSkinXmas2008Blue, dxSkinscxPCPainter, cxImage;
type
TZintSymbol = packed record
symbology: Integer;
height: Integer;
whitespace_width: Integer;
border_width: Integer;
output_options: Integer;
fgcolour: array[0..9] of AnsiChar;
bgcolour: array[0..9] of AnsiChar;
outfile: array[0..255] of AnsiChar;
scale: Single;
option_1: Integer;
option_2: Integer;
option_3: Integer;
show_hrt: Integer;
input_mode: Integer;
eci: Integer;
text: array[0..127] of AnsiChar;
rows: Integer;
width: Integer;
primary: array[0..127] of AnsiChar;
encoded_data: array[0..199, 0..142] of AnsiChar;
row_height: array[0..199] of Integer; // Largest symbol is 189 x 189
errtxt: array[0..99] of AnsiChar;
bitmap: PAnsiChar;
bitmap_width: Integer;
bitmap_height: Integer;
bitmap_byte_length: Cardinal;
dot_size: Single;
rendered: Pointer;
debug: Integer;
end;
PZintSymbol = ^TZintSymbol;
const
// Tbarcode 7 codes
BARCODE_QRCODE = 71;
type type
TfrmJYOrderCDOne = class(TForm) TfrmJYOrderCDOne = class(TForm)
@ -194,6 +246,16 @@ type
Tv1Column1: TcxGridDBColumn; Tv1Column1: TcxGridDBColumn;
Tv1Column2: TcxGridDBColumn; Tv1Column2: TcxGridDBColumn;
Tv1Column3: TcxGridDBColumn; Tv1Column3: TcxGridDBColumn;
Tv1Column4: TcxGridDBColumn;
ToolButton13: TToolButton;
Panel8: TPanel;
Label30: TLabel;
Panel9: TPanel;
Image1: TImage;
Button11: TButton;
RadioGroup2: TRadioGroup;
ADOQuery2: TADOQuery;
cxImage1: TcxImage;
procedure FormDestroy(Sender: TObject); procedure FormDestroy(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormCreate(Sender: TObject); procedure FormCreate(Sender: TObject);
@ -244,6 +306,9 @@ type
procedure ToolButton12Click(Sender: TObject); procedure ToolButton12Click(Sender: TObject);
procedure TV4DblClick(Sender: TObject); procedure TV4DblClick(Sender: TObject);
procedure BAONOChange(Sender: TObject); procedure BAONOChange(Sender: TObject);
procedure ToolButton13Click(Sender: TObject);
procedure Button11Click(Sender: TObject);
procedure Image1Click(Sender: TObject);
private private
DQdate: TDateTime; DQdate: TDateTime;
FLeft, FTop: Integer; FLeft, FTop: Integer;
@ -253,12 +318,30 @@ type
function Savedata(): Boolean; function Savedata(): Boolean;
procedure GetCDSData(); procedure GetCDSData();
procedure GetBGData(); procedure GetBGData();
procedure tsewm6(); //获取特殊二维码
{ Private declarations } { Private declarations }
public public
FFInt: Integer; FFInt: Integer;
FDETM6: string;
{ Public declarations } { Public declarations }
end; end;
const
LibName = 'zint.dll';
//struct zint_symbol *ZBarcode_Create(void);
function ZBarcode_Create(): PZintSymbol; cdecl; external LibName;
//void ZBarcode_Delete(struct zint_symbol *symbol);
procedure ZBarcode_Delete(symbol: PZintSymbol); cdecl; external LibName;
//int ZBarcode_Encode_and_Buffer(struct zint_symbol *symbol, unsigned char *input, int length, int rotate_angle);
function ZBarcode_Encode_and_Buffer(symbol: PZintSymbol; input: PAnsiChar; length, rotate_angle: Integer): Integer; cdecl; external LibName;
// create bitmap 这个函数是使用编码后的条码图像数据生成Bitmap文件不属于zint因此不在zint.h头文件中上面的三个在zint.h头文件中。
procedure ZBarcode_To_Bitmap(symbol: PZintSymbol; const ABitmap: TBitmap);
var var
frmJYOrderCDOne: TfrmJYOrderCDOne; frmJYOrderCDOne: TfrmJYOrderCDOne;
@ -269,6 +352,86 @@ uses
U_ZDYHelp, U_ProductOrderListSel; U_ZDYHelp, U_ProductOrderListSel;
{$R *.dfm} {$R *.dfm}
procedure ZBarcode_To_Bitmap(symbol: PZintSymbol; const ABitmap: TBitmap);
var
SrcRGB: PRGBTriple;
Row, RowWidth: Integer;
begin
ABitmap.PixelFormat := pf24bit;
ABitmap.Height := symbol.bitmap_height;
ABitmap.Width := symbol.bitmap_width;
// ABitmap.Height := 80;
// ABitmap.Width := 80;
SrcRGB := Pointer(symbol.bitmap);
RowWidth := symbol.bitmap_width * 3;
for Row := 0 to symbol.bitmap_height - 1 do
begin
CopyMemory(ABitmap.ScanLine[Row], SrcRGB, RowWidth);
Inc(SrcRGB, symbol.bitmap_width);
end;
SetBitmapBits(ABitmap.Handle, symbol.bitmap_width * symbol.bitmap_height * 3, symbol.bitmap);
end;
procedure TfrmJYOrderCDOne.tsewm6();
var
lvData: UTF8String; // 使用UTF8编码的字符串
lvBitMap: TBitmap;
lvSymbol: PZintSymbol;
lvErrorNumber: Integer;
lvErrorText: string;
bitmap: TBitmap;
begin
lvSymbol := ZBarcode_Create();
if lvSymbol = nil then
Exit;
lvBitMap := TBitmap.Create;
try //'010872020901234590RS9999-100R1011234567893112005160'
lvData := UTF8String(FDETM6);
// 条码类型设置为QRCODE
lvSymbol.symbology := BARCODE_QRCODE;
// lvSymbol.option_2 := 1;
//Data Matrix ISO 16022(and HIBC)
// 编码
lvErrorNumber := ZBarcode_Encode_and_Buffer(lvSymbol, PAnsiChar(lvData), Length(lvData), 0);
// 编码成功
if lvErrorNumber = 0 then
begin
// 生成Bitmap图形
ZBarcode_To_Bitmap(lvSymbol, lvBitMap);
// 显示在Image中
cxImage1.Picture.Bitmap.Width := 80;
cxImage1.Picture.Bitmap.Height := 80;
cxImage1.Picture.Bitmap.Canvas.Brush.Color := clWhite;
cxImage1.Picture.Bitmap.Canvas.FillRect(Rect(0, 0, cxImage1.Width, cxImage1.Height));
cxImage1.Picture.Bitmap.Canvas.StretchDraw(Rect(10, 10, cxImage1.Width - 10, cxImage1.Height - 10), lvBitMap);
end
else
begin
cxImage1.Picture.Bitmap.Width := cxImage1.Width;
cxImage1.Picture.Bitmap.Height := cxImage1.Height;
cxImage1.Picture.Bitmap.Canvas.Brush.Color := clWhite;
cxImage1.Picture.Bitmap.Canvas.FillRect(Rect(0, 0, cxImage1.Width, cxImage1.Height));
lvErrorText := string(AnsiString(lvSymbol.errtxt));
ShowMessage('编码时发生错误:' + lvErrorText);
end;
finally
lvBitMap.Free;
lvBitMap := nil;
ZBarcode_Delete(lvSymbol);
end;
bitmap := TBitmap.Create;
try
bitmap.Assign(cxImage1.Picture.Bitmap);
bitmap.SaveToFile(ExtractFilePath(Application.ExeName) + 'image\temp6.bmp');
finally
bitmap.Free;
end;
end;
procedure TfrmJYOrderCDOne.FormDestroy(Sender: TObject); procedure TfrmJYOrderCDOne.FormDestroy(Sender: TObject);
begin begin
@ -430,7 +593,7 @@ begin
begin begin
MJType.ItemIndex := MJType.Items.IndexOf('次品'); MJType.ItemIndex := MJType.Items.IndexOf('次品');
MJType.Enabled := false; MJType.Enabled := false;
ToolButton12.Visible := false;
end; end;
end; end;
@ -620,7 +783,7 @@ end;
procedure TfrmJYOrderCDOne.ToolButton1Click(Sender: TObject); procedure TfrmJYOrderCDOne.ToolButton1Click(Sender: TObject);
var var
fPrintFile: string; fPrintFile: string;
Txt, fImagePath, fImagePath1, fImagePath2, fImagePath3: string; Txt, fImagePath, fImagePath1, fImagePath2, fImagePath3, fImagePath5, fImagePath6, Txt7, fImagePath7: string;
Moudle: THandle; Moudle: THandle;
Makebar: TMakebar; Makebar: TMakebar;
Mixtext: TMixtext; Mixtext: TMixtext;
@ -650,12 +813,12 @@ begin
end; end;
with ADOQueryPrint do with ADOQueryPrint do
begin begin
Close; Close;
SQL.Clear; SQL.Clear;
sql.Add('select QtyUnit=A.MJTypeOther,B.orderNo,B.conNo,B.MPRTCode,GangNo=D.RCgangNO,PRTColorEng=E.Note,B.LBName,B.NLBName '); sql.Add('select QtyUnit=A.MJTypeOther,B.orderNo,B.conNo,B.MPRTCode,GangNo=D.RCgangNO,PRTColorEng=E.Note,B.LBName,B.NLBName ');
sql.Add(',khConNo=(select top 1 khConNo from JYOrderCon_Main X where X.ConNO=B.conNO) '); sql.Add(',khConNo=(select top 1 khConNo from JYOrderCon_Main X where X.ConNO=B.conNO) ');
sql.Add(',MPRTCodeNameEng=ISNULL((select Top 1 F.note from KH_Zdy F where F.zdyname=B.MPRTCodeName and F.Type=''PRTCodeName''),B.MPRTCodeName)'); sql.Add(',MPRTCodeNameEng=ISNULL((select Top 1 F.note from KH_Zdy F where F.zdyname=B.MPRTCodeName and F.Type=''PRTCodeName''),B.MPRTCodeName)');
sql.Add(',B.MPRTCF,B.MPRTMF,B.MPRTKZ,C.SOrddefstr4,B.MPRTCodeName,B.MPRTSpec,B.MPRTKuanNO,C.*,A.* '); sql.Add(',B.MPRTCF,B.MPRTMF,B.MPRTKZ,C.SOrddefstr4,B.MPRTCodeName,B.MPRTCode,B.MPRTSpec,B.MPRTKuanNO,C.*,A.* ');
sql.Add(',Case when A.MJSJKZ*A.MJFK<>0 then Cast(A.MJQty4*1000/A.MJSJKZ/(A.MJFK/100) as int) else 0 end as MQty'); sql.Add(',Case when A.MJSJKZ*A.MJFK<>0 then Cast(A.MJQty4*1000/A.MJSJKZ/(A.MJFK/100) as int) else 0 end as MQty');
sql.Add(' from WFB_MJJY A'); sql.Add(' from WFB_MJJY A');
sql.Add(' inner join JYOrder_Main B On A.Mainid=B.Mainid'); sql.Add(' inner join JYOrder_Main B On A.Mainid=B.Mainid');
@ -728,7 +891,49 @@ begin
application.MessageBox('条形码生成失败!', '提示信息', MB_ICONERROR); application.MessageBox('条形码生成失败!', '提示信息', MB_ICONERROR);
exit; exit;
end; end;
try
Moudle := LoadLibrary('MakeQRBarcode.dll');
@Makebar := GetProcAddress(Moudle, 'Make');
@Mixtext := GetProcAddress(Moudle, 'MixText');
Txt := Trim(ADOQueryPrint.fieldbyname('DETM5').AsString);
fImagePath5 := ExtractFilePath(Application.ExeName) + 'image\temp5.bmp';
if not DirectoryExists(pchar(ExtractFilePath(Application.ExeName) + 'image')) then
CreateDirectory(pchar(ExtractFilePath(Application.ExeName) + 'image'), nil);
if FileExists(fImagePath5) then
DeleteFile(fImagePath5);
Makebar(pchar(Txt), Length(Txt), 3, 3, 0, PChar(fImagePath5), 3);
except
application.MessageBox('条形码生成失败!', '提示信息', MB_ICONERROR);
exit;
end;
try
Moudle := LoadLibrary('MakeQRBarcode.dll');
@Makebar := GetProcAddress(Moudle, 'Make');
@Mixtext := GetProcAddress(Moudle, 'MixText');
Txt7 := Trim(ADOQueryPrint.fieldbyname('DETM7').AsString);
fImagePath7 := ExtractFilePath(Application.ExeName) + 'image\temp5.bmp';
if not DirectoryExists(pchar(ExtractFilePath(Application.ExeName) + 'image')) then
CreateDirectory(pchar(ExtractFilePath(Application.ExeName) + 'image'), nil);
if FileExists(fImagePath7) then
DeleteFile(fImagePath7);
Makebar(pchar(Txt7), Length(Txt7), 3, 3, 0, PChar(fImagePath7), 3);
except
application.MessageBox('条形码生成失败!', '提示信息', MB_ICONERROR);
exit;
end;
try
fImagePath6 := ExtractFilePath(Application.ExeName) + 'image\temp6.bmp';
if not DirectoryExists(pchar(ExtractFilePath(Application.ExeName) + 'image')) then
CreateDirectory(pchar(ExtractFilePath(Application.ExeName) + 'image'), nil);
if FileExists(fImagePath6) then
DeleteFile(fImagePath6);
FDETM6 := Trim(ADOQueryPrint.fieldbyname('DETM6').AsString);
// FDETM6 := 'TECLECL01XXX' + Trim(ADOQueryPrint.fieldbyname('SOrddefstr1').AsString) + ' ' + '#' + Trim(ADOQueryPrint.fieldbyname('PRTHX').AsString) + '-' + RightStr(('10000' + trim(ADOQueryPrint.fieldbyName('MJXH').AsString)), 4) + '-' + Trim(ADOQueryPrint.fieldbyname('SOrddefstr2').AsString);
tsewm6();
except
application.MessageBox('条形码生成失败!', '提示信息', MB_ICONERROR);
exit;
end;
if Trim(ADOQueryPrint.fieldbyname('LbName').AsString) <> '' then if Trim(ADOQueryPrint.fieldbyname('LbName').AsString) <> '' then
fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\' + Trim(ADOQueryPrint.fieldbyname('LbName').AsString) + '.rmf' fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\' + Trim(ADOQueryPrint.fieldbyname('LbName').AsString) + '.rmf'
else else
@ -740,9 +945,12 @@ begin
RMVariables['QRBARCODE1'] := fImagePath1; RMVariables['QRBARCODE1'] := fImagePath1;
RMVariables['QRBARCODE2'] := fImagePath2; RMVariables['QRBARCODE2'] := fImagePath2;
RMVariables['QRBARCODE3'] := fImagePath3; RMVariables['QRBARCODE3'] := fImagePath3;
RMVariables['QRBARCODE5'] := fImagePath5;
RMVariables['QRBARCODE6'] := fImagePath6;
RMVariables['QRBARCODE7'] := fImagePath7;
RM2.LoadFromFile(fPrintFile); RM2.LoadFromFile(fPrintFile);
Rm2.DefaultCopies := strtointdef(trim(ComboBox1.Text), 1); Rm2.DefaultCopies := strtointdef(trim(ComboBox1.Text), 1);
RM2.ShowReport; RM2.ShowReport;
RM2.PrintReport; RM2.PrintReport;
{ IF Trim(ADOQueryPrint.fieldbyname('NLBName').AsString)<>'' then { IF Trim(ADOQueryPrint.fieldbyname('NLBName').AsString)<>'' then
begin begin
@ -983,8 +1191,8 @@ begin
RMVariables['CustomerNoName'] := Trim(Order_Main.fieldbyname('CustomerNoName').AsString); RMVariables['CustomerNoName'] := Trim(Order_Main.fieldbyname('CustomerNoName').AsString);
RMVariables['MPRTCodeName'] := Trim(Order_Main.fieldbyname('MPRTCodeName').AsString); RMVariables['MPRTCodeName'] := Trim(Order_Main.fieldbyname('MPRTCodeName').AsString);
RMVariables['MPRTMF'] := Trim(Order_Main.fieldbyname('MPRTMF').AsString); RMVariables['MPRTMF'] := Trim(Order_Main.fieldbyname('MPRTMF').AsString);
RMVariables['JGC'] := Trim(Order_Main.fieldbyname('AOrddefstr4').AsString); // RMVariables['JGC'] := Trim(Order_Main.fieldbyname('AOrddefstr4').AsString);
RMVariables['PBC'] := Trim(Order_Main.fieldbyname('AOrddefstr6').AsString); // RMVariables['PBC'] := Trim(Order_Main.fieldbyname('AOrddefstr6').AsString);
RMCD.ShowReport; RMCD.ShowReport;
end end
else else
@ -1022,6 +1230,7 @@ begin
SInitCDSData20(ADOQueryTemp, CDS_CD); SInitCDSData20(ADOQueryTemp, CDS_CD);
if CDS_CD.IsEmpty = False then if CDS_CD.IsEmpty = False then
CDS_CD.Delete; CDS_CD.Delete;
with ADOQueryTemp do with ADOQueryTemp do
begin begin
Close; Close;
@ -1924,5 +2133,74 @@ begin
end; end;
end; end;
procedure TfrmJYOrderCDOne.ToolButton13Click(Sender: TObject);
var
fPrintFile, fZMFile: string;
begin
if Order_Main.IsEmpty then
Exit;
if Order_Main.Locate('SSel', True, []) = False then
begin
Application.MessageBox('没有选择数据', '提示', 0);
Exit;
end;
Panel8.Visible := true;
end;
procedure TfrmJYOrderCDOne.Button11Click(Sender: TObject);
var
fPrintFile, fZMFile, LBName: string;
begin
if Order_Main.IsEmpty then
Exit;
// fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\检验报告.rmf';
LBName := RadioGroup2.Items.Strings[RadioGroup2.ItemIndex];
fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\' + Trim(LBName) + '.rmf';
ExportFtErpFile(Trim(LBName) + '.rmf', ADOQueryCmd);
with ADOQuery2 do
begin
Close;
sql.Clear;
sql.add('exec P_Do_Print_JYBB ');
sql.add('@mainID=' + quotedstr(trim(Order_Main.fieldbyname('mainid').AsString)));
sql.add(',@DName=' + quotedstr(Trim(DCode)));
sql.add(',@flag=''0'' ');
Open;
end;
SCreateCDS20(ADOQuery2, CDS_HZ);
SInitCDSData20(ADOQuery2, CDS_HZ);
if FileExists(fPrintFile) then
begin
if RMCD.CanExport = true then
begin
fZMFile := 'C:\Users\Administrator\Desktop';
if not DirectoryExists(fZMFile) then
begin
fZMFile := 'C:\Documents and Settings\Administrator\桌面\' + trim(Order_Main.fieldbyname('ConNO').AsString) + Trim(LBName) + '.xls';
end
else
begin
fZMFile := 'C:\Users\Administrator\Desktop\' + trim(Order_Main.fieldbyname('ConNO').AsString) + Trim(LBName) + '.XLS';
end;
RMCD.ExportTo(RMXLSExport1, fZMFile);
end;
RMCD.CanExport := true;
RMCD.LoadFromFile(fPrintFile);
RMCD.ShowReport;
RMCD.CanExport := False;
end
else
begin
Application.MessageBox(PChar('没有找' + ExtractFilePath(Application.ExeName) + 'Report\' + Trim(LBName) + '.rmf'), '提示', 0); //+ 'Report\检验报告.rmf'
end;
end;
procedure TfrmJYOrderCDOne.Image1Click(Sender: TObject);
begin
Panel8.Visible := false;
end;
end. end.

View File

@ -1952,6 +1952,15 @@ object frmMJManageNewFDNewSF: TfrmMJManageNewFDNewSF
OnClick = Edit1Click OnClick = Edit1Click
OnKeyPress = MJstr3KeyPress OnKeyPress = MJstr3KeyPress
end end
object cxImage1: TcxImage
Left = 27
Top = 625
AutoSize = True
TabOrder = 27
Visible = False
Height = 113
Width = 169
end
end end
object Panel3: TPanel object Panel3: TPanel
Left = 4 Left = 4

File diff suppressed because it is too large Load Diff