📄 udocumentquery.pas
字号:
end;
-31,-32: Begin
colHD.DataBinding.FieldName := 'cms';
colKD.Visible := false;
end;
41: Begin
colCodeClient.Visible := false;
colNameClient.Visible := false;
colDateJh.Visible := false;
colJE.Visible := false;
colCode.DataBinding.FieldName := 'iKeyCp';
colHD.Visible := false;
colKD.Visible := false;
colYS.Visible := false;
colZL.Visible := False;
colDJ.Visible := false;
colJE1.Visible := false;
end;
-41: Begin
colCode.DataBinding.FieldName := 'iKeyCp';
colHD.Visible := false;
colKD.Visible := false;
colYS.Visible := false;
colZL.Visible := False;
colDJ.DataBinding.FieldName := 'fdj';
colDJ.Visible := true;
colJE1.DataBinding.FieldName := 'fje';
colJE1.Visible := true;
end;
end;
end;
procedure TfrmDocumentQuery.GetData;
var iOpt: integer;
begin
iOpt := cboxSetOperation(cxComboBox1);
if iOpt = 0 then exit;
SetColumn(iOpt);
if cxComboBox1.Text = '' then Begin
infoWnd('请选择业务类别!');
exit;
end;
cdMaster.Close;
cdItem.Close;
cdMaster.RemoteServer := frmMain.DCOMCn;
cdMaster.ProviderName := 'pGetDocument';
frmMain.DCOMCn.AppServer.IGetDocument(formatDateTime('yyyy-MM-dd',cxDateEdit1.date),
formatDateTime('yyyy-MM-dd',cxDateEdit2.Date + 1),cxTextEdit1.Text,iOpt);
cdMaster.Open;
cdItem.Open;
{sqlText := 'WHERE (DdatePz >= '''+formatDateTime('yyyy-MM-dd',cxDateEdit1.date)+''')'+
' AND (DdatePz < '''+formatDateTime('yyyy-MM-dd',cxDateEdit2.Date + 1)+''')'+
' AND (IDL = '''+intTostr(iOpt)+''') AND (btrash <> 1)';
if cxTextEdit1.Text <> '' then
sqlText := sqlText + ' AND (CDH = '''+cxTextEdit1.Text+''')';
cdItem.Close;
cdMaster.Close;
cdItem.DataSource := dsMaster;
cdItem.MasterFields := 'IKey';
cdItem.IndexFieldNames := 'IKeyM';
if iOpt = 11 then BEGIN
sqlText := 'WHERE (DdatePz >= '''+formatDateTime('yyyy-MM-dd',cxDateEdit1.date)+''')'+
' AND (DdatePz < '''+formatDateTime('yyyy-MM-dd',cxDateEdit2.Date + 1)+''')'+
' AND (btrash <> 1)';
if cxTextEdit1.Text <> '' then
sqlText := sqlText + ' AND (CDH = '''+cxTextEdit1.Text+''')';
cdItem.CommandText := 'SELECT i.*,s.ccode,s.cName,s.fhd,s.fkd,s.ccolor '+
'FROM T_StockPlanItemZb I INNER JOIN T_STOCK S '+
'ON (I.IKeySTK = S.IKey)';
cdMaster.CommandText := 'SELECT M.IKey,M.CDH,k.ccode,k.cname,M.ddatePz,M.ddateJh,M.fje '+
'from T_StockPlanMasterZb M INNER JOIN T_PubClient k '+
'ON (M.IkeyClient = k.ikey)' +#13+ SqlText;
END;
if (iOpt = -41) OR (iOpt = 41) then BEGIN
cdItem.CommandText := 'SELECT i.ikeyAu,i.IkeyM,i.ICodeCp,i.fsl,i.fdj,(i.fsl * i.fdj)fje,g.cName,g.cdw '+
'From T_GoodsItemZB i INNER JOIN T_Goods g on(i.ICodeCp = g.Ikey)';
cdMaster.CommandText := 'SELECT M.IKey,M.CDH,k.ccode,k.cname,M.ddatePz,M.ddateJh,M.fje '+
'from T_GoodsMasterZb M INNER JOIN T_PubClient k '+
'ON (M.IkeyClient = k.ikey)' +#13+ SqlText;
END;
if (iOpt = -31) OR (iOpt = 31) OR (iOpt = -32) OR (iOpt = 32) then BEGIN
cdItem.CommandText := 'SELECT I.ikeyAu,I.IkeyM,H.ccode,H.cname,I.fsl,I.fzl,H.cms,H.ccolor '+
'From T_HGoodsItemZB I INNER JOIN T_HGoods H '+
'ON (I.IKeyStk = H.ikey)';
cdMaster.CommandText := 'SELECT M.IKey,M.CDH,k.ccode,k.cname,M.ddatePz,M.ddateJh,M.fje '+
'from T_HGoodsMasterZb M INNER JOIN T_PubClient k '+
'ON (M.IkeyClient = k.ikey)' +#13+ SqlText;
END;
if (iOpt = -21) OR (iOpt = 21) OR (iOpt = -22) OR (iOpt = 22) then BEGIN
cdItem.CommandText := 'SELECT i.*,s.ccode,s.cName,s.fhd,s.fkd,s.ccolor '+
'FROM T_StockItemZb I INNER JOIN T_STOCK S '+
'ON (I.IKeySTK = S.IKey)';
cdMaster.CommandText := 'SELECT M.IKey,M.CDH,k.ccode,k.cname,M.ddatePz,M.ddateJh,M.fje '+
'from T_StockMasterZb M INNER JOIN T_PubClient k '+
'ON (M.IkeyClient = k.ikey)' +#13+ SqlText;
END;}
end;
procedure TfrmDocumentQuery.documentPrint(cdM,cdI: TclientDataSet; iOpt: integer);
var fje: real;
begin
fje := cdM.fieldbyname('fje').asFloat;
UpperCasePrint(fje);
frVariables['VcodeClient'] := cdM.fieldbyname('ccode').asstring;
frVariables['VnameClient'] := cdM.fieldbyname('cName').asstring;
frVariables['VdateJH'] := cdM.fieldbyname('DDateJh').asdateTime;
frVariables['Vdh'] := cdM.fieldbyname('cdh').asstring;
frVariables['VdatePZ'] := cdM.fieldbyname('DDatePz').asdatetime;
frVariables['Vje'] := fje;
frVariables['Vdress'] := cdM.fieldbyname('cPost_Dz').asstring;
frVariables['Vtel'] := cdM.fieldbyname('cTel').asstring;
Case iOpt of
-41: Begin
with frmMain.cdPub do begin
close;
commandText := 'SELECT i.ikeyAu,i.IkeyM,i.ICodeCp IKeyCp,i.fsl,i.fdj,(i.fsl * i.fdj)fje,g.cName,g.cdw '+
'From T_GoodsItemZB i INNER JOIN T_Goods g on(i.ICodeCp = g.Ikey)'+#13+
'WHERE IKeyM = '''+cdM.Fieldbyname('iKey').asString+'''';
open;
fje := fcGetJeTotal(frmMain.cdPub);
frVariables['Vje'] := fje;
UpperCasePrint(fje);
end;
frmReport.ReportS(49, 0, '', frmMain.cdPub.Data);
end;
11: Begin
with frmMain.cdPub do begin
close;
commandText := 'SELECT i.*,s.ccode,s.cName,s.fhd,s.fkd,s.ccolor,s.cdw '+
'FROM T_StockPlanItemZb I INNER JOIN T_STOCK S '+
'ON (I.IKeySTK = S.IKey)'+#13+
'WHERE IKeyM = '''+cdM.Fieldbyname('iKey').asString+'''';
open;
end;
frmReport.ReportS(10, 0, '', cdI.Data);
end;
-21: Begin
with frmMain.cdPub do begin
close;
commandText := 'SELECT i.*,s.ccode,s.cName,s.fhd,s.fkd,s.ccolor,s.cdw '+
'FROM T_StockItemZb I INNER JOIN T_STOCK S '+
'ON (I.IKeySTK = S.IKey)'+#13+
'WHERE IKeyM = '''+cdM.Fieldbyname('iKey').asString+'''';
open;
fje := fcGetJeTotal(frmMain.cdPub);
frVariables['Vje'] := fje;
UpperCasePrint(fje);
end;
frmReport.ReportS(28, 0, '', cdI.Data);
end;
-22: Begin
with frmMain.cdPub do begin
close;
commandText := 'SELECT i.*,s.ccode,s.cName,s.fhd,s.fkd,s.ccolor,s.cdw '+
'FROM T_StockItemZb I INNER JOIN T_STOCK S '+
'ON (I.IKeySTK = S.IKey)'+#13+
'WHERE IKeyM = '''+cdM.Fieldbyname('iKey').asString+'''';
open;
fje := fcGetJeTotal(frmMain.cdPub);
frVariables['Vje'] := fje;
UpperCasePrint(fje);
end;
frmReport.ReportS(29, 0, '', cdI.Data);
end;
-31: Begin
with frmMain.cdPub do begin
close;
commandText := 'SELECT I.ikeyAu,I.IkeyM,H.ccode,H.cname,I.fsl,I.fzl,I.fdj,(i.fsl * i.fdj)fje '+
',H.cms,H.ccolor,h.cdw From T_HGoodsItemZB I INNER JOIN T_HGoods H '+
'ON (I.IKeyStk = H.ikey)'+#13+
'WHERE IKeyM = '''+cdM.Fieldbyname('iKey').asString+'''';
open;
fje := fcGetJeTotal(frmMain.cdPub);
frVariables['Vje'] := fje;
UpperCasePrint(fje);
end;
frmReport.ReportS(38, 0, '', cdI.Data);
end;
-32: Begin
with frmMain.cdPub do begin
close;
commandText := 'SELECT I.ikeyAu,I.IkeyM,H.ccode,H.cname,I.fsl,I.fzl,I.fdj,(i.fsl * i.fdj)fje '+
',H.cms,H.ccolor,h.cdw From T_HGoodsItemZB I INNER JOIN T_HGoods H '+
'ON (I.IKeyStk = H.ikey)'+#13+
'WHERE IKeyM = '''+cdM.Fieldbyname('iKey').asString+'''';
open;
fje := fcGetJeTotal(frmMain.cdPub);
frVariables['Vje'] := fje;
UpperCasePrint(fje);
end;
frmReport.ReportS(39, 0, '', cdI.Data);
end;
end;
end;
procedure TfrmDocumentQuery.ToolButton3Click(Sender: TObject);
begin
IF not QueryWnd('作废单据等于删除,确认吗?') then
Exit;
IF frmMain.DCOMCn.AppServer.ITrashDocument(
cdMaster.FieldByName('Ikey').AsInteger,
cboxSetOperation(cxComboBox1)) = 1 then Begin
cdMaster.Close;
cdMaster.Open;
cdItem.Close;
cdItem.Open;
end;
end;
procedure TfrmDocumentQuery.cxComboBox1PropertiesChange(Sender: TObject);
begin
cdMaster.Close;
cdItem.Close;
end;
procedure TfrmDocumentQuery.ToolButton5Click(Sender: TObject);
begin
documentPrint(cdMaster,cdItem,cboxSetOperation(cxComboBox1));
end;
function TfrmDocumentQuery.fcGetJeTotal(cdTem: TclientDataSet): real;
var curren_re: TbookMark;
fje: real;
begin
fje := 0;
with cdTem do begin
curren_re :=getBookMark;
disablecontrols;
first;
try
while not eof do begin
fje := fje + fieldbyname('fsl').AsFloat *
fieldbyname('fdj').AsFloat;
next;
end;
finally
gotobookmark(curren_re);
freebookmark(curren_re);
enablecontrols;
end;
end;
result := fje;
end;
procedure TfrmDocumentQuery.UpperCasePrint(fje: real);
var i,n,j: integer;
s_je: string;
dx_je: array[1..8] of string;
begin
j := 0;
for i := 1 to 8 do
dx_je[i] := '';
s_je :=intTostr(round(fje * 100));
if length(s_je) > 8 then
exit;
for i := length(s_je) downTo 1 do
begin
j := j+1;
n := strToint(s_je[i]);
case n of
0: dx_je[j] := '零';
1: dx_je[j] := '壹';
2: dx_je[j] := '贰';
3: dx_je[j] := '叁';
4: dx_je[j] := '肆';
5: dx_je[j] := '伍';
6: dx_je[j] := '陆';
7: dx_je[j] := '柒';
8: dx_je[j] := '捌';
9: dx_je[j] := '玖';
end;
end;
frVariables['vdx8'] := dx_je[8];
frVariables['vdx7'] := dx_je[7];
frVariables['vdx6'] := dx_je[6];
frVariables['vdx5'] := dx_je[5];
frVariables['vdx4'] := dx_je[4];
frVariables['vdx3'] := dx_je[3];
frVariables['vdx2'] := dx_je[2];
frVariables['vdx1'] := dx_je[1];
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -