You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

428 lines
16 KiB
Plaintext

unit u_op_seaewt_pladd;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, BusinessSkinForm, bsSkinCtrls, StdCtrls, wwdbdatetimepicker,ADODB,DB;
type
Tfrm_op_seaewt_pladd = class(TForm)
bsBusinessSkinForm1: TbsBusinessSkinForm;
bsSkinGroupBox1: TbsSkinGroupBox;
bsSkinButton2: TbsSkinButton;
data1: TDataSource;
bsSkinButton3: TbsSkinButton;
OpenDialog1: TOpenDialog;
Edit1: TEdit;
Label1: TLabel;
bsSkinButton1: TbsSkinButton;
procedure bsSkinButton2Click(Sender: TObject);
procedure bsSkinButton3Click(Sender: TObject);
procedure bsSkinButton4Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
frm_op_seaewt_pladd: Tfrm_op_seaewt_pladd;
frm_op_seae_add_num:integer;
implementation
uses u_main, u_op_seae, my_sys_function, u_data_share, u_op_seae_weituo;
{$R *.dfm}
procedure Tfrm_op_seaewt_pladd.bsSkinButton2Click(Sender: TObject);
begin
close;
end;
procedure Tfrm_op_seaewt_pladd.bsSkinButton4Click(Sender: TObject);
begin
close;
end;
procedure Tfrm_op_seaewt_pladd.bsSkinButton3Click(Sender: TObject);
var
afield : variant;
aOR_ID,i,z: Integer;
PNO,OrgBSNO,oldbsno,oldmblno,oldmblhead,oldmblnum,tmpstr,newmblnum:string;
aQuery:TADOQuery;
isnum,ISCOPYFEE:BOOL;
begin
if data1.DataSet.IsEmpty then
begin
showmessage('没有复制母体,不能复制新建!');
exit;
end;
ISCOPYFEE:=FALSE;
afield := vararraycreate([0,data1.DataSet.fieldcount-1],varvariant);
for i := 0 to (data1.DataSet.fieldcount-1) do
begin
afield[i] :=data1.DataSet.fields[i].value ;
end;
aOR_ID:=data1.DataSet.fieldbyname('OR_ID').AsInteger;
for z:=1 to StrToInt(Edit1.Text) do begin
data1.DataSet.append;
for i := 0 to (data1.DataSet.fieldcount-1) do
begin
if data1.DataSet.fields[i].FieldName<>'OR_ID' then
data1.DataSet.fields[i].value := afield[i] ;
end;
data1.DataSet['揽货人']:=employee;
data1.DataSet['录入人']:=employee;
data1.DataSet['录入日期']:=date;
//data1.DataSet['开船日期']:=date;
data1.DataSet['海运费']:=0;
data1.DataSet['销售部门']:=department;
data1.DataSet['状态']:='新建订舱';
data1.DataSet['驳回原因']:='';
data1.DataSet['驳回原因']:='';
data1.DataSet['订舱编号']:='';
// data1.DataSet['发送舱单']:='';
// data1.DataSet['开船日期']:=null;
data1.DataSet['状态']:='新建订舱';
data1.DataSet['编号']:='';
data1.DataSet['业务编号']:='';
data1.DataSet['提交人']:='';
data1.DataSet['提交时间']:=null;
data1.DataSet['审核人']:='';
data1.DataSet['审核时间']:=null;
data1.DataSet['主提单号']:='';
{
if frm_data_share.t_sys_employee.Locate('姓名',employee,[]) then begin
data1.DataSet['业务来源']:=frm_data_share.t_sys_employee.fieldbyname('业务来源').AsString;
data1.DataSet['来源明细']:=frm_data_share.t_sys_employee.fieldbyname('来源明细').AsString;
end;
}
data1.DataSet['操作员']:='';
data1.DataSet['客服员']:='';
data1.DataSet.Post;
aQuery:=CreateAdoQuery;
try
with aQuery do begin
close;sql.clear;
sql.Add('select * from t_opor_ctn where OR_ID='+inttostr(aOR_ID));
open;
if not frm_op_seae_weituo.t_op_ctn.active then
frm_op_seae_weituo.t_op_ctn.Open;
first;
while not eof do begin
frm_op_seae_weituo.t_op_ctn.Insert;
frm_op_seae_weituo.t_op_ctn.fieldbyname('代码').AsString:=aQuery.fieldbyname('代码').AsString;
frm_op_seae_weituo.t_op_ctn.fieldbyname('尺寸').AsString:=aQuery.fieldbyname('尺寸').AsString;
frm_op_seae_weituo.t_op_ctn.fieldbyname('箱型').AsString:=aQuery.fieldbyname('箱型').AsString;
frm_op_seae_weituo.t_op_ctn.fieldbyname('数量').Asinteger:=aQuery.fieldbyname('数量').Asinteger;
frm_op_seae_weituo.t_op_ctn.fieldbyname('TEU').Asinteger:=aQuery.fieldbyname('TEU').Asinteger;
frm_op_seae_weituo.t_op_ctn.fieldbyname('件数').Asinteger:=aQuery.fieldbyname('件数').Asinteger;
frm_op_seae_weituo.t_op_ctn.fieldbyname('重量').Asfloat:=aQuery.fieldbyname('重量').Asfloat;
frm_op_seae_weituo.t_op_ctn.fieldbyname('尺码').Asfloat:=aQuery.fieldbyname('尺码').Asfloat;
frm_op_seae_weituo.t_op_ctn.fieldbyname('表现形式').AsString:=aQuery.fieldbyname('表现形式').AsString;
frm_op_seae_weituo.t_op_ctn.fieldbyname('箱号').AsString:=aQuery.fieldbyname('箱号').AsString;
frm_op_seae_weituo.t_op_ctn.fieldbyname('封号').AsString:=aQuery.fieldbyname('封号').AsString;
frm_op_seae_weituo.t_op_ctn.fieldbyname('包装').AsString:=aQuery.fieldbyname('包装').AsString;
frm_op_seae_weituo.t_op_ctn.fieldbyname('品名').AsString:=aQuery.fieldbyname('品名').AsString;
frm_op_seae_weituo.t_op_ctn.fieldbyname('唛头').AsString:=aQuery.fieldbyname('唛头').AsString;
frm_op_seae_weituo.t_op_ctn.fieldbyname('备注').AsString:=aQuery.fieldbyname('备注').AsString;
frm_op_seae_weituo.t_op_ctn.Post;
next;
end;
if (ISCOPYFEE=TRUE) OR (Application.MessageBox('是否复制费用信息?','提示',MB_YESNO+ MB_ICONINFORMATION)=IDYES) then begin
ISCOPYFEE:=TRUE;
close;sql.clear;
sql.Add('select * from t_ch_orderfee where OR_ID='+inttostr(aOR_ID));
open;
if not IsEmpty then begin
first;
while not eof do begin
frm_op_seae_weituo.t_ch_fee.Insert;
frm_op_seae_weituo.t_ch_fee.fieldbyname('费用名称').AsString:=aQuery.fieldbyname('费用名称').AsString;
frm_op_seae_weituo.t_ch_fee.fieldbyname('应收标准').AsString:=aQuery.fieldbyname('应收标准').AsString;
frm_op_seae_weituo.t_ch_fee.fieldbyname('应收币别').AsString:=aQuery.fieldbyname('应收币别').AsString;
frm_op_seae_weituo.t_ch_fee.fieldbyname('应收单价').Asfloat:=aQuery.fieldbyname('应收单价').Asfloat;
frm_op_seae_weituo.t_ch_fee.fieldbyname('应收数量').Asfloat:=aQuery.fieldbyname('应收数量').Asfloat;
frm_op_seae_weituo.t_ch_fee.fieldbyname('应收金额').Asfloat:=aQuery.fieldbyname('应收金额').Asfloat;
frm_op_seae_weituo.t_ch_fee.fieldbyname('应收汇率').Asfloat:=aQuery.fieldbyname('应收汇率').Asfloat;
frm_op_seae_weituo.t_ch_fee.fieldbyname('应收客户').AsString:=aQuery.fieldbyname('应收客户').AsString;
frm_op_seae_weituo.t_ch_fee.fieldbyname('应付标准').AsString:=aQuery.fieldbyname('应付标准').AsString;
frm_op_seae_weituo.t_ch_fee.fieldbyname('应付币别').AsString:=aQuery.fieldbyname('应付币别').AsString;
frm_op_seae_weituo.t_ch_fee.fieldbyname('应付单价').Asfloat:=aQuery.fieldbyname('应付单价').Asfloat;
frm_op_seae_weituo.t_ch_fee.fieldbyname('应付数量').Asfloat:=aQuery.fieldbyname('应付数量').Asfloat;
frm_op_seae_weituo.t_ch_fee.fieldbyname('应付金额').Asfloat:=aQuery.fieldbyname('应付金额').Asfloat;
frm_op_seae_weituo.t_ch_fee.fieldbyname('应付汇率').Asfloat:=aQuery.fieldbyname('应付汇率').Asfloat;
frm_op_seae_weituo.t_ch_fee.fieldbyname('应付客户').AsString:=aQuery.fieldbyname('应付客户').AsString;
frm_op_seae_weituo.t_ch_fee.post;
next;
end;
end;
end;
end;
finally
freeandnil(aQuery);
end;
end;
close;
end;
{
procedure Tfrm_op_seae_add.bsSkinButton4Click(Sender: TObject);
var
EdiString:TStrings;
FileNames,bsno:String;
i: Integer;
begin
if (frm_op_seae_add_num=3) or (frm_op_seae_add_num=2) then
begin
data1.DataSet.append;
for i := 0 to (data1.DataSet.DataSource.DataSet.fieldcount-1) do
begin
data1.DataSet[data1.DataSet.DataSource.DataSet.fields[i].FieldName]:=
data1.DataSet.DataSource.DataSet[data1.DataSet.DataSource.DataSet.fields[i].FieldName];
end;
if bsSkinCheckRadioBox1.Checked then
data1.DataSet['装运方式']:=bsSkinCheckRadioBox1.Caption;
if bsSkinCheckRadioBox2.Checked then
data1.DataSet['装运方式']:=bsSkinCheckRadioBox2.Caption;
if bsSkinCheckRadioBox3.Checked then
data1.DataSet['装运方式']:=bsSkinCheckRadioBox3.Caption;
if bsSkinCheckRadioBox4.Checked then
data1.DataSet['装运方式']:=bsSkinCheckRadioBox4.Caption;
if bsSkinCheckRadioBox5.Checked then
data1.DataSet['装运方式']:=bsSkinCheckRadioBox5.Caption;
if bsSkinCheckRadioBox6.Checked then
data1.DataSet['装运方式']:=bsSkinCheckRadioBox6.Caption;
if bsSkinCheckRadioBox7.Checked then
data1.DataSet['业务类型']:='更改单'
else
data1.DataSet['业务类型']:='普通货';
data1.DataSet['业务编号']:='';
data1.DataSet['主编号']:='';
if not (Trim(frm_data_share.t_sys_noset.fieldbyname('出号规则').Asstring)='手动编辑') then
data1.DataSet['委托编号']:='';
data1.DataSet['编号']:='';
data1.DataSet['箱型1']:=0;
data1.DataSet['箱型2']:=0;
data1.DataSet['箱型3']:=0;
data1.DataSet['箱型4']:=0;
data1.DataSet['箱型5']:=0;
data1.DataSet['箱型6']:=0;
data1.DataSet['箱型7']:=0;
data1.DataSet['箱型8']:=0;
data1.DataSet['箱型9']:=0;
data1.DataSet['箱型10']:=0;
data1.DataSet['其他箱型']:=0;
data1.DataSet['箱TEU']:=0;
data1.DataSet['集装箱']:='';
data1.DataSet['箱数大写']:='';
data1.DataSet['计费标准']:='';
data1.DataSet['报关日期']:=null;
data1.DataSet['报关员']:='';
data1.DataSet['报关单号']:='';
data1.DataSet['核销单号']:='';
data1.DataSet['手册号']:='';
data1.DataSet['是否退税']:=0;
data1.DataSet['退税日期']:=null;
data1.DataSet['是否通关']:=0;
data1.DataSet['通关日期']:=null;
data1.DataSet['分单列表']:='';
data1.DataSet['发票号']:='';
data1.DataSet['商品编码']:='';
data1.DataSet['是否签单']:=0;
data1.DataSet['请求派车']:=0;
data1.DataSet['是否派车']:=0;
data1.DataSet['是否退税']:=0;
data1.DataSet['是否通关']:=0;
data1.DataSet['是否退舱']:=0;
data1.DataSet['是否解锁']:=0;
data1.DataSet['解锁日期']:=null;
data1.DataSet['解锁人']:='';
data1.DataSet['应收陆运']:=0;
data1.DataSet['应付陆运']:=0;
data1.DataSet['陆运利润']:=0;
data1.DataSet['业务状态']:='接受委托';
data1.DataSet['费用状态']:='录入状态';
data1.DataSet['录入人']:=employee;
data1.DataSet['录入日期']:=date;
data1.DataSet['分部名称']:=subComp;
data1.DataSet['操作员']:=employee;
data1.DataSet['报关操作']:=employee;
data1.DataSet['报检操作']:=employee;
data1.DataSet['操作部门']:=department;
data1.DataSet['会计期间']:=wwDBDateTimePicker1.date;
data1.DataSet['周次']:=WeekofYear(wwDBDateTimePicker1.date);
data1.DataSet['财务']:=0;
data1.DataSet['财务凭证']:='';
data1.DataSet['件数包装']:='';
data1.DataSet['货物重量']:='';
data1.DataSet['货物尺码']:='';
data1.DataSet['货物描述']:='';
data1.DataSet['分单列表']:='';
data1.DataSet['备案号']:='';
data1.DataSet['运抵国']:='';
data1.DataSet['境内货源地']:='';
data1.DataSet['批准文号']:='';
data1.DataSet['成交方式']:='';
data1.DataSet['净重']:=0;
data1.DataSet['单价']:='';
data1.DataSet['总价']:='';
data1.DataSet['商品名称']:='';
data1.DataSet['数量单位']:='';
data1.DataSet['接单日期']:=null;
data1.DataSet['报检日期']:=null;
data1.DataSet['报检单号']:='';
data1.DataSet['验货时间']:=null;
data1.DataSet['实验时间']:=null;
data1.DataSet['熏蒸时间']:=null;
data1.DataSet['出证时间']:=null;
data1.DataSet['实验内容']:='';
data1.DataSet['币制']:='';
data1.DataSet['财务']:=0;
data1.DataSet['财务凭证']:='';
data1.DataSet['是否打印']:=0;
data1.DataSet['发货人']:='';
data1.DataSet['发货人代码']:='';
data1.DataSet['收货人']:='';
data1.DataSet['收货人代码']:='';
data1.DataSet['通知人']:='';
data1.DataSet['通知人代码']:='';
data1.DataSet['销售订舱']:=0;
data1.DataSet['应收海运费']:=0;
data1.DataSet['应付海运费']:=0;
data1.DataSet['船公司代理费']:=0;
data1.DataSet['捷丰代理费']:=0;
data1.DataSet['香港付费']:=0;
end
else
begin
bsno:=get_id;
data1.DataSet.Append;
if bsSkinCheckRadioBox1.Checked then
data1.DataSet['装运方式']:=bsSkinCheckRadioBox1.Caption;
if bsSkinCheckRadioBox2.Checked then
data1.DataSet['装运方式']:=bsSkinCheckRadioBox2.Caption;
if bsSkinCheckRadioBox3.Checked then
data1.DataSet['装运方式']:=bsSkinCheckRadioBox3.Caption;
if bsSkinCheckRadioBox4.Checked then
data1.DataSet['装运方式']:=bsSkinCheckRadioBox4.Caption;
if bsSkinCheckRadioBox5.Checked then
data1.DataSet['装运方式']:=bsSkinCheckRadioBox5.Caption;
if bsSkinCheckRadioBox6.Checked then
data1.DataSet['装运方式']:=bsSkinCheckRadioBox6.Caption;
if bsSkinCheckRadioBox7.Checked then
data1.DataSet['业务类型']:='更改单'
else
data1.DataSet['业务类型']:='普通货';
data1.DataSet['会计期间']:=wwDBDateTimePicker1.date;
data1.DataSet['周次']:=WeekofYear(wwDBDateTimePicker1.date);
data1.DataSet['录入人']:=employee;
data1.DataSet['录入日期']:=date;
data1.DataSet['分部名称']:=subComp;
data1.DataSet['操作员']:=employee;
data1.DataSet['报关操作']:=employee;
data1.DataSet['报检操作']:=employee;
// data1.DataSet['揽货人']:=employee;
data1.DataSet['客服员']:=employee;
data1.DataSet['销售部门']:=department;
data1.DataSet['操作部门']:=department;
data1.DataSet['起运港']:=get_parameters_value(14,'QINGDAO,CHINA');
data1.DataSet['装货港']:=get_parameters_value(16,'QINGDAO,CHINA');
data1.DataSet['提单份数']:=get_parameters_value(20,'THREE');
// data1.DataSet['副本提单份数']:=get_parameters_value(20,'THREE');
if copy(data1.DataSet.fieldbyname('装运方式').asstring,1,4)='拼箱'then
data1.DataSet['运输条款']:=get_parameters_value(48,'CFS-CFS')
else
data1.DataSet['运输条款']:=get_parameters_value(21,'CY-CY');
data1.DataSet['唛头']:=get_parameters_value(22,'N/M');
data1.DataSet['货物描述']:=get_parameters_value(116,'');
data1.DataSet['发货人代码']:=get_parameters_value(124,'');
data1.DataSet['付费方式']:=get_parameters_value(23,'FREIGHT PREPAID');
data1.DataSet['签单地点']:=get_parameters_value(49,'QINGDAO,CHINA');
data1.DataSet['预付地点']:=get_parameters_value(50,'QINGDAO,CHINA');
data1.DataSet['退税日期']:=null;
data1.DataSet['签单日期']:=null;
data1.DataSet['派车日期']:=null;
data1.DataSet['寄单日期']:=null;
data1.DataSet['是否寄单']:=0;
data1.DataSet['是否退税']:=0;
data1.DataSet['是否通关']:=0;
data1.DataSet['是否签单']:=0;
data1.DataSet['请求派车']:=0;
data1.DataSet['是否派车']:=0;
data1.DataSet['是否解锁']:=0;
data1.DataSet['是否退舱']:=0;
data1.DataSet['解锁日期']:=null;
data1.DataSet['解锁人']:='';
data1.DataSet['应收陆运']:=0;
data1.DataSet['应付陆运']:=0;
data1.DataSet['陆运利润']:=0;
data1.DataSet['财务']:=0;
data1.DataSet['财务凭证']:='';
data1.DataSet['是否打印']:=0;
data1.DataSet['销售订舱']:=0;
data1.DataSet['编号']:=bsno;
data1.DataSet['业务来源']:='';
data1.DataSet['来源明细']:='';
data1.DataSet['应收海运费']:=0;
data1.DataSet['应付海运费']:=0;
data1.DataSet['船公司代理费']:=0;
data1.DataSet['捷丰代理费']:=0;
data1.DataSet['香港付费']:=0;
end;
EdiString:=TStringList.Create;
try
OpenDialog1.Execute;
FileNames:=OpenDialog1.FileName;
if FileNames<>'' then begin
EdiString.LoadFromFile(FileNames);
NewEdiSEAE(EdiString,data1);
end;
finally
FreeAndNil(EdiString);
end;
if frm_op_seae_add_num=1 then
begin
frm_op_seae.Notebook1.PageIndex:=1;
frm_op_seae.bsSkinButton11.Caption:='返回列表';
end;
if frm_op_seae_add_num=2 then
begin
frm_op_seae.Notebook1.PageIndex:=1;
frm_op_seae.bsSkinButton11.Caption:='返回主票';
end;
if frm_op_seae_add_num=3 then
begin
frm_op_seae.Notebook1.PageIndex:=1;
frm_op_seae.bsSkinButton11.Caption:='返回主票';
frm_op_seae.t_op_seae2.Enabled:=false;
frm_op_seae.t_op_seae2.DataSet:=frm_op_seae.t_op_seae_fen;
frm_op_seae.t_op_seae2.Enabled:=true;
end;
close;
end;
}
end.