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.

461 lines
16 KiB
Plaintext

unit u_op_seae_pladd;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, BusinessSkinForm, bsSkinCtrls, StdCtrls, wwdbdatetimepicker,ADODB,DB;
type
Tfrm_op_seae_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_seae_pladd: Tfrm_op_seae_pladd;
frm_op_seae_add_num:integer;
implementation
uses u_main, u_op_seae, my_sys_function, u_data_share;
{$R *.dfm}
procedure Tfrm_op_seae_pladd.bsSkinButton2Click(Sender: TObject);
begin
close;
end;
procedure Tfrm_op_seae_pladd.bsSkinButton4Click(Sender: TObject);
begin
close;
end;
procedure Tfrm_op_seae_pladd.bsSkinButton3Click(Sender: TObject);
var
afield : variant;
i,z,numlength,oldmblInt: Integer;
PNO,OrgBSNO,oldbsno,oldmblno,oldmblhead,oldmblnum,tmpstr,newmblnum:string;
aQuery:TADOQuery;
isnum:BOOL;
begin
if data1.DataSet.IsEmpty then
begin
showmessage('没有复制母体,不能复制新建!');
exit;
end;
oldbsno:=data1.DataSet.FieldByName('编号').AsString;
oldmblno:=data1.DataSet.FieldByName('主提单号').AsString;
if (TbsSkinButton(Sender).Tag=2) then begin
isnum:=true;
For i :=Length(oldmblno) downTo 1 do begin
// tmpstr:=copy(oldmblno, i, 1);
if isnum then begin
if (oldmblno[i] in ['0','1','2','3','4','5','6','7','8','9']) then begin
oldmblnum:=oldmblno[i]+oldmblnum;
end else begin
isnum:=false;
oldmblhead:=oldmblno[i]+oldmblhead;
end;
end else begin
oldmblhead:=oldmblno[i]+oldmblhead;
end;
end;
numlength:=Length(oldmblnum);
end;
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;
if (TbsSkinButton(Sender).Tag=2) then begin
if Length(oldmblnum)=0 then oldmblnum:='0';
oldmblInt:=StrToInt64(oldmblnum);
end;
for z:=1 to StrToInt(Edit1.Text) do begin
if (TbsSkinButton(Sender).Tag=2) then begin
oldmblInt:=oldmblInt+1;
oldmblnum:=inttostr(oldmblInt);
while (Length(oldmblnum)<numlength) do begin
oldmblnum:='0'+oldmblnum;
end;
end;
data1.DataSet.append;
for i := 0 to (data1.DataSet.fieldcount-1) do
begin
data1.DataSet.fields[i].value := afield[i] ;
end;
data1.DataSet['业务编号']:='';
data1.DataSet['主编号']:='';
OrgBSNO:=get_id;
data1.DataSet['编号']:=OrgBSNO;
data1.DataSet['订舱单号']:='';
data1.DataSet['委托编号']:='';
if (TbsSkinButton(Sender).Tag=2) then begin
data1.DataSet['主提单号']:=oldmblhead+oldmblnum;
end else begin
data1.DataSet['主提单号']:='';
end;
data1.DataSet['IRCODE']:='';
data1.DataSet['是否解锁']:=0;
data1.DataSet['解锁日期']:=null;
data1.DataSet['解锁人']:='';
data1.DataSet['是否寄单']:=0;
data1.DataSet['BC状态']:='N';
data1.DataSet['FEE']:=0;
data1.DataSet['FEE2']:=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['操作部门']:=department;
data1.DataSet['报关操作']:=employee;
data1.DataSet['报检操作']:=employee;
data1.DataSet['海尔联系部门']:='';
data1.DataSet['提单签发状态']:='';
data1.DataSet['财务']:=0;
data1.DataSet['财务凭证']:='';
data1.DataSet['财务凭证2']:='';
data1.DataSet['是否打印']:=0;
data1.DataSet['费用封帐日期']:=null;
data1.DataSet['总价']:='0';
data1.DataSet['BC状态']:='N';
data1.DataSet['凭证日期']:=null;
data1.DataSet['提交财务日期']:=null;
data1.DataSet['自责更改']:='0';
data1.DataSet['应收海运费']:=0;
data1.DataSet['应付海运费']:=0;
data1.DataSet['船公司代理费']:=0;
data1.DataSet['捷丰代理费']:='';
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.Post;
aQuery:=CreateAdoQuery;
try
With aQuery do begin
Close;sql.clear;
sql.add('insert into t_op_ctn([编号],[代码],[尺寸],[箱型],[数量],[TEU],[表现形式],[箱号],[封号],[件数],[包装],[重量],[尺码],[品名],[唛头],[备注],[A],[B],[开],[掏]');
sql.add(',[货物描述],[提单号],[场站],[车队],[对帐],[核销],[发箱日期],[回箱日期],[厂址],[称重方式],[称重重量],[VGM联系人],[VGM联系联系方式],[VGM签名],[VGM称重日期],[称重地点],[箱皮重]) ');
sql.add(' select '''+OrgBSNO+''',[代码],[尺寸],[箱型],[数量],[TEU],[表现形式],[箱号],[封号],[件数],[包装],[重量],[尺码],[品名],[唛头],[备注],[A],[B],[开],[掏]');
sql.add(',[货物描述],[提单号],[场站],[车队],[对帐],[核销],[发箱日期],[回箱日期],[厂址],[称重方式],[称重重量],[VGM联系人],[VGM联系联系方式],[VGM签名],[VGM称重日期],[称重地点],[箱皮重] from t_op_ctn where 编号='''+oldbsno+'''');
execsql;
Close;sql.clear;
sql.add('insert into T_OP_AMS(编号,发货人国家代码,[发货人联系电话],[通知人联系电话],[收货人联系电话],[发货人企业代码],[收货人企业代码],[通知人企业代码],[发货人邮箱],[收货人邮箱] ,[通知人邮箱],收货人国家代码,');
sql.add('通知人国家代码,舱单发货人代码,舱单收货人代码,舱单通知人代码,发货人代码类型,收货人代码类型,通知人代码类型,委托方) ');
sql.add(' select '''+OrgBSNO+''',发货人国家代码,[发货人联系电话],[通知人联系电话],[收货人联系电话],[发货人企业代码],[收货人企业代码],[通知人企业代码],[发货人邮箱],[收货人邮箱] ,[通知人邮箱],收货人国家代码,');
sql.add('通知人国家代码,舱单发货人代码,舱单收货人代码,舱单通知人代码,发货人代码类型,收货人代码类型,通知人代码类型,委托方 from T_OP_AMS where 编号='''+oldbsno+'''');
execsql;
end;
finally
FreeAndNil(aQuery);
end;
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;
frm_op_seae.bsSkinTabSheet1.Show;
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.