增加二维码

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'
'PD'#33457#22411#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
object TBClose: TToolButton
Left = 801

View File

@ -1089,7 +1089,7 @@ begin
end;
if trim(ComboBox1.Text) = 'PD花型米数+码数' then
begin
with ADOQueryTemp do
with ADOQueryTemp do
begin
Close;
sql.Clear;
@ -1113,7 +1113,19 @@ begin
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);
end;
with ADOQueryTemp do
begin
Close;

View File

@ -138,7 +138,8 @@ object frmCKProductBCPOutList: TfrmCKProductBCPOutList
#26816#39564#30721#21333'-10'
'PD'#33457#22411#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
object ToolButton2: TToolButton
Left = 673

View File

@ -855,7 +855,7 @@ begin
sql.add(',@CNum=''8'' ');
Open;
end;
SCreateCDS20(ADOQueryTemp, CDS_HZ);
SCreateCDS20(ADOQueryTemp, CDS_HZ);
SInitCDSData20(ADOQueryTemp, CDS_HZ);
end;
if trim(ComboBox1.Text) = '쇱駱쯤데(살<>댔관)' then
@ -1088,7 +1088,20 @@ begin
sql.add('@DName=' + quotedstr(Trim(DCode)));
Open;
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);
end;
with ADOQueryTemp do

View File

@ -1,6 +1,6 @@
object frmJYOrderCDOne: TfrmJYOrderCDOne
Left = 81
Top = 200
Left = 365
Top = 219
Width = 1382
Height = 770
Caption = #26816#39564#25253#21578
@ -21,7 +21,7 @@ object frmJYOrderCDOne: TfrmJYOrderCDOne
Left = 0
Top = 0
Width = 1366
Height = 62
Height = 92
AutoSize = True
ButtonHeight = 30
ButtonWidth = 131
@ -96,12 +96,13 @@ object frmJYOrderCDOne: TfrmJYOrderCDOne
AutoSize = True
Caption = #26816#21518#22238#20462
ImageIndex = 54
Wrap = True
Visible = False
OnClick = TBAftChkHXClick
end
object ToolButton12: TToolButton
Left = 465
Top = 0
Left = 0
Top = 30
AutoSize = True
Caption = #25209#37327#20462#25913#25968#37327#21333#20301
ImageIndex = 57
@ -109,8 +110,8 @@ object frmJYOrderCDOne: TfrmJYOrderCDOne
OnClick = ToolButton12Click
end
object ToolButton3: TToolButton
Left = 600
Top = 0
Left = 135
Top = 30
AutoSize = True
Caption = #25442#31639#31995#25968
ImageIndex = 57
@ -118,25 +119,24 @@ object frmJYOrderCDOne: TfrmJYOrderCDOne
OnClick = ToolButton3Click
end
object ToolButton1: TToolButton
Left = 687
Top = 0
Left = 222
Top = 30
AutoSize = True
Caption = #25171#21360#21367#26631#31614
ImageIndex = 96
OnClick = ToolButton1Click
end
object ToolButton9: TToolButton
Left = 786
Top = 0
Left = 321
Top = 30
AutoSize = True
Caption = #25195#25551#25171#21360#21367#26631#31614
ImageIndex = 96
Wrap = True
Visible = False
OnClick = ToolButton9Click
end
object ToolButton4: TToolButton
Left = 0
Left = 444
Top = 30
AutoSize = True
Caption = #24067#21305#25171#21253
@ -145,7 +145,7 @@ object frmJYOrderCDOne: TfrmJYOrderCDOne
OnClick = ToolButton4Click
end
object ToolButton6: TToolButton
Left = 87
Left = 531
Top = 30
AutoSize = True
Caption = #25764#38144#25171#21253
@ -154,17 +154,18 @@ object frmJYOrderCDOne: TfrmJYOrderCDOne
OnClick = ToolButton6Click
end
object ToolButton5: TToolButton
Left = 174
Left = 618
Top = 30
AutoSize = True
Caption = #25171#21360#21253#26631#31614
ImageIndex = 96
Wrap = True
Visible = False
OnClick = ToolButton5Click
end
object ToolButton7: TToolButton
Left = 273
Top = 30
Left = 0
Top = 60
AutoSize = True
Caption = #24067#21305#25442#32568
ImageIndex = 57
@ -172,8 +173,8 @@ object frmJYOrderCDOne: TfrmJYOrderCDOne
OnClick = ToolButton7Click
end
object ToolButton8: TToolButton
Left = 360
Top = 30
Left = 87
Top = 60
AutoSize = True
Caption = #26816#39564#25253#21578
ImageIndex = 12
@ -181,8 +182,8 @@ object frmJYOrderCDOne: TfrmJYOrderCDOne
OnClick = ToolButton8Click
end
object ToolButton10: TToolButton
Left = 447
Top = 30
Left = 174
Top = 60
AutoSize = True
Caption = #26816#39564#27719#24635#25253#21578
ImageIndex = 12
@ -190,8 +191,8 @@ object frmJYOrderCDOne: TfrmJYOrderCDOne
OnClick = ToolButton10Click
end
object ToolButton2: TToolButton
Left = 558
Top = 30
Left = 285
Top = 60
AutoSize = True
Caption = #26816#39564#25253#21578
ImageIndex = 12
@ -199,8 +200,8 @@ object frmJYOrderCDOne: TfrmJYOrderCDOne
OnClick = ToolButton2Click
end
object ToolButton11: TToolButton
Left = 645
Top = 30
Left = 372
Top = 60
AutoSize = True
Caption = #25171#21253#30721#21333
ImageIndex = 12
@ -208,17 +209,25 @@ object frmJYOrderCDOne: TfrmJYOrderCDOne
OnClick = ToolButton11Click
end
object TBClose: TToolButton
Left = 732
Top = 30
Left = 459
Top = 60
AutoSize = True
Caption = #20851#38381
ImageIndex = 55
OnClick = TBCloseClick
end
object ToolButton13: TToolButton
Left = 522
Top = 60
AutoSize = True
Caption = #25171#21360#26816#39564#25253#21578
ImageIndex = 12
OnClick = ToolButton13Click
end
end
object Panel1: TPanel
Left = 0
Top = 62
Top = 92
Width = 1366
Height = 87
Align = alTop
@ -875,7 +884,7 @@ object frmJYOrderCDOne: TfrmJYOrderCDOne
end
object cxGrid1: TcxGrid
Left = 0
Top = 149
Top = 179
Width = 1366
Height = 466
Align = alTop
@ -1241,6 +1250,12 @@ object frmJYOrderCDOne: TfrmJYOrderCDOne
HeaderAlignmentHorz = taCenter
Width = 70
end
object Tv1Column4: TcxGridDBColumn
Caption = #23458#25143
DataBinding.FieldName = 'CustomerNoName'
HeaderAlignmentHorz = taCenter
Width = 60
end
end
object cxGrid1Level1: TcxGridLevel
GridView = Tv1
@ -1602,6 +1617,115 @@ object frmJYOrderCDOne: TfrmJYOrderCDOne
GridView = TV4
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
Grid = cxGrid1
PopupMenus = <>
@ -1799,4 +1923,10 @@ object frmJYOrderCDOne: TfrmJYOrderCDOne
Left = 96
Top = 173
end
object ADOQuery2: TADOQuery
Connection = DataLink_TradeManage.ADOLink
Parameters = <>
Left = 147
Top = 443
end
end

View File

@ -4,15 +4,67 @@ interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData,
cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB,
cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, cxControls,
cxGridCustomView, cxGridCustomTableView, cxGridTableView, cxGridDBTableView,
cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter, RM_Dataset, RM_System,
RM_Common, RM_Class, RM_GridReport, RM_e_Xls, Menus, MovePanel, cxTextEdit,
cxContainer, cxCurrencyEdit, U_SMLB, BtnEdit, RM_e_main, RM_e_htm,
RM_e_Graphic, RM_e_Jpeg, RM_e_txt, RM_e_csv, RM_E_llPDF, cxLookAndFeels,
cxLookAndFeelPainters, cxNavigator;
StrUtils, Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles,
cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB,
cxDBData, ADODB, cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel,
cxClasses, cxControls, cxGridCustomView, cxGridCustomTableView,
cxGridTableView, cxGridDBTableView, cxGrid, DBClient, cxCheckBox, cxCalendar,
cxSplitter, RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport,
RM_e_Xls, Menus, MovePanel, cxTextEdit, cxContainer, cxCurrencyEdit, U_SMLB,
BtnEdit, RM_e_main, RM_e_htm, RM_e_Graphic, RM_e_Jpeg, RM_e_txt, RM_e_csv,
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
TfrmJYOrderCDOne = class(TForm)
@ -194,6 +246,16 @@ type
Tv1Column1: TcxGridDBColumn;
Tv1Column2: 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 FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormCreate(Sender: TObject);
@ -244,6 +306,9 @@ type
procedure ToolButton12Click(Sender: TObject);
procedure TV4DblClick(Sender: TObject);
procedure BAONOChange(Sender: TObject);
procedure ToolButton13Click(Sender: TObject);
procedure Button11Click(Sender: TObject);
procedure Image1Click(Sender: TObject);
private
DQdate: TDateTime;
FLeft, FTop: Integer;
@ -253,12 +318,30 @@ type
function Savedata(): Boolean;
procedure GetCDSData();
procedure GetBGData();
procedure tsewm6(); //获取特殊二维码
{ Private declarations }
public
FFInt: Integer;
FDETM6: string;
{ Public declarations }
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
frmJYOrderCDOne: TfrmJYOrderCDOne;
@ -269,6 +352,86 @@ uses
U_ZDYHelp, U_ProductOrderListSel;
{$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);
begin
@ -430,7 +593,7 @@ begin
begin
MJType.ItemIndex := MJType.Items.IndexOf('次品');
MJType.Enabled := false;
ToolButton12.Visible := false;
end;
end;
@ -620,7 +783,7 @@ end;
procedure TfrmJYOrderCDOne.ToolButton1Click(Sender: TObject);
var
fPrintFile: string;
Txt, fImagePath, fImagePath1, fImagePath2, fImagePath3: string;
Txt, fImagePath, fImagePath1, fImagePath2, fImagePath3, fImagePath5, fImagePath6, Txt7, fImagePath7: string;
Moudle: THandle;
Makebar: TMakebar;
Mixtext: TMixtext;
@ -650,12 +813,12 @@ begin
end;
with ADOQueryPrint do
begin
Close;
Close;
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(',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(',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(' from WFB_MJJY A');
sql.Add(' inner join JYOrder_Main B On A.Mainid=B.Mainid');
@ -728,7 +891,49 @@ begin
application.MessageBox('条形码生成失败!', '提示信息', MB_ICONERROR);
exit;
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
fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\' + Trim(ADOQueryPrint.fieldbyname('LbName').AsString) + '.rmf'
else
@ -740,9 +945,12 @@ begin
RMVariables['QRBARCODE1'] := fImagePath1;
RMVariables['QRBARCODE2'] := fImagePath2;
RMVariables['QRBARCODE3'] := fImagePath3;
RMVariables['QRBARCODE5'] := fImagePath5;
RMVariables['QRBARCODE6'] := fImagePath6;
RMVariables['QRBARCODE7'] := fImagePath7;
RM2.LoadFromFile(fPrintFile);
Rm2.DefaultCopies := strtointdef(trim(ComboBox1.Text), 1);
RM2.ShowReport;
RM2.ShowReport;
RM2.PrintReport;
{ IF Trim(ADOQueryPrint.fieldbyname('NLBName').AsString)<>'' then
begin
@ -983,8 +1191,8 @@ begin
RMVariables['CustomerNoName'] := Trim(Order_Main.fieldbyname('CustomerNoName').AsString);
RMVariables['MPRTCodeName'] := Trim(Order_Main.fieldbyname('MPRTCodeName').AsString);
RMVariables['MPRTMF'] := Trim(Order_Main.fieldbyname('MPRTMF').AsString);
RMVariables['JGC'] := Trim(Order_Main.fieldbyname('AOrddefstr4').AsString);
RMVariables['PBC'] := Trim(Order_Main.fieldbyname('AOrddefstr6').AsString);
// RMVariables['JGC'] := Trim(Order_Main.fieldbyname('AOrddefstr4').AsString);
// RMVariables['PBC'] := Trim(Order_Main.fieldbyname('AOrddefstr6').AsString);
RMCD.ShowReport;
end
else
@ -1022,6 +1230,7 @@ begin
SInitCDSData20(ADOQueryTemp, CDS_CD);
if CDS_CD.IsEmpty = False then
CDS_CD.Delete;
with ADOQueryTemp do
begin
Close;
@ -1924,5 +2133,74 @@ begin
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.

View File

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

File diff suppressed because it is too large Load Diff