D7YPbaoying/样品仓库/U_BpSmRk.pas
DESKTOP-E401PHE\Administrator e505f1d7a5 ~
2025-04-30 16:02:03 +08:00

845 lines
25 KiB
ObjectPascal
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

unit U_BpSmRk;
interface
uses
Windows, Messages, SysUtils,StrUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData,
cxDataStorage, cxEdit, DB, cxDBData, cxGridCustomTableView,
cxGridTableView, cxGridDBTableView, cxGridLevel, cxClasses, cxControls,
cxGridCustomView, cxGrid, StdCtrls, ComCtrls, ExtCtrls, ToolWin,
cxButtonEdit, cxDropDownEdit, DBClient, ADODB, cxGridCustomPopupMenu,
cxGridPopupMenu, BtnEdit, Menus, cxLookAndFeelPainters, cxButtons,
cxCheckBox, cxCalendar;
type
TfrmBpSmRk = class(TForm)
ToolBar1: TToolBar;
TBSave: TToolButton;
TBClose: TToolButton;
Panel1: TPanel;
Label1: TLabel;
CRTime: TDateTimePicker;
Label2: TLabel;
CRType: TComboBox;
cxGrid1: TcxGrid;
Tv1: TcxGridDBTableView;
v1P_CodeName: TcxGridDBColumn;
v1P_SPEC: TcxGridDBColumn;
v1P_MF: TcxGridDBColumn;
v1P_KZ: TcxGridDBColumn;
v1RollNum: TcxGridDBColumn;
v1Qty: TcxGridDBColumn;
v1QtyUnit: TcxGridDBColumn;
v1Note: TcxGridDBColumn;
cxGrid1Level1: TcxGridLevel;
ADOQueryCmd: TADOQuery;
ADOQueryTmp: TADOQuery;
DataSource1: TDataSource;
CDS_Main: TClientDataSet;
cxGridPopupMenu1: TcxGridPopupMenu;
Label3: TLabel;
FirstName: TBtnEditA;
v1MJID: TcxGridDBColumn;
v1MJXH: TcxGridDBColumn;
v1CPType: TcxGridDBColumn;
ckName: TComboBox;
Label4: TLabel;
Label5: TLabel;
orderNO: TBtnEditA;
Label6: TLabel;
PRTCodeName: TEdit;
Label7: TLabel;
PRTColor: TEdit;
v1P_Color: TcxGridDBColumn;
v1P_Code: TcxGridDBColumn;
Label8: TLabel;
InoutNo: TEdit;
GroupBox1: TGroupBox;
Panel3: TPanel;
GroupBox2: TGroupBox;
Panel2: TPanel;
cxGrid3: TcxGrid;
Tv3: TcxGridDBTableView;
cxGridDBColumn1: TcxGridDBColumn;
cxGridDBColumn2: TcxGridDBColumn;
cxGridDBColumn6: TcxGridDBColumn;
cxGridDBColumn7: TcxGridDBColumn;
cxGridDBColumn8: TcxGridDBColumn;
cxGridDBColumn12: TcxGridDBColumn;
cxGridDBColumn13: TcxGridDBColumn;
cxGridDBColumn14: TcxGridDBColumn;
cxGridDBColumn15: TcxGridDBColumn;
cxGridDBColumn16: TcxGridDBColumn;
cxGridLevel2: TcxGridLevel;
Label9: TLabel;
MJID: TEdit;
CDS_CP: TClientDataSet;
DS_CP: TDataSource;
CDS_Inout: TClientDataSet;
DS_inout: TDataSource;
cxGrid2: TcxGrid;
TV2: TcxGridDBTableView;
v1SSel: TcxGridDBColumn;
v1OrdDate: TcxGridDBColumn;
v1OrderNo: TcxGridDBColumn;
v1ConNo: TcxGridDBColumn;
v1OrdPerson1: TcxGridDBColumn;
v1Column1: TcxGridDBColumn;
v1CustomerNoName: TcxGridDBColumn;
v1MPRTCodeName: TcxGridDBColumn;
v1PRTColor: TcxGridDBColumn;
v1pbRollNum: TcxGridDBColumn;
v1pbQty: TcxGridDBColumn;
v1rkRollNum: TcxGridDBColumn;
v1rkqty: TcxGridDBColumn;
v1ckRollNum: TcxGridDBColumn;
v1ckQty: TcxGridDBColumn;
v1kcRollNum: TcxGridDBColumn;
v1kcQty: TcxGridDBColumn;
cxGridLevel1: TcxGridLevel;
Panel4: TPanel;
cxButton1: TcxButton;
Panel5: TPanel;
cxGridPopupMenu2: TcxGridPopupMenu;
cxGridPopupMenu3: TcxGridPopupMenu;
procedure FormDestroy(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormShow(Sender: TObject);
procedure TBSaveClick(Sender: TObject);
procedure v1P_CodeNamePropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure ToolButton2Click(Sender: TObject);
procedure TBCloseClick(Sender: TObject);
procedure FirstNameBtnClick(Sender: TObject);
procedure orderNOBtnClick(Sender: TObject);
procedure cxButton1Click(Sender: TObject);
procedure MJIDKeyPress(Sender: TObject; var Key: Char);
procedure Tv3CustomDrawCell(Sender: TcxCustomGridTableView;
ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo;
var ADone: Boolean);
private
// fmainID,fsubID:string;
TblCprk:string;
fiscreate:boolean;
fCRID:integer;
procedure InitGrid();
function savedate():Boolean;
procedure SetComboBox();
function YSData(Order_Main10:TClientDataSet):Boolean;
procedure DoCRkNum();
procedure CreateTable();
procedure DropTable();
{ Private declarations }
public
fkeyNO:string;
FType:integer;
fCKName:string;
{ Public declarations }
end;
var
frmBpSmRk: TfrmBpSmRk;
implementation
uses
U_DataLink,U_Fun10,U_ZDYHelp, U_Bpkclist, U_ProductOrderNewList;
{$R *.dfm}
procedure TfrmBpSmRk.DropTable();
var
strSQL:string;
begin
// TblCprk := '[##CP_INOut123' + trim(DCode) + IntToStr(Handle)+formatdatetime('hhnnsszzz',time) + ']';
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
strSQL := 'IF OBJECT_ID(''tempdb..' + TblCprk + ''') IS NOT NULL DROP TABLE ' + TblCprk;
with adoqueryTmp do
begin
Close;
SQL.Clear;
SQL.Add(strSQL);
ExecSQL;
end;
end;
procedure TfrmBpSmRk.CreateTable();
var
strSQL:string;
begin
TblCprk := '[##CP_INOut123RK' + trim(DCode) + IntToStr(Handle)+formatdatetime('hhnnsszzz',time) + ']';
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
strSQL := 'IF OBJECT_ID(''tempdb..' + TblCprk + ''') IS NOT NULL DROP TABLE ' + TblCprk + #13
+ 'CREATE TABLE ' + TblCprk + ' ('
+ 'MainID VARCHAR(20),'
+ 'subID VARCHAR(20))'#13;
with adoqueryTmp do
begin
Close;
SQL.Clear;
SQL.Add(strSQL);
ExecSQL;
end;
end;
procedure TfrmBpSmRk.DocRkNum();
var
strsql:string;
begin
{ if cds_Cp.IsEmpty then exit;
strsql:='';
with adoqueryTmp do
begin
Close;
SQL.Clear;
SQL.Add('delete from '+TblCprk);
execsql;
end;
with cds_Cp do
begin
DisableControls;
First;
while not eof do
begin
with adoqueryTmp do
begin
Close;
SQL.Clear;
SQL.Add(' insert into '+TblCprk+'(MainID) values( ');
SQL.Add(' '+quotedstr(trim(CDS_CP.fieldbyname('mainID').AsString)));
sql.add(')');
execsql;
end;
next;
end;
EnableControls;
end;
with adoqueryTmp do
begin
close;
sql.Clear;
sql.Add('select * from CP_KC A');
sql.Add('inner join '+TblCprk+' B on B.mainID=A.MainID ');
sql.Add('where A.Qty<>0');
open;
end; }
with adoqueryTmp do
begin
close;
sql.Clear;
sql.Add(' select A.MJXH,A.MJID,A.MJLen,A.MainID,A.SubID,A.MJType,A.MJTypeother,A.MJStr2,A.MJSTR7,B.MPrtCode,B.MPRTSpec,RollNum=1 from WFB_MJJY A ');
sql.Add('inner join JYOrder_Main B on B.MainId=A.MainId');
sql.Add(' where A.MJID='+quotedstr(trim(MJID.Text)));
open;
end;
IF fiscreate=false then
begin
SCreateCDS20(adoqueryTmp,CDS_Inout);
fiscreate:=true;
end;
SCreateCDS20(adoqueryTmp,CDS_Main);
SInitCDSData20(adoqueryTmp,CDS_Main);
end;
function TfrmBpSmRk.YSData(Order_Main10:TClientDataSet):Boolean;
var
CRID,YFID,Price,PriceUnit,OrderUnit,FComTaiTou,cust:String;
begin
Result:=False;
with Order_Main10 do
begin
with ADOQueryTmp do
begin
Close;
SQL.Clear;
sql.Add('select * from JYOrder_main where MainID='''+Trim(Order_Main10.fieldbyname('MainID').AsString)+'''');
Open;
cust:=FieldbyName('customerNOName').AsString;
end;
with ADOQueryTmp do
begin
Close;
SQL.Clear;
sql.Add('select * from JYOrder_sub where MainID='''+Trim(Order_Main10.fieldbyname('MainID').AsString)+'''');
sql.Add(' and subID='''+Trim(Order_Main10.fieldbyname('subID').AsString)+'''');
Open;
Price:=FieldbyName('PrtPrice').AsString;
end;
with ADOQueryTmp do
begin
Close;
SQL.Clear;
sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(cust)+''' and YFDefFlag1=0 ');
Open;
end;
if not ADOQueryTmp.IsEmpty then
begin
CRID:=ADOQueryTmp.fieldbyname('CRID').AsString;
end
else
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update YF_Money_CRID set CRID=CRID+1');
sql.Add('select * from YF_Money_CRID ');
Open;
end;
CRID:=ADOQueryCmd.fieldbyname('CRID').AsString;
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('select * from YF_Money_KC where 1<>1');
Open;
end;
with ADOQueryCmd do
begin
Append;
FieldByName('CRID').Value:=StrToInt(CRID);
FieldByName('FactoryName').Value:=Trim(cust);
FieldByName('ZdyStr1').Value:=<><D3A6><EFBFBD><EFBFBD>';
Post;
end;
end;
with ADOQueryTmp do
begin
Close;
sql.Clear;
sql.Add('select * from YF_Money_CR ');
sql.Add(' where MainID='''+Trim(Order_Main10.fieldbyname('MainID').AsString)+'''');
sql.Add(' and subID='''+Trim(Order_Main10.fieldbyname('subID').AsString)+'''');
sql.Add(' and YFName=''<27><>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>'' ');
Open;
end;
if ADOQueryTmp.IsEmpty then
begin
if GetLSNo(ADOQueryCmd,YFID,'CS','YF_Money_CR',3,1)=False then
begin
Application.MessageBox(<><C8A1><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!','<27><>ʾ',0);
Exit;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('select * from YF_Money_CR where 1<>1');
Open;
end;
with ADOQueryCmd do
begin
Append;
FieldByName('YFID').Value:=Trim(YFID);
FieldByName('YFTypeId').Value:=Trim(Order_Main10.fieldbyname('MainId').AsString);
FieldByName('CRID').Value:=StrToInt(CRID);
FieldByName('Filler').Value:=Trim(DName);
FieldByName('CRType').Value:=<>տ<EFBFBD><D5BF>Ǽ<EFBFBD>';
FieldByName('CRFlag').Value:=<><D3A6><EFBFBD><EFBFBD>';
FieldByName('QtyFlag').Value:=1;
FieldByName('FactoryName').Value:=Trim(cust);
FieldByName('CRTime').Value:=Trim(FormatDateTime('yyyy-MM-dd',date()));
FieldByName('YFType').Value:='<27>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>';
FieldByName('Price').Value:=Price;
//FieldByName('HuiLv').Value:=1;
FieldByName('HuiLv').Value:=1;
FieldByName('BZType').Value:='<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
FieldByName('QtyUnit').Value:=Trim(Order_Main10.fieldbyname('QtyUnit').AsString);
FieldByName('ComTaiTou').Value:=Trim(cust);
FieldByName('YFName').Value:='<27><>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>';
FieldByName('MainId').Value:=Trim(Order_Main10.fieldbyname('Mainid').AsString);
FieldByName('subID').Value:=Trim(Order_Main10.fieldbyname('subID').AsString);
Post;
end;
end
else
begin
YFID:=Trim(ADOQueryTmp.fieldbyname('YFID').AsString);
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('update YF_Money_CR Set Qty=(select isnull(Sum(Qty),0) from BP_INout A ');
sql.Add(' where A.mainID=YF_Money_CR.mainID and A.subiD=YF_Money_CR.subiD and A.CRType=''<27><>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>'' )');
sql.Add(',PS=(select isnull(count(*),0) from BP_INout A ');
sql.Add(' where A.mainID=YF_Money_CR.mainID and A.subiD=YF_Money_CR.subiD and A.CRType=''<27><>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>'' )');
sql.Add(' where YFID='''+Trim(YFID)+'''');
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update YF_Money_CR Set Money=Price*Qty,BBMoney=Price*Qty*HuiLv');
sql.Add(' where YFID='''+Trim(YFID)+'''');
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)');
sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)');
sql.Add(' where CRID='+CRID);
ExecSQL;
end;
end;
Result:=True;
end;
procedure TfrmBpSmRk.SetComboBox();
begin
ckName.Items.Clear;
with adoQueryTmp do
begin
close;
sql.Clear;
sql.Add('select * from KH_ZDY where Type=''CPCK'' ');
if trim(fCKName)<>'' then
sql.Add('and zdyName='+quotedstr(trim(fCKName)));
open;
while not eof do
begin
ckName.Items.Add(trim(fieldbyname('zdyName').AsString));
next;
end;
end;
if ckName.Items.Count>0 then ckName.ItemIndex:=0;
CRType.Items.Clear;
with adoQueryTmp do
begin
close;
sql.Clear;
sql.Add('select * from KH_ZDY where Type=''CPRKTYPE''');
if trim(fCKName)<>'' then
sql.Add('and note='+quotedstr(trim(fCKName)));
open;
while not eof do
begin
CRType.Items.Add(trim(fieldbyname('zdyName').AsString));
next;
end;
end;
if CRType.Items.Count>0 then CRType.ItemIndex:=0;
end;
function TfrmBpSmRk.savedate():Boolean;
var
fkcID:integer;
Filler:string;
FillTime:TdateTime;
maxno:string;
begin
result:=false;
try
if FType=0 then
begin
Filler:=DName;
FillTime:=SGetServerDateTime(adoqueryTmp);
end
else
begin
with adoqueryTmp do
begin
close;
sql.Clear;
sql.Add('select * from CP_InOut');
sql.Add('where CRNO='+quotedstr(trim(fkeyNO)));
open;
Filler:=adoqueryTmp.fieldbyname('Filler').AsString;
FillTime:=adoqueryTmp.fieldbyname('FillTime').AsDateTime;
end;
end;
ADOQueryCmd.Connection.BeginTrans;
with ADOQueryCmd do
begin
Close;
sql.Clear;
SQL.add('Update CP_Kcid Set kcid=kcid+1');
sql.Add('select kcid from CP_Kcid');
Open;
end;
fkcID:=ADOQueryCmd.fieldbyname('kcid').AsInteger;
with CDS_Main do
begin
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('select * from CP_INout');
sql.Add('where 1=2 ');
open;
end;
ADOQueryCmd.Append;
ADOQueryCmd.FieldByName('CRNO').Value:=trim(fkeyNO);
ADOQueryCmd.FieldByName('CRID').Value:=fCRID;
ADOQueryCmd.FieldByName('CKName').Value:=trim(CKName.Text);
ADOQueryCmd.FieldByName('InoutNO').Value:=trim(InoutNO.Text);
ADOQueryCmd.FieldByName('mainID').Value:=trim(fieldbyname('MainID').AsString);
ADOQueryCmd.FieldByName('subID').Value:=trim(fieldbyname('subID').AsString);
ADOQueryCmd.FieldByName('CRTime').Value:=formatdateTime('yyyy-MM-dd',CRTIme.Date);
ADOQueryCmd.FieldByName('CRType').Value:=trim(CRType.Text);
ADOQueryCmd.FieldByName('CRFlag').Value:='<27><><EFBFBD><EFBFBD>';
ADOQueryCmd.FieldByName('MJID').Value:=trim(fieldbyname('MJID').AsString);
ADOQueryCmd.FieldByName('MJXH').Value:=trim(fieldbyname('MJXH').AsString);
ADOQueryCmd.FieldByName('CPTYPE').Value:=trim(fieldbyname('MJTYPE').AsString);
ADOQueryCmd.FieldByName('P_Code').Value:=trim(fieldbyname('MPRTCode').AsString);
ADOQueryCmd.FieldByName('P_CodeName').Value:=trim(fieldbyname('MJSTR7').AsString);
ADOQueryCmd.FieldByName('P_spec').Value:=trim(fieldbyname('MPRTSPEC').AsString);
ADOQueryCmd.FieldByName('P_Color').Value:='';
ADOQueryCmd.FieldByName('P_MF').Value:=0;
ADOQueryCmd.FieldByName('P_KZ').Value:=0;
ADOQueryCmd.FieldByName('RollNum').Value:=trim(fieldbyname('RollNum').AsString);
ADOQueryCmd.FieldByName('Qty').Value:=fieldbyname('MJlen').AsFloat;
ADOQueryCmd.FieldByName('QtyUnit').Value:=trim(fieldbyname('MJTypeother').AsString);
// ADOQueryCmd.FieldByName('note').Value:=trim(fieldbyname('note').AsString);
ADOQueryCmd.FieldByName('Filler').Value:=trim(Filler);
ADOQueryCmd.FieldByName('FillTime').Value:=dateTimetostr(FillTime);
// ADOQueryCmd.FieldByName('FirstNo').Value:=trim(FirstName.TxtCode);
// ADOQueryCmd.FieldByName('FirstName').Value:=trim(FirstName.Text);
if FType=1 then
begin
ADOQueryCmd.FieldByName('editer').Value:=trim(dName);
ADOQueryCmd.FieldByName('editTime').Value:=SGetServerDateTime(adoqueryTmp);
end;
ADOQueryCmd.FieldByName('kcID').Value:=fkcID;
ADOQueryCmd.Post;
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('select * from CP_KC');
sql.Add('where 1=2 ');
open;
end;
ADOQueryCmd.Append;
ADOQueryCmd.FieldByName('kcID').Value:=fkcID;
ADOQueryCmd.FieldByName('CKName').Value:=trim(CKName.Text);
ADOQueryCmd.FieldByName('CRNO').Value:=trim(fkeyNO);
ADOQueryCmd.FieldByName('CRID').Value:=fCRID;
ADOQueryCmd.FieldByName('CRTime').Value:=formatdateTime('yyyy-MM-dd',CRTIme.Date);
ADOQueryCmd.FieldByName('CRType').Value:=trim(CRType.Text);
ADOQueryCmd.FieldByName('CRFlag').Value:='<27><><EFBFBD><EFBFBD>';
ADOQueryCmd.FieldByName('mainID').Value:=trim(fieldbyname('mainID').AsString);
ADOQueryCmd.FieldByName('subID').Value:=trim(fieldbyname('subID').AsString);
ADOQueryCmd.FieldByName('MJXH').Value:=trim(fieldbyname('MJXH').AsString);
ADOQueryCmd.FieldByName('MJID').Value:=trim(fieldbyname('MJID').AsString);
ADOQueryCmd.FieldByName('CPTYPE').Value:=trim(fieldbyname('MJTYPE').AsString);
ADOQueryCmd.FieldByName('P_Code').Value:=trim(fieldbyname('MPRTCode').AsString);
ADOQueryCmd.FieldByName('P_CodeName').Value:=trim(fieldbyname('MJSTR7').AsString);
ADOQueryCmd.FieldByName('P_spec').Value:=trim(fieldbyname('MPRTSPEC').AsString);
ADOQueryCmd.FieldByName('P_Color').Value:='';
ADOQueryCmd.FieldByName('P_MF').Value:=0;
ADOQueryCmd.FieldByName('P_KZ').Value:=0;
ADOQueryCmd.FieldByName('RollNum').Value:=1;
ADOQueryCmd.FieldByName('Qty').Value:=fieldbyname('MJlen').AsFloat;
ADOQueryCmd.FieldByName('QtyUnit').Value:=trim(fieldbyname('MJTypeother').AsString);
ADOQueryCmd.FieldByName('kcID').Value:=fkcID;
ADOQueryCmd.Post;
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('update WFB_MJJY SET MJStr2=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' ');
sql.Add('where MJID='+quotedstr(trim(CDS_Main.fieldbyname('MJID').AsString)));
execsql;
end;
end;
// CDS_Main.EnableControls;
ADOQueryCmd.Connection.CommitTrans;
fCRID:=fCRID+1;
result:=true;
except
// CDS_Main.EnableControls;
ADOQueryCmd.Connection.RollbackTrans;
end;
end;
procedure TfrmBpSmRk.InitGrid();
begin
try
with adoqueryTmp do
begin
Close;
sql.Clear;
Filtered:=False;
sql.add('exec P_View_Order_CP :begdate,:enddate,:WSql') ;
Parameters.ParamByName('begdate').Value:='2012-10-01';
Parameters.ParamByName('enddate').Value:='2011-10-01';
Parameters.ParamByName('WSql').Value:='';
Open;
end;
SCreateCDS20(adoqueryTmp,CDS_CP);
SInitCDSData20(adoqueryTmp,CDS_CP);
with adoqueryTmp do
begin
close;
sql.Clear;
sql.Add('select A.* from CP_InOut A');
// sql.Add('left join JYOrder_sub B on B.mainID=A.mainID and B.subID=A.subID ');
sql.Add('where A.CRNO='+quotedstr(trim(fkeyNO)));
open;
end;
SCreateCDS20(adoqueryTmp,CDS_Inout);
SCreateCDS20(adoqueryTmp,CDS_Main);
SInitCDSData20(adoqueryTmp,CDS_Main);
if not CDS_Main.IsEmpty then
begin
CRTime.Date:= CDS_Main.fieldbyname('CRTime').AsDateTime;
CKName.ItemIndex:=CKName.Items.IndexOf(trim(CDS_Main.fieldbyname('CKName').AsString));
CRType.ItemIndex:=CRType.Items.IndexOf(trim(CDS_Main.fieldbyname('CRType').AsString));
// fmainID:=trim(CDS_Main.fieldbyname('MainID').AsString);
// fsubID:=trim(CDS_Main.fieldbyname('subID').AsString);
InoutNO.Text:=trim(CDS_Main.fieldbyname('InoutNO').AsString);
// orderNo.Text:=trim(CDS_Main.fieldbyname('orderNo').AsString);
// PRTCodeName.Text:=trim(CDS_Main.fieldbyname('PRTCodeName').AsString);
// PRTColor.Text:=trim(CDS_Main.fieldbyname('PRTColor').AsString);
// FirstName.TxtCode:=trim(CDS_Main.fieldbyname('FirstNo').AsString);
// FirstName.Text:=trim(CDS_Main.fieldbyname('FirstName').AsString);
end;
finally
end;
end;
procedure TfrmBpSmRk.FormDestroy(Sender: TObject);
begin
frmBpSmRk:=nil;
end;
procedure TfrmBpSmRk.FormCreate(Sender: TObject);
begin
CRTime.Date:=DServerDate;
GroupBox2.Align:=alclient;
fCRID:=1;
CreateTable();
fiscreate:=false;
end;
procedure TfrmBpSmRk.FormClose(Sender: TObject; var Action: TCloseAction);
begin
DropTable();
writeCxGrid(self.Caption,Tv1,'<27><>Ʒ<EFBFBD>ֿ<EFBFBD>');
writeCxGrid(self.Caption,Tv2,'<27><>Ʒ<EFBFBD>ֿ<EFBFBD>');
writeCxGrid(self.Caption,Tv3,'<27><>Ʒ<EFBFBD>ֿ<EFBFBD>');
Action:=cahide;
end;
procedure TfrmBpSmRk.FormShow(Sender: TObject);
begin
readCxGrid(self.Caption,Tv1,'<27><>Ʒ<EFBFBD>ֿ<EFBFBD>');
readCxGrid(self.Caption,Tv2,'<27><>Ʒ<EFBFBD>ֿ<EFBFBD>');
readCxGrid(self.Caption,Tv3,'<27><>Ʒ<EFBFBD>ֿ<EFBFBD>');
SetComboBox();
InitGrid();
if fType=0 then
begin
if GetLSNo(ADOQueryCmd,fkeyNO,'RK','CP_InOut',3,1)=False then
begin
// ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox(<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!','<27><>ʾ',0);
Exit;
end;
inoutNo.Text:='R'+Trim(RightBStr(fkeyNo,Length(fkeyNo)-2));
end;
MJID.SetFocus;
end;
procedure TfrmBpSmRk.TBSaveClick(Sender: TObject);
begin
if cds_main.IsEmpty then exit;
CRTime.SetFocus;
if trim(CRType.Text)='' then
begin
application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͳ<EFBFBD><CDB2><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>','<27><>ʾ<EFBFBD><CABE>Ϣ',0);
exit;
end;
if trim(inoutNo.Text)='' then
begin
application.MessageBox('<27><><EFBFBD><EFBFBD>Ų<EFBFBD><C5B2><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>','<27><>ʾ<EFBFBD><CABE>Ϣ',0);
exit;
end;
if savedate() then
begin
InitCDSToCDS(CDS_Main,CDS_Inout);
CDS_Main.Delete;
with CDS_Inout do
begin
edit;
fieldbyname('SDefNote').Value:='<27><><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD>';
post;
end;
end
else
begin
// InitCDSToCDS(CDS_Main,CDS_Inout);
with CDS_Inout do
begin
append;
fieldbyname('MJID').Value:=CDS_Main.fieldbyname('MJID').AsString;
fieldbyname('SDefNote').Value:='<27><><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>';
post;
end;
end;
end;
procedure TfrmBpSmRk.v1P_CodeNamePropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
begin
try
frmZDYHelp:=TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag:='Cloth';
flagname:='<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
if ShowModal=1 then
begin
Self.CDS_Main.Edit;
Self.CDS_Main.FieldByName('P_CodeName').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString);
Self.CDS_Main.FieldByName('P_Code').Value:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString);
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmBpSmRk.ToolButton2Click(Sender: TObject);
begin
if CDS_Main.IsEmpty then exit;
CDS_Main.Delete;
end;
procedure TfrmBpSmRk.TBCloseClick(Sender: TObject);
begin
close;
end;
procedure TfrmBpSmRk.FirstNameBtnClick(Sender: TObject);
begin
try
frmZDYHelp:=TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag:='Factory';
flagname:='<27><><EFBFBD><EFBFBD><EFBFBD>ص<EFBFBD>';
MainType:='RanFactory';
if ShowModal=1 then
begin
FirstName.Text:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYName').AsString);
FirstName.TxtCode:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYNo').AsString);
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmBpSmRk.orderNOBtnClick(Sender: TObject);
begin
{ frmProductOrderNewList:=TfrmProductOrderNewList.Create(Application);
with frmProductOrderNewList do
begin
DParameters1:='<27><>Ȩ<EFBFBD><C8A8>';
if showmodal=1 then
begin
self.fmainID:=trim(Order_Main.fieldbyname('MainID').AsString);
self.fsubID:=trim(Order_Main.fieldbyname('subID').AsString);
self.orderNo.Text:=trim(Order_Main.fieldbyname('orderNo').AsString);
self.PRTCodeName.Text:=trim(Order_Main.fieldbyname('PRTCodeName').AsString);
self.PRTColor.Text:=trim(Order_Main.fieldbyname('PRTColor').AsString);
end;
free;
end; }
end;
procedure TfrmBpSmRk.cxButton1Click(Sender: TObject);
begin
frmProductOrderNewList:=TfrmProductOrderNewList.create(self);
with frmProductOrderNewList do
begin
// fType:=10;
// fckName:=self.fckName;
if showmodal=1 then
begin
self.CDS_CP.EmptyDataSet;
Order_Main.DisableControls;
Order_Main.First;
while not Order_Main.Eof do
begin
if (order_main.fieldbyname('ssel').AsBoolean) and
(not self.CDS_CP.Locate('MprtCode',order_main.fieldbyname('MprtCode').AsString,[])) then
begin
InitCDSToCDS(order_main,self.CDS_CP);
end;
Order_Main.Next;
end;
Order_Main.EnableControls;
end;
free;
end;
DocRkNum();
end;
procedure TfrmBpSmRk.MJIDKeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then
begin
if trim(MJID.Text)='' then exit;
DocRkNum();
IF CDS_Main.IsEmpty then
begin
with CDS_Inout do
begin
append;
fieldbyname('MJID').Value:=trim(MJID.Text);
fieldbyname('SDefNote').Value:=<><C9A8>ʧ<EFBFBD><CAA7><<3C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EBB2BB><EFBFBD><EFBFBD>>';
post;
end;
end
else
IF trim(CDS_Main.FieldByName('MJStr2').AsString)<><><CEB4><EFBFBD><EFBFBD>' then
begin
with CDS_Inout do
begin
append;
fieldbyname('MJID').Value:=trim(MJID.Text);
fieldbyname('SDefNote').Value:=<><C9A8>ʧ<EFBFBD><CAA7><<3C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>>';
post;
end;
end
else
if CDS_Main.Locate('MJID',trim(MJID.Text),[]) then
begin
TBsave.Click;
end;
MJID.text:='';
MJID.SetFocus;
end;
end;
procedure TfrmBpSmRk.Tv3CustomDrawCell(Sender: TcxCustomGridTableView;
ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo;
var ADone: Boolean);
var
i:integer;
begin
i:=tv3.GetColumnByFieldName('SDefNote').Index;
if (AViewInfo.GridRecord.Values[i]<>'<27><><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD>') then
ACanvas.Brush.Color:=clred;
end;
end.