procedure TfrmCopi08.CopyFromCOPTA; //复制报价单
var
  mData, mOutPutMaster, mOutPutDetail, mReturn: Variant;
  i: Integer;
  mTH008: Double;
begin
  try
    FIsCopyPrior := True;

with TdmCopi08(DM) do
    begin
      if not Brain.QueryData('COPTA', '05', Vararrayof([F001002[1], F001002[2]]), mOutPutMaster) then
        Exit;
      if (VarisEmpty(mOutPutMaster)) or (VarisNull(mOutPutMaster)) or (not VarIsArray(mOutPutMaster)) then
        Exit;

mData := mOutPutMaster[0]; //fetch
      //复制单头
      cdsMain.DisableControls;  //20110303 Add By ZhengSy(601503) for Z303-11030300001
      SetFieldValue(cdsMainTG004, mData[3]); //客户编号
      SetFieldValue(cdsMainTG005, mData[27]); //部门
      SetFieldValue(cdsMainTG006, mData[4]); //业务员
     // SetFieldValue(cdsMainTG007, mData[5]); //客户全称 20061219 mark by 34266
      SetFieldValue(cdsMainTG008, mData[28]); //送货地址(一)
      SetFieldValue(cdsMainTG009, mData[33]); //送货地址(二)
      SetFieldValue(cdsMainTG011, mData[6]); //币种

SetFieldValue(cdsMainTG017, mData[21]); //税种
      SetFieldValue(cdsMainTG022, '0'); //打印次数
      SetFieldValue(cdsMainTG023, 'N'); //审核码
      SetFieldValue(cdsMainTG024, 'N'); //更新码
      SetFieldValue(cdsMainTG027, mData[19]); //备注一  (COP.TA020)
      SetFieldValue(cdsMainTG026, mData[44]); //收款业务员
      //SetFieldValue(cdsMainTG075, mData[51]); //项目编号 //20110411 ADD by jinxl(90013)   FOR Z10-11031500001 //20120710 mark by ligx(600683) for B00-120702001 
      SetFieldValue(cdsMainTG028, mData[20]); //备注二  (COP.TA021)
      //SetFieldValue(cdsMainTG030, 'N'); //发票作废 20061219 mark by 34266
      SetFieldValue(cdsMainTG031, 'N'); //烟酒注记
      SetFieldValue(cdsMainTG032, '0'); //件数
     // SetFieldValue(cdsMainTG034, 'N'); //现销 20061219 mark by 34266
     // SetFieldValue(cdsMainTG036, 'N'); //生成分录(收入) 20061219 mark by 34266
      SetFieldValue(cdsMainTG036, 'N'); //生成分录(收入) //20080911 add by chenkx for B32-080910004
      SetFieldValue(cdsMainTG037, 'N'); //生成分录(成本)
     // SetFieldValue(cdsMainTG038, Copy(cdsMainTG042.asString, 1, 6)); 20061219 mark by 34266 
      SetFieldValue(cdsMainTG039, ''); //L/CNO.
      SetFieldValue(cdsMainTG040, ''); //INVOICE_NO
     // SetFieldValue(cdsMainTG041, '0'); //发票打印 20061219 mark by 34266
      // SetFieldValue(cdsMainTG044, mData[23] * 100); //增值税率   //mark by caichuang 20031024
      if cdsMainMQI01C.AsString = 'N' then  //20111012 ADD by jinxlb(602057) for Z30-11091600001
        SetFieldValue(cdsMainTG047, mData[10]); //付款条件
     // SetFieldValue(cdsMainTG061, mData[45]); //随货附发票  //900611 add by 0960 20061219 mark by 34266
      //20041119 add by 33577 zhangfeng begin
      try
        SetFieldValue(cdsMainTG044, FloatToStr(StrToFloat(F001002[3]) * 100)); //增值税率
      except
      end;
      //20041119 add by 33577 zhangfeng end
      SetFieldValue(cdsMainTG074, 'N'); //超限放行  //20070330 ADD BY 39045
      CopyUDFFields('COPI08','F04',VarArrayOf([F001002[1],F001002[2]]),cdsMain);  //20110216 Add By LiLing2 for Z303-11021500001
      cdsMain.EnableControls;   //20110303 Add By ZhengSy(601503) for Z303-11030300001
      
      //复制单身
      if not Brain.QueryData('COPTB', '03', Vararrayof([F001002[1], F001002[2],
        cdsMainTG042.asString, cdsMainTG042.asString, F001002[3]  //20041119 add by 33577 zhangfeng
        //cdsMainTG042.asString, cdsMainTG042.asString, cdsMainTG044.asfloat //add cdsMainTG044.asfloat(税率) by caichuang 20031024 //20041119 mark by 33577 zhangfeng
        ]), mOutPutDetail) then
        Exit;

if (VarisEmpty(mOutPutDetail)) or (VarisNull(mOutPutDetail)) or
        (not VarIsArray(mOutPutDetail)) then
        Exit;

try
        cdsBody1.DisableControls;
        for i := 0 to VarArrayHighBound(mOutPutDetail, 1) do
        begin
          mData := mOutPutDetail[i]; //fetch

cdsBody1.Append;
          // 如自己给单号会有Bug
          SetFieldValue(cdsBody1TH004, mData[3]); //品号
          SetFieldValue(cdsBody1TH004C1, mData[21]); //品号
          SetFieldValue(cdsBody1TH004C2, mData[23]); //售价控制
          SetFieldValue(cdsBody1TH004C3, mData[24]); //单价下限率
          SetFieldValue(cdsBody1TH004C4, mData[25]); //超交管理
          SetFieldValue(cdsBody1TH004C5, mData[26]); //超交率
          SetFieldValue(cdsBody1TH004C6, mData[28]); //定重

SetFieldValue(cdsBody1TH004C, mData[19]); //更改品名规格
          SetFieldValue(cdsBody1TH017C, mData[20]); //批号管理
          SetFieldValue(cdsBody1TH005, mData[4]); //品名
          SetFieldValue(cdsBody1TH006, mData[5]); //规格
          SetFieldValue(cdsBody1TH008, mData[6]); //数量
          SetFieldValue(cdsBody1TH009, mData[7]); // 单位
          SetFieldValue(cdsBody1TH010, '0'); // 库存数量
          SetFieldValue(cdsBody1TH011, mData[13]); //  小单位
          SetFieldValue(cdsBody1TH012, mData[8]); // 单价
//          if (cdsBody1TH017C.asString = 'Y') or          //20050104 mark by 29641 weili
//            (cdsBody1TH017C.asString = 'T') then //批号管理 //20050104 mark by 29641 weili
            SetFieldValue(cdsBody1TH017, '********************'); //批号
          SetFieldValue(cdsBody1TH019, mData[22]); //客户品号
          //SetFieldValue(cdsBody1TH030, mData[30]); //项目编号 //20110411 ADD by jinxl(90013)   FOR Z10-11031500001 //20120710 mark by ligx(600683) for B00-120702001 
          SetFieldValue(cdsBody1TC012C, ''); //客户单号  //20090402 ADD by zhouliu(46628) for Z10-09030900001
          SetFieldValue(cdsBody1TH020, 'N'); //审核码
          SetFieldValue(cdsBody1TH021, 'N'); //更新码
          SetFieldValue(cdsBody1TH024, mData[14]); //赠品量
          SetFieldValue(cdsBody1TH025, '100'); //  折扣率
          SetFieldValue(cdsBody1TH026, 'N'); //结账码
          SetFieldValue(cdsBody1TH031, '1'); //类型
          SetFieldValue(cdsBody1TH042, '0'); //已结账数量20020719 ADD
          FTH008 := cdsBody1TH008.asFloat;
          FTH024 := cdsBody1TH024.asFloat;
          SetFieldValue(cdsBody1TH018, mData[11]); //备注

if GetCheckData(cdsBody1TH004, 'CMSMC', '02', VarArrayOf([cdsMainTG010.AsString, //工厂
            mData[17]]), mReturn) then //主要仓库
          begin
            SetFieldValue(cdsBody1TH007, mReturn[2]); //主要仓库
            SetFieldValue(cdsBody1TH007C, mReturn[1]); //仓库名称
          end
          else if GetCheckData(cdsBody1TH004, 'CMSMC', '06', cdsMainTG010.AsString, mReturn) then
          begin
            SetFieldValue(cdsBody1TH007, mReturn[1]); //主要仓库
            SetFieldValue(cdsBody1TH007C, mReturn[2]); //仓库名称
          end;

if (Brain.GetKeyValue('SYS024') = '2') and
            (cdsBody1TH008.asFloat <> cdsBody1TH008.asInteger) then
            mTH008 := Brain.GetCounter('QtyDTos', VarArrayof([
              cdsBody1TH004.AsString, //品号
              cdsBody1TH008.AsFloat, 0, //数量
              cdsBody1TH009.AsString, //单位
              cdsBody1TH009.AsString])) //单位
          else
            mTH008 := cdsBody1TH008.AsFloat;
          //20040303 mark by 29641(weili)
          //cdsBody1TH013.Text := FloatToStr(mTH008 * cdsBody1TH012.asFloat * cdsBody1TH025.AsFloat); //金额=数量*单价*折扣率
          //20040303 add by 29641(weili)
          SetFieldValue(cdsBody1TH013, FloatToStr(mTH008 * cdsBody1TH012.asFloat * cdsBody1TH025.AsFloat)); //金额=数量*单价*折扣率
          {//900105 ADD ↓
           总包装数量   (TG054)=SUM(单身包装数量(TH039)+赠/备品包装量(TH040))
           包装单位     (TH041)=INV.MB090
           IF CMS.MA024='3'(制造双单位)
              包装数量(TH039)=取得Counter.UnitConvert回传值
                              传入品号(TH004)、数量(TH008)、单位(TH009)、包装单位(TH041)
              赠/备品包装量(TH040)=取得Counter.UnitConvert回传值
                                   传入品号(TH004),赠/备品量(TH024),单位(TH009),包装单位(TH041)
           ELSE
              包装数量(TH039)=0
              赠/备品包装量(TH040)=0
           ENDI
           //900105 ADD}

if (Brain.GetKeyValue('SYS024') = '3') then
          begin
            SetFieldValue(cdsBody1TH041, mData[27]); //包装单位
            if (Brain.GetKeyValue('SYS024') = '3') and (cdsBody1TH004C6.AsString = 'Y') then
            begin
              mReturn := Brain.GetCounter('UnitConvert', Vararrayof([
                cdsBody1TH004.AsString, cdsBody1TH008.asFloat,
                  cdsBody1TH009.asString, cdsBody1TH041.asString, '']));
              SetFieldValue(cdsBody1TH039, mReturn[0]);
              mReturn := Brain.GetCounter('UnitConvert', Vararrayof([
                cdsBody1TH004.AsString, cdsBody1TH024.asFloat,
                  cdsBody1TH009.asString, cdsBody1TH041.asString, '']));
              SetFieldValue(cdsBody1TH040, mReturn[0]);
            end;
          end;

//add by 28978 20030328 begin
          SetFieldValue(cdsBody1TH043, '0'); //件装
          SetFieldValue(cdsBody1TH044, '0'); //件数
          SetFieldValue(cdsBody1TH048, mData[29] * 100); //税率         //20030718 289829(shiliang) for P00-03070011 mReturn-->mData
          //add by 28978 20030328 end;

DoMyTax;
          CopyUDFFields('COPI08','F04D',VarArrayOf([mData[0],mData[1],mData[2]]),cdsBody1);  //20110216 Add By LiLing2 for Z303-11021500001
          cdsBody1.Post;
        end; //end of for i:=.....
      finally
        cdsBody1.EnableControls;
        CheckFTH004;
      end;
      //20011109 A04-901106001 调整税差
      if cdsMain.State in [dsInsert, dsEdit] then
        cdsMain.Post;
      if cdsBody1.State in [dsInsert, dsEdit] then
        cdsBody1.Post;
      //CheckMainBodyTax;//20070426 mark by 35334 qianyl 
    end;
  finally
    FIsCopyPrior := False; //复制前置单据结束!
  end;
end;

易飞ERP进货单源码——复制报价单相关推荐

  1. [易飞]关于易飞ERP进货单审核过程的总结

    进货单自动审核未勾选: 1.若不启用质量模块,开立单据并保存,手动审核,同时影响库存(+) 2.若启用质量模块 (1)IQC琢笔进货检验之后,自动回写进货单单身检验状态,审核码不变. (2)仓管员琢笔 ...

  2. 连锁多门店收银系统之进销存的采购进货单源码功能逻辑

    连锁多门店管理收银系统的进销存体系介绍01期之---采购进货单列表页功能介绍. 一,收银收银系统源码的采购进货单列表 1,采购进货单的类型 适应于"商户总部进货"和"直营 ...

  3. 大型生产进销存(ERP)管理系统源码

    大型生产进销存(ERP)管理系统源码 语言:NET 数据库:Mssql 操作系统:Windows web服务:IIS 系统功能简介 一.源码特点 三层架构.混合Entity Framework技术,模 ...

  4. 抓取服务器作业文档不存在,易飞ERP问题解答.doc

    文档介绍: 易飞ERP问题解答[问题]关账年月和账务冻结年月的含义[解答]账务冻结年月:只会管控"审核和撤销审核影响库存的单据",如果操作动作(保存.修改)不会影响库存,那么则不会 ...

  5. 抓取服务器作业文档不存在,易飞ERP客户问题集.doc

    文档介绍: 易飞ERP客户问题集20130715袀[问题]给了某用户录入入库单中的输出权限,但是无法打印蚇[解答]还应该赋予该用户打印转移单的权限.膆[问题]关账年月和账务冻结年月的含义蚃[解答]账务 ...

  6. 易飞ERP单据自动审核程序

    易飞ERP自动审核程序功能 一. 使用场景 1. OA系统集成 与第三方OA系统软件集成,在OA软件审核完成后,直接将ERP中的单据审核. 2. MES系统集成 MES系统生成单据写入到易飞ERP中, ...

  7. 易飞ERP软件用户组及权限设定-易飞ERP免费教程 转载

    易飞ERP软件用户组及权限设定-易飞ERP免费教程 易飞ERP支持用户.角色.权限复制.权限合并.限定基础数据.程序权限等多重权限迭加管理,安全.慎密且操作灵活,能有效满足中型企业对权限上要求. 1. ...

  8. java毕业生设计校园易购二手交易平台计算机源码+系统+mysql+调试部署+lw

    java毕业生设计校园易购二手交易平台计算机源码+系统+mysql+调试部署+lw java毕业生设计校园易购二手交易平台计算机源码+系统+mysql+调试部署+lw 本源码技术栈: 项目架构:B/S ...

  9. JAVA计算机毕业设计仓储ERP系统Mybatis+源码+数据库+lw文档+系统+调试部署

    JAVA计算机毕业设计仓储ERP系统Mybatis+源码+数据库+lw文档+系统+调试部署 JAVA计算机毕业设计仓储ERP系统Mybatis+源码+数据库+lw文档+系统+调试部署 本源码技术栈: ...

最新文章

  1. 链表删除最小值,倒叙
  2. cmd MySQL登录
  3. 【练习】使用事务控制语句
  4. idea overlays文件夹_Intellij IDEA 文件修改提示星号
  5. 招程序员不要信中医的? | 从编程的角度看中医
  6. Atitit 游戏的通常流程 attilax 总结 基于cocos2d api
  7. Python学习笔记大总结(我把我所有python笔记做了总结和学习顺序,点击即可进入相关博客。希望可以便于你们阅读)
  8. 用Unity3D实现打飞碟游戏
  9. 色情版“微信”背后的秘密
  10. 计算机学院运动会加油,学校运会加油稿
  11. 51单片机两只老虎c语言程序,源码共享:51单片机上实现7首简单音乐的汇编代码...
  12. 拼多多如何引流推广产品?拼多多新产品如何推广?
  13. 静态HTML网页设计作品 仿唯品会购物商城(5页) HTML+CSS+JavaScript 学生DW网页设计作业成品 商城网站设计
  14. 按计算机应用领域分类 情报检索系统属于,2014年高职单招计算机类模拟试卷一(环职职专)...
  15. 时间都去哪儿了?互联网3.0时代,好多东西都已“碎片化”
  16. 在iOS中调用C语言的国密算法SM2以替换RSA
  17. 关于重定向的浅薄理解
  18. 【mmaction2 入门教程 01】 slowfast训练配置 日志分析 测试结果分析
  19. 具有立体效果的地图制作
  20. Ubuntu18.04分辨率只有1024*768的多种解决办法

热门文章

  1. 满足多元化场景需求,戴尔显示器新品绚丽亮相
  2. 别在@官方加国旗啦,3分钟30行Python代码帮你搞定!还加鸡腿,加IPhone11!
  3. 计算机一级wpsoffice知识点,计算机一级考试WPSOffice考试大纲
  4. 你不知道的微信小程序-李宁-专题视频课程
  5. 杭州java校园招聘_网易校园招聘杭州Java笔试题
  6. linux文件夹缩略图不显示,分享|如何在终端显示图像缩略图
  7. 国产车规级MCU芯片又添一重量级成员,这次竟是国家队?稳了
  8. 基于Multisim的buck降压斩波电路仿真
  9. 频响测试低12dB问题
  10. 2023年跨年代码(新年祝福语生成器)