printinvoiceunit.pas
来自「用友系统二次开发 存货管理 客户管理 订货审核 退货审核 铺货计划 」· PAS 代码 · 共 432 行 · 第 1/2 页
PAS
432 行
unit PrintInvoiceUnit;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, dxExEdtr, RzPanel, ActnList, DB, ADODB, Menus, cxTextEdit,
cxMaskEdit, cxButtonEdit, cxDBEdit, Buttons, StdCtrls, RzLabel,
cxDBLabel, cxControls, cxContainer, cxEdit, cxLabel, dxDBTLCl, dxGrClms,
dxDBCtrl, dxDBGrid, dxTL, dxCntner, ExtCtrls, RzButton, RzLstBox,
cxCheckBox, RzTabs, RzEdit, DBCtrls, RzDBEdit, cxGraphics, cxRadioGroup,
cxDropDownEdit, cxMemo, cxListBox, RzSplit;
type
TfrmPrintInvoice = class(TForm)
RzPanel3: TRzPanel;
RzPanel1: TRzPanel;
RzPanel2: TRzPanel;
RzPanel5: TRzPanel;
RzLabel5: TRzLabel;
cxLabel7: TcxLabel;
cxLabel8: TcxLabel;
DLID: TcxDBButtonEdit;
cxDBLabel1: TcxDBLabel;
cxDBLabel3: TcxDBLabel;
DS_Invoice: TDataSource;
DataSet_Invoice: TADODataSet;
ActionList1: TActionList;
RzToolbar1: TRzToolbar;
BtnView: TRzToolButton;
BtnPrint: TRzToolButton;
BtnRefurbish: TRzToolButton;
RzSpacer1: TRzSpacer;
AdditiveTran: TAction;
PreviewTran: TAction;
PrintTran: TAction;
DataRefurbish: TAction;
QueryInvoice: TAction;
dxDBGrid1: TdxDBGrid;
dxDBGrid1Column1: TdxDBGridColumn;
dxDBGrid1Column2: TdxDBGridColumn;
dxDBGrid1Column3: TdxDBGridColumn;
dxDBGrid1Column4: TdxDBGridColumn;
dxDBGrid1Column5: TdxDBGridMaskColumn;
dxDBGrid1Column6: TdxDBGridCurrencyColumn;
dxDBGrid1Column7: TdxDBGridCurrencyColumn;
dxDBGrid1Column8: TdxDBGridColumn;
dxDBGrid1Column9: TdxDBGridColumn;
Memo: TADODataSet;
DS_Memo: TDataSource;
bReportTitel: TcxCheckBox;
bPrintTitel: TAction;
PopupMenu1: TPopupMenu;
N1: TMenuItem;
N2: TMenuItem;
ChangMemo: TAction;
SaveMemo: TAction;
Transact: TAction;
BtnTran: TRzToolButton;
PopupMenu2: TPopupMenu;
N3: TMenuItem;
dxDBGrid1Column10: TdxDBGridColumn;
RzSizePanel2: TRzSizePanel;
RzGroupBox4: TRzGroupBox;
RzPageControl1: TRzPageControl;
TabSheet1: TRzTabSheet;
List_AddProdPrice: TRzEditListBox;
TabSheet2: TRzTabSheet;
List_ProdPrice: TRzEditListBox;
TabSheet3: TRzTabSheet;
cxMemo1: TcxMemo;
RzGroupBox1: TRzGroupBox;
RadioButton_TL: TcxRadioButton;
RadioButton_HJ: TcxRadioButton;
List_invoice: TcxListBox;
RzPanel4: TRzPanel;
Edit_11: TcxMaskEdit;
ComboBox_11: TcxComboBox;
ComboBox_10: TcxComboBox;
Edit_10: TcxMaskEdit;
Edit_09: TcxMaskEdit;
ComboBox_09: TcxComboBox;
ComboBox_08: TcxComboBox;
Edit_08: TcxMaskEdit;
Edit_07: TcxMaskEdit;
ComboBox_07: TcxComboBox;
ComboBox_06: TcxComboBox;
Edit_06: TcxMaskEdit;
Edit_05: TcxMaskEdit;
ComboBox_05: TcxComboBox;
ComboBox_04: TcxComboBox;
Edit_04: TcxMaskEdit;
Edit_03: TcxMaskEdit;
ComboBox_03: TcxComboBox;
ComboBox_02: TcxComboBox;
Edit_02: TcxMaskEdit;
Edit_01: TcxMaskEdit;
ComboBox_01: TcxComboBox;
procedure Additive ;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure QueryInvoices(dlid:string);
procedure DLIDPropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure List_InvoiceDblClick(Sender: TObject);
procedure PreviewTranExecute(Sender: TObject);
procedure bPrintTitelExecute(Sender: TObject);
procedure PrintTranExecute(Sender: TObject);
procedure ChangMemoExecute(Sender: TObject);
procedure SaveMemoExecute(Sender: TObject);
procedure DataSet_InvoiceAfterClose(DataSet: TDataSet);
procedure DataSet_InvoiceAfterOpen(DataSet: TDataSet);
procedure TransactExecute(Sender: TObject);
procedure DataRefurbishExecute(Sender: TObject);
procedure N3Click(Sender: TObject);
procedure FormShow(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
frmPrintInvoice: TfrmPrintInvoice;
iSumMoney: Double;
iQty : integer;
implementation
uses
mainunit, dataunit,PublicUnit,PrintPageUnit;
{$R *.dfm}
procedure TfrmPrintInvoice.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TfrmPrintInvoice.QueryInvoices(dlid:string);
var
sqltext:string;
begin
Try
with DataSet_Invoice do begin
close ;
commandText := 'execute _PM_V_Invoice_Query '''+dlid+'''';
open ;
List_ProdPrice.Items.Clear ;
Sqltext :='execute _PM_P_CustInvState_Query 1,2,''' + fieldByName('客户代码').AsString + ''',''''';
if GetList(Sqltext).Count > 0 then begin
List_ProdPrice.items.Add('公司需调回货品:');
List_ProdPrice.items.Add('------------------------------------------------------------------------');
List_ProdPrice.items.Add(' 截止日期 货品名称 ');
List_ProdPrice.items.Add('------------------------------------------------------------------------');
List_ProdPrice.items.AddStrings(GetList(Sqltext));
end;
Sqltext :='execute _PM_P_CustInvState_Query 1,3,''' + fieldByName('客户代码').AsString + ''',''''';
if GetList(Sqltext).Count > 0 then begin
List_ProdPrice.items.Add('');
List_ProdPrice.items.Add('近期调价货品:');
List_ProdPrice.items.Add('----------------------------------------------------------------');
List_ProdPrice.items.Add(' 原价-新价 升价日期 货品名称 ');
List_ProdPrice.items.Add('----------------------------------------------------------------');
List_ProdPrice.items.AddStrings(GetList(Sqltext));
end;
List_AddProdPrice.Items.Clear ;
Sqltext :='execute _PM_P_CustInvState_Query 1,4,'''','''+dlid+'''';
if GetList(Sqltext).Count > 0 then begin
List_AddProdPrice.items.Add('公司需调回货品:');
List_AddProdPrice.items.Add('------------------------------------------------------------------------');
List_AddProdPrice.items.Add(' 截止日期 货品名称 ');
List_AddProdPrice.items.Add('------------------------------------------------------------------------');
List_AddProdPrice.items.AddStrings(GetList(Sqltext));
end;
Sqltext :='execute _PM_P_CustInvState_Query 1,5,'''','''+dlid+'''';
if GetList(Sqltext).Count > 0 then begin
List_AddProdPrice.items.Add('');
List_AddProdPrice.items.Add('近期调价货品:');
List_AddProdPrice.items.Add('----------------------------------------------------------------');
List_AddProdPrice.items.Add(' 原价-新价 升价日期 货品名称 ');
List_AddProdPrice.items.Add('----------------------------------------------------------------');
List_AddProdPrice.items.AddStrings(GetList(Sqltext));
end;
end;
except
showmessage('查询失败,请重新查询!');
exit ;
end;
end;
procedure TfrmPrintInvoice.DLIDPropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
var
dlid : string;
begin
dlid :=inputbox('查询发货单据','请输入单据编号:','');
if (dlid<>'') Then Begin
QueryInvoices(dlid);
end else Begin
showmessage('单据编号不能为空!');
Exit;
end;
end;
procedure TfrmPrintInvoice.List_InvoiceDblClick(Sender: TObject);
begin
QueryInvoices(Lefts(List_invoice.Items.Strings[List_invoice.ItemIndex]));
end;
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?