static void Job649(Args _args) 
{ 
    ItemId                  ItemId          = "000XA00612R1"; 
    InventDimId             InventDimId     = "K00811600"; 
    InventQty               qty             = ; 
    InventQty               physicalQty; 
 
    NumberSeq               numberSeq; 
    InventJournalVoucherId  voucherId; 
    InventTransId           InventTransId; 
     
    InventUpd_Financial     financial; 
    InventMov_Vir_Counting  movement; 
 
    TransactionTxt          transactionTxt; 
 
    LedgerVoucher           ledgerVoucher; 
    LedgerVoucherObject     ledgerVoucherObject; 
     
    THK_2ndInventQty        THK_2ndqty; 
    CostAmount calcCostAmount() 
    { 
        InventPriceMap      inventPriceMap      = InventTable::find(ItemId).inventCostPriceMap(InventDimId); 
        ; 
        return PriceDisc::price2Amount(inventPriceMap.price(), 
                                       inventPriceMap.priceUnit(), 
                                       , 
                                       qty, 
                                       qty, 
                                       inventPriceMap.markup(), 
                                       , 
                                       '', 
                                       ); 
    } 
    ; 
    physicalQty = InventSum::find(ItemId,InventDimId).PhysicalInvent; 
    qty = qty - physicalQty; 
    if (qty != ) 
    { 
        if (!InventTransId) 
        { 
            InventTransId = NumberSeq::newGetNum(InventParameters::numRefInventTransId()).num(); 
        } 
         
        numberSeq = NumberSeq::newGetNum(InventParameters::numRefInventJournalVoucherId()); 
         
        voucherId = numberSeq.num(); 
 
        transactionTxt   = new TransactionTxt(); 
        transactionTxt.setType(LedgerTransTxt::InventJournalCount); 
        transactionTxt.setDate(systemdateget()); 
        transactionTxt.setVoucher(voucherId); 
         
        ledgerVoucher = LedgerVoucher::newLedgerPost(DetailSummary::Summary, 
                                                    SysModule::Invent, 
                                                    numberSeq.parmVoucherSequenceCode()); 
        ledgerVoucherObject = LedgerVoucherObject::newVoucher(voucherId, 
                                                              systemdateget(), 
                                                              SysModule::Invent, 
                                                              LedgerTransType::Invent); 
        ledgerVoucherObject.lastTransTxt(transactionTxt.txt()); 
        ledgerVoucher.addVoucher(ledgerVoucherObject); 
 
        movement = InventMov_Vir_Counting::newParameters( 
            InventTransId, 
            ItemId, 
            InventDimId, 
            systemdateget(), 
            qty, 
            THK_2ndqty); 
             
        financial = InventUpd_Financial::newVirtuelCounting(movement, ledgerVoucher, abs(calcCostAmount()) * movement.transSign()); 
        financial.updateNow(); 
    } 
}

AX_InventCounting的更多相关文章

随机推荐

  1. Linux查看线程

    我的程序在其内部创建并执行了多个线程,我怎样才能在该程序创建线程后监控其中单个线程?我想要看到带有它们名称的单个线程详细情况(如,CPU/内存使用率). 线程是现代操作系统上进行并行执行的一个流行的编 ...

  2. 上线啦,PP.io!

    经过我们PPIO团队成员们在20天零13小时零14分的辛勤努力下,我们的官网终于上线了!   是的,14年前我们就是东半球第一个P2P技术团队.我们的征程始于2004年春天一个温暖的午后.寝室里笨拙的 ...

  3. [UE4]Tree View

    类似List View,但Tree View要求提供树形结构的数据.Tree View和Tile View都是继承自List View 一.创建一个名为“TreeEntry”的UserWidget,添 ...

  4. java中拼接两个对象集合

    目标:  根据两个list中每条记录的某个属性是否相同来拼接. 1.首先定义一个字符串 String str = "[{\"ITEMID\":2,\"ITEMN ...

  5. mybatis的简单使用调用mapper接口

    mybatis 是apache下的一个面向sql编程的半自动化的ORM持久层的框架.特点:面向sql编程,达到高性能的使用目的. 下面是简单使用 现导入jar包,只有mybatis和数据库驱动包(这里 ...

  6. 杂谈2.cpp

    Ostream类定义的插入运算符(<<)使数据插入到输出流,istream定义的抽取运算符(>>)能够从输入流中抽取信息 Cin和cout都是智能对象,能够根据程序上下文将信息 ...

  7. python3 不知文件编码情况下打开文件代码记录

    import chardet path='test.txt' bytes = min(100, os.path.getsize(path)) raw = open(path, 'rb').read(b ...

  8. java 内部类注意点

    1.只有内部类可以是私有类,而常规类只可以具有包可见性,或公有可见性. 内部类访问权限修饰符可以为:public.protected.默认.private:(可以用哪些修饰符视具体内部类类型而定) 常 ...

  9. Java 就业班 Web框架

  10. mvn多环境下的配置

    在应用中,我们经常会遇到本地,测试和生产3种不同的环境,因此需要去配置不同的application. 定义resources: <resources> <resource> & ...