⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 productunit.pas

📁 用友系统二次开发 存货管理 客户管理 订货审核 退货审核 铺货计划 调货计划
💻 PAS
📖 第 1 页 / 共 3 页
字号:
    end;

    j := 0 ;
    sCusCodes := '';
    with NSCList.Items do begin
      for i := 0 to Count-1 do begin
          if NSCList.Checked[i] then begin
              j:=j+1;
              if sCusCodes = '' then begin
                  sCusCodes := ''''+lefts(Strings[i])+'''';
                  sCusNames := rights(rights(Strings[i]))+'     ';
              end else begin
                  sCusCodes := sCusCodes +','''+ lefts(Strings[i])+'''';
                  sCusNames := sCusNames+rights(rights(Strings[i]))+'     ';
                  if (j mod 4 )= 0 then sCusNames := sCusNames+#13 ;
              end;
          end;
      end;
    end;

    if j=0 then begin
        showmessage('无客户明细,不能建档计划!');
        exit ;
    end;

    sMemo := inputbox('铺货原因','日期为计划开始至结束日期请维护格式 [YYYY-MM-DD] :',(FormatDatetime('YYYY/MM/DD',Now())+' - '+FormatDatetime('YYYY/MM/DD',Now()+15)+'     畅销加铺'));

    if MessageDlg('确认要铺货吗? '+#13+#13+sCusNames+#13+#13+#13,mtCustom,[mbOK,mbCancel],0) = mrOk Then begin
        try
            With dm.sql do begin
                 CommandText := '_PM_P_Plan_Insert :a,:b,:c,:d,:e,:f ';
                 Parameters.ParamByName('a').Value := ProdCode.Caption;
                 Parameters.ParamByName('b').Value := 3;
                 Parameters.ParamByName('c').Value := j;
                 Parameters.ParamByName('d').Value := FrmLogin.LandingUser;
                 Parameters.ParamByName('e').Value := sCusCodes;
                 Parameters.ParamByName('f').Value := sMemo;
                 execute;
                 showmessage('增加计划成功!');
            end;
        except
            showmessage('增加计划失败!');
            exit ;
         end;
    end;

    Sqltext := 'execute _PM_P_InvCustState_Query 4,'''+ProdCode.Caption+''',''''';
    PlanListBox.Items := Getlist(sqltext) ;

end;

procedure TfrmProduct.AddReturnPlanExecute(Sender: TObject);
var
    i,j :integer;
    sCusnames,sCusCodes,sMemo:string;
begin
    if Not dm.tbPower.FieldValues['M203_2'] then begin
      showmessage('无权执行,请咨询系统管理员!');
      exit;
    end;

    j := 0 ;
    with ASCList.Items do begin
      for i := 0 to Count-1 do begin
          if ASCList.Checked[i] then begin
              j:=j+1;
              if sCusCodes = '' then begin
                  sCusCodes := ''''+lefts(Strings[i])+'''';
                  sCusNames := rights(rights(Strings[i]))+'     ';
              end else begin
                  sCusCodes := sCusCodes +','''+ lefts(Strings[i])+'''';
                  sCusNames := sCusNames+rights(rights(Strings[i]))+'     ';
                  if (j mod 2 )= 0 then sCusNames := sCusNames+#13 ;
              end;
          end;
      end;
    end;

    if j=0 then begin
        showmessage('无客户明细,不能建档计划!');
        exit ;
    end;

    sMemo := inputbox('调货原因','日期为计划开始至结束日期请维护格式 [YYYY-MM-DD] :',(FormatDatetime('YYYY/MM/DD',Now())+' - '+FormatDatetime('YYYY/MM/DD',Now()+15)+'     负毛利'));

    if MessageDlg('确认要调货吗? '+#13+#13+sCusNames+#13+#13+#13,mtCustom,[mbOK,mbCancel],0) = mrOk Then begin
        try
            With dm.sql do begin
                 CommandText := 'ExeCute _PM_P_Plan_Insert :a,:b,:c,:d,:e,:f ';
                 Parameters.ParamByName('a').Value := ProdCode.Caption;
                 Parameters.ParamByName('b').Value := 2;
                 Parameters.ParamByName('c').Value := j;
                 Parameters.ParamByName('d').Value := FrmLogin.LandingUser;
                 Parameters.ParamByName('e').Value := sCusCodes;
                 Parameters.ParamByName('f').Value := sMemo;
                 execute;
                 showmessage('增加计划成功!');
            end;
        except
            showmessage('增加计划失败!');
            exit ;
        end;
    end;

    Sqltext := 'execute _PM_P_InvCustState_Query 4,'''+ProdCode.Caption+''',''''';
    PlanListBox.Items := Getlist(sqltext) ;

end;

procedure TfrmProduct.AA_SaleReturnExecute(Sender: TObject);
var
    sCusCode,sqltext : string;
begin
    if Not dm.tbPower.FieldValues['M203_3'] then begin
        showmessage('无权执行,请咨询系统管理员!');
        exit;
    end;

    case RzPageControl2.ActivePageIndex of
        0 : sCusCode := lefts(ASCList.Items.Strings[ASCList.ItemIndex]) ;
        1 : sCusCode := lefts(RCList.Items.Strings[RCList.ItemIndex]) ;
        2 : sCusCode := lefts(FSCList.Items.Strings[FSCList.ItemIndex]) ;
    end;

    if MessageDlg('提示: '+#13+'修改状态吗?'+#13+#13+#13,mtInformation,[mbOK,mbCancel],0) = mrOk Then begin
        try
            With dm.sql do begin
                CommandText := 'ExeCute _PM_P_InvCustState_Update :a,:b,:c,:d ';
                Parameters.ParamByName('a').Value := 0;
                Parameters.ParamByName('b').Value := ProdCode.Caption;
                Parameters.ParamByName('c').Value := sCusCode;
                Parameters.ParamByName('d').Value := FrmLogin.LandingUser;
                execute;

                Sqltext := ' execute _PM_P_InvCustState_Query 0,'''+ProdCode.Caption+''',''''';
                ASCList.Items := GetList(Sqltext) ;
                RzTabSheet1.Caption := '在销客户 (' + IntToStr(ASCList.Items.count)+')' ;

                Sqltext := ' execute _PM_P_InvCustState_Query 2,'''+ProdCode.Caption+''',''''';
                FSCList.Items := GetList(Sqltext) ;
                TabSheet3.Caption := '限销客户 (' + IntToStr(FSCList.Items.count)+')'  ;

                showmessage('修改成功!');
            end;
        except
            showmessage('修改失败!');
            exit ;
        end;
    end;
end;

procedure TfrmProduct.AF_SaleReturnExecute(Sender: TObject);
var
    sCusCode,sqltext : string;
begin
    if Not dm.tbPower.FieldValues['M203_4'] then begin
      showmessage('无权执行,请咨询系统管理员!');
      exit;
    end;

    case RzPageControl2.ActivePageIndex of
        0 : sCusCode := lefts(ASCList.Items.Strings[ASCList.ItemIndex]) ;
        1 : sCusCode := lefts(RCList.Items.Strings[RCList.ItemIndex]) ;
        2 : sCusCode := lefts(FSCList.Items.Strings[FSCList.ItemIndex]) ;
    end;

    if MessageDlg('提示: '+#13+'修改状态吗?'+#13+#13+#13,mtInformation,[mbOK,mbCancel],0) = mrOk Then begin
        try
            With dm.sql do begin
                CommandText := 'ExeCute _PM_P_InvCustState_Update :a,:b,:c,:d ';
                Parameters.ParamByName('a').Value := 1;
                Parameters.ParamByName('b').Value := ProdCode.Caption;
                Parameters.ParamByName('c').Value := sCusCode;
                Parameters.ParamByName('d').Value := FrmLogin.LandingUser;
                execute;

                Sqltext := ' execute _PM_P_InvCustState_Query 0,'''+ProdCode.Caption+''',''''';
                ASCList.Items := GetList(Sqltext) ;
                RzTabSheet1.Caption := '在销客户 (' + IntToStr(ASCList.Items.count)+')' ;

                Sqltext := ' execute _PM_P_InvCustState_Query 2,'''+ProdCode.Caption+''',''''';
                FSCList.Items := GetList(Sqltext) ;
                TabSheet3.Caption := '限销客户 (' + IntToStr(FSCList.Items.count)+')'  ;

                showmessage('修改成功!');
            end;
        except
            showmessage('修改失败!');
            exit ;
        end;
    end;
end;

procedure TfrmProduct.FA_SaleReturnExecute(Sender: TObject);
var
    sCusCode,sqltext : string;
begin
    if Not dm.tbPower.FieldValues['M203_5'] then begin
      showmessage('无权执行,请咨询系统管理员!');
      exit;
    end;

    case RzPageControl2.ActivePageIndex of
        0 : sCusCode := lefts(ASCList.Items.Strings[ASCList.ItemIndex]) ;
        1 : sCusCode := lefts(RCList.Items.Strings[RCList.ItemIndex]) ;
        2 : sCusCode := lefts(FSCList.Items.Strings[FSCList.ItemIndex]) ;
    end;

    if MessageDlg('提示: '+#13+'修改状态吗?'+#13+#13+#13,mtInformation,[mbOK,mbCancel],0) = mrOk Then begin
        try
            With dm.sql do begin
                CommandText := 'ExeCute _PM_P_InvCustState_Update :a,:b,:c,:d ';
                Parameters.ParamByName('a').Value := 2;
                Parameters.ParamByName('b').Value := ProdCode.Caption;
                Parameters.ParamByName('c').Value := sCusCode;
                Parameters.ParamByName('d').Value := FrmLogin.LandingUser;
                execute;

                Sqltext := ' execute _PM_P_InvCustState_Query 0,'''+ProdCode.Caption+''',''''';
                ASCList.Items := GetList(Sqltext) ;
                RzTabSheet1.Caption := '在销客户 (' + IntToStr(ASCList.Items.count)+')' ;

                Sqltext := ' execute _PM_P_InvCustState_Query 2,'''+ProdCode.Caption+''',''''';
                FSCList.Items := GetList(Sqltext) ;
                TabSheet3.Caption := '限销客户 (' + IntToStr(FSCList.Items.count)+')'  ;

                showmessage('修改成功!');
            end;
        except
            showmessage('修改失败!');
            exit ;
        end;
    end;
end;

procedure TfrmProduct.FF_SaleReturnExecute(Sender: TObject);
var
    sCusCode,sqltext : string;
begin
    if Not dm.tbPower.FieldValues['M203_6'] then begin
      showmessage('无权执行,请咨询系统管理员!');
      exit;
    end;

    case RzPageControl2.ActivePageIndex of
        0 : sCusCode := lefts(ASCList.Items.Strings[ASCList.ItemIndex]) ;
        1 : sCusCode := lefts(RCList.Items.Strings[RCList.ItemIndex]) ;
        2 : sCusCode := lefts(FSCList.Items.Strings[FSCList.ItemIndex]) ;
    end;

    if MessageDlg('提示: '+#13+'修改状态吗?'+#13+#13+#13,mtInformation,[mbOK,mbCancel],0) = mrOk Then begin
        try
            With dm.sql do begin
                CommandText := 'ExeCute _PM_P_InvCustState_Update :a,:b,:c,:d ';
                Parameters.ParamByName('a').Value := 3;
                Parameters.ParamByName('b').Value := ProdCode.Caption;
                Parameters.ParamByName('c').Value := sCusCode;
                Parameters.ParamByName('d').Value := FrmLogin.LandingUser;
                execute;

                Sqltext := ' execute _PM_P_InvCustState_Query 0,'''+ProdCode.Caption+''',''''';
                ASCList.Items := GetList(Sqltext) ;
                RzTabSheet1.Caption := '在销客户 (' + IntToStr(ASCList.Items.count)+')' ;

                Sqltext := ' execute _PM_P_InvCustState_Query 2,'''+ProdCode.Caption+''',''''';
                FSCList.Items := GetList(Sqltext) ;
                TabSheet3.Caption := '限销客户 (' + IntToStr(FSCList.Items.count)+')'  ;

                showmessage('修改成功!');
            end;
        except
            showmessage('修改失败!');
            exit ;
        end;
    end;
end;

procedure TfrmProduct.N29Click(Sender: TObject);
var
    i,j:integer;
    sCusNames,sMemo:string;
begin
    if Not dm.tbPower.FieldValues['M203_1'] then begin
      showmessage('无权执行,请咨询系统管理员!');
      exit;
    end;

    i := strtoint(inputbox('铺货类别','[1.新款首铺; 3.滞销重铺; 4新款加铺;]','3'));
    j := strtoint(inputbox('铺货客户数','请输入铺货客户数量[只能输入数字]:','20'));
    sMemo := inputbox('铺货原因','日期为计划开始至结束日期请维护格式 [YYYY-MM-DD] :',(FormatDatetime('YYYY/MM/DD',Now())+' - '+FormatDatetime('YYYY/MM/DD',Now()+15)+'     库存可加铺款'));

    if MessageDlg('提示: '+#13+'确认要铺货吗?'+#13+#13+#13,mtCustom,[mbOK,mbCancel],0) = mrOk Then begin
        try
            With dm.sql do begin
                 CommandText := 'ExeCute _PM_P_Plan_Insert :a,:b,:c,:d,:e,:f ';
                 Parameters.ParamByName('a').Value := ProdCode.Caption;
                 Parameters.ParamByName('b').Value := i;
                 Parameters.ParamByName('c').Value := j;
                 Parameters.ParamByName('d').Value := FrmLogin.LandingUser;
                 Parameters.ParamByName('e').Value := sCusNames;
                 Parameters.ParamByName('f').Value := sMemo;
                 execute;
                 showmessage('增加计划成功!');
            end;
        except
            showmessage('增加计划失败!');
            exit ;
         end;
    end;

    Sqltext := 'execute _PM_P_InvCustState_Query 4,'''+ProdCode.Caption+''',''''';
    PlanListBox.Items := Getlist(sqltext) ;

end;

procedure TfrmProduct.PlanListBoxDblClick(Sender: TObject);
begin
    sqltext := '_PM_P_InvCustState_Query 6,'''+ lefts(PlanListBox.Items.Strings[PlanListBox.ItemIndex]) +''','''' ';
    PLList.Items  := getlist(sqltext);
end;

procedure TfrmProduct.N34Click(Sender: TObject);
var
    i,j :integer;
    sCusCodes,sCusnames:string;
begin
    if Not dm.tbPower.FieldValues['M203_8'] then begin
        showmessage('无权执行,请咨询系统管理员!');
        exit;
    end;

    j := 0 ;
    with NSCList.Items do begin
      for i := 0 to Count-1 do begin
          if NSCList.Checked[i] then begin
              j:=j+1;
              if sCusCodes = '' then begin
                  sCusCodes := ''''+lefts(Strings[i])+'''';
                  sCusNames := rights(rights(Strings[i]))+'     ';
              end else begin
                  sCusCodes := sCusCodes +','''+ lefts(Strings[i])+'''';
                  sCusNames := sCusNames+rights(rights(Strings[i]))+'     ';
                  if (j mod 4 )= 0 then sCusNames := sCusNames+#13 ;
              end;
          end;
      end;
    end;

    if j=0 then begin
        showmessage('无客户明细,不能建档计划!');
        exit ;
    end;

    if MessageDlg('提示: '+#13+'确认要添加客户吗?'+#13+#13+#13+'客户:'+sCusNames,mtInformation,[mbOK,mbCancel],0) = mrOk Then begin
        try
            With dm.sql do begin
                 CommandText := 'ExeCute _PM_P_Plan_Insert :a,:b,:c,:d,:e,:f ';
                 Parameters.ParamByName('a').Value := lefts(PlanListBox.Items.Strings[PlanListBox.ItemIndex]) ;
                 Parameters.ParamByName('b').Value := 0;
                 Parameters.ParamByName('c').Value := j;
                 Parameters.ParamByName('d').Value := FrmLogin.LandingUser;
                 Parameters.ParamByName('e').Value := sCusCodes;
                 Parameters.ParamByName('f').Value := '';
                 execute;
                 showmessage('添加客户成功!');
            end;
        except
            showmessage('添加客户失败!');
            exit ;
        end;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -