资源描述:
《oracle单据序列的概念及应用v111》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、单据序列的概念及应用(9-Dec-96)概述25目录文档控制ii概述4单据序列概念4单据序列(客户化应用)7AR中的单据序列11AR中的单据序列试验14单据序列的实用意义分析23已解决问题和未解决问题27未解决问题27已解决问题27(9-Dec-96)概述25概述本文对OracleERP系统中“单据序列”的概念进行了初步的探索和实验。目的在于进一步理解“单据序列”的概念和作用单据序列概念序列的概念Oracle对于序列概念的描述如下:单据序列可对OracleApplications产品所生成的单据进行唯一编号。利用OracleApplications,您可以通过在表单中输入数据并生成单
2、据(如发票),起动一项事务处理。单据序列会生成跟踪线索,用以标识创建了该事务处理的应用产品(如OracleReceivables),以及所生成的原始单据(如发票编号1234)。单据序列可以提供完整性的证明。例如,单据序列可用于反映每项事务处理,甚至是失败的事务处理。单据序列还可以提供跟踪线索。例如,单据序列可以提供一条从总帐到子分类帐,再到最初影响帐户余额的单据的跟踪线索。由于单据序列会生成跟踪数据,因此即使单据被删除,它们的跟踪记录也会保留下来。概述25序列的定义Nav:SystemAdministrator->Application->Document->Define上图我们看到
3、的是一个序列:AP发票号,可以看出来该序列采用自动编号。初始值为1,其内部的Doc_sequence_id=5oracle对每一个序列的使用都有跟踪记录,并且序列的跟踪记录存储在应用产品的跟踪表中,其标题为ApplicationShortName_DOC_SEQUENCE_AUDIT。例如,属于OraclePayables的序列的跟踪表为AP_DOC_SEQUENCE_AUDIT。在这张表中,我们检索AP发票所有使用过的编号,这些编号被使用在哪种单据类型上。如下图所示上图中,DOC_SEQUENCE_ID是单据序列的内部ID,5表示AP发票;而DOC_SEQUENCE_ASSIGNM
4、ENT_ID是单据分配的内部ID,它表示该单据序列被分配在哪种单据类别上(下文会有描述);而DOC_SEQUENCE_VALUE表示该单据序列被分配在某种单据类别上,曾经在什么时候被使用过,其值是多少。序列的分配Nav:SystemAdministrator->Application->Document->Define概述25上图中,我们看到单据序列:AP发票号被分配给单据类别:借项通知单。其DOC_SEQUENCE_ASSIGNMENT_ID=8。单据类别的定义Nav:SystemAdministrator->Application->Document->Category单据类别标
5、识了存储单据(由用户输入的事务处理产生)的数据库表。使用类别可对单据进行更精确地分类。例如,您可以将应收帐款发票分成以下几个不同的类别:拖欠款项定金保证金借项通知单贷项通知单销售发票客户服务发票同样,您也可以将应付帐款或采购发票分成以下几个不同的类别:标准费用报表预付款利息贷项通知单借项通知单概述25单据序列(客户化应用)我们知道,定义单据类别的时候只是指定了表的名字,而在定义单据序列,以及把单据序列分配给单据类别的时候也没有指定任何子段,那么oracle是如何利用单据序列来给特定的字段自动生成编号的呢?我们来看个客户化程序中使用单据序列的实验例子。客户化的程序中如何使用单据序列?1
6、、在HWCUSTSchema中创建一个测试表createtablecux_seq_test(test_numnumbernull,test_namevarchar2(255)null)2、在APPS中创建同义词,并注册表和子段。CREATESYNONYMcux_seq_testforhwcust.cux_seq_test;EXECUTEad_dd.register_table('HW','cux_seq_test','T',8,10,90);EXECUTEad_dd.register_column('HW','CUX_SEQ_TEST','TEST_NUM',1,'NUMBER',3
7、0,'Y','N');EXECUTEad_dd.register_column('HW','CUX_SEQ_TEST','TEST_NAME',2,'VARCHAR2',255,'Y','N');3、Nav:SystemAdministrator->Application->Document->Category定义单据类别字段值ApplicationcodeCUX_TSTName测试单据类别Description测试单据类别TableCUX_SEQ_TES