所有由小潘发布的文章

喜欢分享的小潘.

批量付款发现付款金额为零(折扣金额)

    刚刚处理一个客户批量付款的问题,客户描述说她批量支付的时候,有两笔预付款应付金额为零,但是此批量付款是已经付款完成才发现的问题。要我马上找原因,汗……
    于是赶紧上楼到财务部门,让客户找出那两笔发票,第一眼没有看出是那方面的原因,于是马上在测试环境中测试,也没有出现类似的错误,结果再次对比数据,发现这两笔数据中都有一个折扣金额(如图1),虽然身为技术人员,不太明白折扣金额的含义,但是这明细与其他发票不同,于是再次测试,发现在计划付款中确实录入了折扣日期和折扣金额就会出现这样的问题(如图2)。客户打电话给我的时候,这两笔款在批量付款后,一直没有做任何操作,然后我建议客户将计划付款中的折扣日期去掉(金额自动消失),然后再次去付款,这样就能正常往下进行。

图1: discount

 

图2: batch_payment

ORACLE EBS并发TRACE操作视频

    此视频是去年底客户系统出现问题,我去抓取财务系统Trace文件的操作过程,由于是客户的系统,请下载到的文档谨慎使用,谢谢。
    说明:文件中存在“TEST_ora_50331810.trc.txt”文件,原本是“TEST_ora_50331810.trc”,由于百度云盘不允许此类文件上传,因此更改后缀为.txt文件,下载后去掉还原即可。

链接地址:http://pan.baidu.com/s/1dDISFUL

Form客户化开发大致步骤

  客户化一个Form程序,一般会经历如下开发过程(未包括具体代码书写及程序包调用):
      1.建立数据库对象(表,视图,序列,同义词等)
      2.打开template.fmb文件,更名为CUXGLIMPORT
      3.删除Data Blocks下的两个块——BLOCKNAME、DETAILBLOCK,
        它们是模版自带的示例主从块。
      4.删除Canvases下的一个画布——BLOCKNAME
      5.修改Windows下的BLOCKNAME这个Window,在Property Palette中
        将Name改为“HEADERS”,将Title改  为“XXXX”
      6.修改Forms级触发器PRE-FORM
      7.修改Forms级触发器WHEN-NEW-FORM-INSTANCE
      8.修改Program Unit下app_custom中的close_window过程
      9.创建Block数据块
      10.设置Block属性及其Subclass
      11.新增CURRENT_RECODE_INDICATOR 子类信息
         CURRENT_RECODE_INDICATOR
      12.画布创建
      13.程序单元    
      14.块级别触发器on_insert……

注意点:
      1.画布和窗口的对应,LOV创建最后在指定的item上面。
      2.ROW_ID 属性 row_id 18
      3.记录间距为0
      4.LOV建立时,需要注意返回项,否则在保存的时候会报错
      5.一般情况下请在order by 中写上命令
      6.form级别第一个导航块
      7.block级别导航块

完成后,通过ftp工具上传至相应服务器目录,最后通过ssh工具编译即可完成。可参考此链接编译form命令:http://www.llku.com/?p=177