ORACLE单据序列的概念及应用V11.1

上传人:沈*** 文档编号:98985749 上传时间:2022-05-30 格式:DOC 页数:28 大小:1.61MB
收藏 版权申诉 举报 下载
ORACLE单据序列的概念及应用V11.1_第1页
第1页 / 共28页
ORACLE单据序列的概念及应用V11.1_第2页
第2页 / 共28页
ORACLE单据序列的概念及应用V11.1_第3页
第3页 / 共28页
资源描述:

《ORACLE单据序列的概念及应用V11.1》由会员分享,可在线阅读,更多相关《ORACLE单据序列的概念及应用V11.1(28页珍藏版)》请在装配图网上搜索。

1、单据序列的概念及应用概述ii错误!未定义书签概述3单据序列概念3单据序列(客户化应用)6AR中的单据序列10AR中的单据序列试验13单据序列的实用意义分析22已解决问题和未解决问题错误!未定义书签未解决问题错误!未定义书签已解决问题错误!未定义书签目录文档控制本文对OracleERP系统中“单据序列”的概念进行了初步的探索和实验。目的在于进一步理解“单据序列”的概念和作用序列的概念Oracle对于序列概念的描述如下:单据序列可对OracleApplications产品所生成的单据进行唯一编号。利用OracleApplications,您可以通过在表单中输入数据并生成单据(如发票),起动一项事务

2、处理。单据序列会生成跟踪线索,用以标识创建了该事务处理的应用产品(如OracleReceivables),以及所生成的原始单据(如发票编号1234)。单据序列可以提供完整性的证明。 例如, 单据序列可用于反映每项事务处理, 甚至是失败的事务处理。单据序列还可以提供跟踪线索。例如,单据序列可以提供一条从总帐到子分类帐,再到最初影响帐户余额的单据的跟踪线索。由于单据序列会生成跟踪数据,因此即使单据被删除,它们的跟踪记录也会保留下来。1-27Transactionsgeneratedocuments.Forexample,recordingpaymentsgeneratespaymentdocume

3、nts DATATransa.insertsorupdatesrecordsindatabasetablesAsequencedetinKhowdocumentsarenumbered;whatthefirstnumberinthei靳AndwhetiiernumbersAntgeneratedautomaticallyorenteredmarLually,Document1SequencenamesFaymentsi11Document2-=1一概述单据序列概念-i三FORMEnterdatatoeffect刊transaction.DOCUMENTDocumentrecordsatran&

4、actiorL.概述4序列的定义上图我们看到的是一个序列:AP发票号,可以看岀来该序列采用自动编号。初始值为1,其内部的Doc_sequence_id=5oracle对每一个序列的使用都有跟踪记录,并且序列的跟踪记录存储在应用产品的跟踪表中,其标题为ApplicationShortName_DOC_SEQUENCE_AUDIT。例口,属于OraclePayables的序列的跟踪表为AP_DOC_SEQUENCE_AUDIT。在这张表中,我们检索AP发票所有使用过的编号,这些编号被使用在哪种单据类型上。如下图所示lelect*茫炖nAP_P(JC_3HQUENCE_AUII7谕Et1芒已口亡_s

5、equen亡輕_九担=&93貓uDDCSFOUENCEIPDQC5ECHJENCEASSIGNMENTIDDOCSEQUENCEVALUEGREATIONDATECHEATEDBV31731997-3-57:10s124545941997-3-511:11:24巒11565595199?-3-51Application-Document-DefineNav:SystemAdministrator-Application-Document-Define概述5上图中,我们看到单据序列:AP发票号被分配给单据类别:借项通知单。其DOC_SEQUENCE_ASSIGNMENT_ID=8。单据类别的定义

6、Nav:SystemAdministrator-Application-Document-Category单据类别标识了存储单据(由用户输入的事务处理产生)的数据库表使用类别可对单据进行更精确地分类。例如,您可以将应收帐款发票分成以下几个不同的类别:拖欠款项定金保证金借项通知单贷项通知单销售发票客户服务发票同样,您也可以将应付帐款或采购发票分成以下几个不同的类别:标准费用报表预付款利息贷项通知单借项通知单单据序列(客户化应用)我们知道,定义单据类别的时候只是指定了表的名字,而在定义单据序列,以及把单据序列分配给单据类别的时候也没有指定任何子段,那么oracle是如何利用单据序列来给特定的字段自

7、动生成编号的呢?0(E顼逋知单发JEJAN1997JIHAYJOOSAP发票号-JOraclePayablesAP戏穿号OracleExamiriieFieldaridvariablevaluedxA.P览崇号ChdeII咅PayaJblfrfiASSIGNMEM吃|-|氐P左鉴号OraclePayables|DOC_SEQUENCE_ASSIGNMEMT_IDftP发票罟OraclePayablesap倉荼号OmcllePnybles;miAP苣慕号丿OiadsPayableAP垃票号(OracltPayables册发慕号OraclePayablesP发慕号DocumentSl3rtDaUE

8、ndDeteAssignment概述6我们来看个客户化程序中使用单据序列的实验例子。客户化的程序中如何使用单据序列?1、在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_co

9、lumn(HW,CUX_SEQ_TEST,TEST_NUM,1,NUMBER,30,Y,N);EXECUTEad_dd.register_column(HW,CUX_SEQ_TEST,TEST_NAME,2,VARCHAR2,255,Y,N);3、Nav:SystemAdministrator-Application-Document-Category定义单据类别字段值ApplicationcodeCUXTSTName测试单据类别Description测试单据类别TableCUXSEQTEST概述74、定义单据序列Nav:SystemAdministrator-Application-Docu

10、ment-Define拷贝号姓名NameHWSEQTSTApplication5、序列分配:Nav:SystemAdministrator-Application-Document-Define拷贝号姓名ApplicationHWSEQTSTCategory测试单据类别SetofBooksSequenceHWSEQTSTDocumentAssignmentHW华站客户西IHUFRilSDDcUimentSeqoBnces::叮JToAppiicionNameERediv.FromALIloiiilicI1FnilialValueD口CLjmentCaiegories概述86、在Form中使用岀

11、口函数:procedureGet_seq_numisbeginif(nvl(:parameter.seq_numbers,N)!=NandNOTls_DB_Record)thenUser_Exit(FNDSEQCHK|APPLICATION_ID=200O2|SET_OF_BOOKS_ID=|TO_CHAR(:PARAMETER.SET_OF_BOOKS_ID)|CATEGORY=CUX_TST|METHOD=AIITRX_DATE=:PARAMETER.TRX_DATE|DOC_SEQUENCE_VALUE=:PARAMETER.INTEREST_INV_DOC_SEQ);if(NotFor

12、m_Success)thenRaiseForm_Trigger_Failure;endif;endif;:PARAMETER.INTEREST_INV_DOC_SEQ:=NULL;:PARAMETER.INTEREST_INV_DOC_SEQ_ID:=NULL;if(nvl(:parameter.seq_numbers,N)!=N)thenUser_Exit(FNDSEQVAL|APPLICATIOND=20002|SET_OF_BOOKS_ID=|TO_CHAR(:PARAMETER.SET_OF_BOOKS_ID)|CATEGORY=CUX_TST|METHOD=A|TRX_DATE=:P

13、ARAMETER.TRX_DATE|DOC_SEQUENCE_VALUE=:PARAMETER.INTEREST_INV_DOC_SEQ|DOC_SEQUENCE_VALUE_FIELD=PARAMETER.INTEREST_INV_DOC_SEQ|DOC_SEQUENCE_ID_FIELD=PARAMETER.INTEREST_INV_DOC_SEQ_ID);if(NotForm_Success)and(nvl(:parameter.seq_numbers,N)=A)then:PARAMETER.INTEREST_INV_DOC_SEQ:=NULL;:PARAMETER.INTEREST_I

14、NV_DOC_SEQ_ID:=NULL;RaiseForm_Trigger_Failure;endif;fnd_message.debug(to_char(:PARAMETER.INTEREST_INV_DOC_SEQ);endif;end;FUNCTIONIs_DB_RecordRETURNBooleanISBEGIN-if(nvl(:system.record_status,:system.form_status)in(QUERY,CHANGED)thenreturnTRUE;elsereturnFALSE;endif;RETURNNULL;ENDIs_DB_Record;概述9我们在Fo

15、rm测试的时候,发现还是会自动生成。这说明,序列分配没有立即失效。但是过了一段时间再作Form测试时,发现序号不会自动生成了。也就是我们失效序列分配的动作起作用了。7、查看首先,我们查找我们刚定义的单据序列的doc_sequence_id=343,一般来说自己定义的单据序列的跟踪表是:FND_DOC_SEQUENCE_AUDITselect*fromFND_DOC_SEQUENCE_AUDITwheredoc_sequence_id=343用Form测试:gQRYRESULT几丁八.J.TA%YrFrV 几YrY 几 Y 几 U 八 YJ.7 宀 T 才Mlrrri!rrir.rrrii!ir

16、rrrrririrri!irrrrirrrrrrtrrrFrrFtrr:rra-r=-严ReceivableAccountTestNum3TestNameQffetgeq)上图中,当我们点击GetSeq按钮时,我们就调用Get_seq_num,然后把值从参数:PARAMETER.INTEREST_INV_DOC_SE中取岀来放入TestNum,就岀现如上结果。每点击一次,就会取到一个序列。那么,如果我们又不想序号自动生成了该怎么办?我们只需要把单据序列分配失效就可以了。TOT融旳1他川注测读单握盖别DocurngntApplicatipnAssignmenl概述10SQLOutput|Stat

17、etica|select*Ex*oncm3eqt-eat-select*Eroni-rhereapplicatioh_short_naiielikeH*ZFEIECL*ExonHWJ)DC_SEQITK!TCE_AIIselect*timaLl_tablfrSafhereatabl4_tiSm-HiketOC_SBQUEHCB_AWIT1elec.:%*frunT5W_C0C_?1QUDC1klJT1T7山疋亡止占*343甘*注M0)舞HDOC,SEQUE.NCEIO|DOCSEQUENCEVA.UEDOCJEOUENCEASSlGNMENTID|CnEATIONDATECHEATED.BY1

18、3431714982006-12*917:220*2醐23432*14302005-12-917:2*2998AR 中的单据序列我们通过一个实验来看看AR中的单据序列应用。下面的步骤是Oracle文档中描述的,为某种“事务处理类型”启用单据序列所需要的步骤。步骤1启用连续编号配置文件选项(SequentialNumbering)要实施单据序列,首先必须启用“连续编号”配置文件选项。您可以在地点层和(或)应用层设置此选项。要查看此选项的当前设置,请定位至“个人配置文件值”窗口,然后查询“连续编号”配置文件选项。注:您可以在“个人配置文件值”窗口中查看此配置文件选项,但是不能对其进行更新。您可以通

19、过浏览器访问此窗口。有效的配置文件选项值为:不使用您可以始终输入事务处理。在输入事务处理时,光标将跳过“单据编号”字段。如果将此配置文件选项设置为此值,则不能使用“自动收款”功能。始终使用如果事务处理没有序列,则不能输入事务处理。此值要求您在输入事务处理时输入单据编号。部分使用即使事务处理没有序列,您也可以输入事务处理。但是,系统会向您发出警告。例女口,如果要将连续编号用于自动收款而不作其它用途,则请使用此值。注意:应收款管理系统的自动收款功能会在创建收款时使用单据序列。因此,如果要使用此功能,您必须将此配置文件选项设置为“部分使用”或“始终使用”。在下面的实验中,我们设置成“部分使用”步骤2

20、定义生成单据编号”配置文件选项(AR:DocumentNumberGenerationLevel)概述11配置文件选项“AR:生成单据编号层”,使您可以确定应收款管理系统何时生成事务处理的单据编号。您可以选择在提交事务处理或完成事务处理时生成单据编号。默认值为“提交事务处理时”。也就是说这个“配置文件”可以不设置,因为如果程序取不到这个“配置文件”的值,则系统会在“提交事务处理”时生成单据编号。在下面的实验中,我们不设置这个配置文件选项,也就是说,我们使用默认值。步骤3选择单据编号是否与事务处理编号相同在创建或导入事务处理时,事务处理批来源会确定是应收款管理系统自动生成批和事务处理编号,还是需

21、要人工输入这些编号。事务处理批来源还会确定应收款管理系统对于单据和事务处理编号是否使用同一编号。注:如果您的应用产品使用无间隙的单据排序,则此选项可确保事务处理编号也是无间隙的编号。要确保事务处理批来源的单据编号和事务处理编号相同,请执行以下操作:1.定位至“事务处理来源”窗口。2.输入或查询事务处理来源。请参阅:事务处理批来源3.选定“将单据编号复制至事务处理编号”复选框。4.保存您所做的工作。注意:如果“将单据编号复制至事务处理编号”选项设置为“是”,则应收款管理系统中可能有多个事务处理具有相同的事务处理编号和批来源。但是,对于同一种事务处理类型,单据编号和事务处理编号始终唯一。在下面的实

22、验中,我们会定义若干种事务处理来源批。分别两种情况A:选定“将单据编号复制至事务处理编号”复选框。B:不选定“将单据编号复制至事务处理编号”复选框。参见下一章:AR中的单据序列试验步骤4定义序列使用“单据序列”窗口来定义序列的名称、类型和初始值。您可以使用系统管理员责任来访问此窗口。您无需为输入的每项事务处理定义不同的序列。例如,您可能决定只设置三个序列,分别用于发票、收款和调整。另外,您可能要将不同的序列分配给每种事务处理类型、付款方法和调整活动。以下应收款管理系统事务处理必须具有自动序列类型。所有其它事务处理可以具有人工或自动序列。调整冲销自动调整自动收款拖欠款项调整拖欠款项冲销信用卡付款

23、承付款调整财务费用调整加密箱接收应收款管理系统会在创建拖欠款项时生成拖欠款项调整。拖欠款项调整会减少拖欠款项所核销的事务处理的余额(核销额为拖欠款项额)。同样,系统会在您对定金或保证金开票时生成承付款调整。如果用定金来核销发票,则承付款调整会减少发票余额;如果用保证金来核销发票,则承付款调整会减少保证金余额。概述12系统会在您计算财务费用时创建财务费用调整。它们可用于按财务费用金额调整事务处理余额。在删除具有与其相关的调整或拖欠款项的收款核销时,系统会生成调整和拖欠款项冲销。建议:如果要使用自动开票,则可以在自动开票接口表中人工输入序号。但是,如果这些事务处理使用自动序列类型,则应收款管理系统

24、会自动将序号分配给导入的事务处理。在下面的实验中,我们定义一个单据序列:“AR发票序号”设置此单据序列为自动的。步骤5将序列分配给类别使用“单据序列”窗口将序列分配给下列单据弹性域的一个或多个组合:核销单据类别事务处理日期范围在定义新付款方法或事务处理类型,或定义类型为“调整”或“财务费用”的应收款活动时,应收款管理系统会相应地自动创建名称相同的单据类别。核销和单据类别构成了单据弹性域。对于某个事务处理日期范围来说,每个有效的单据弹性域组合均必须唯一。注:您可以将同一序列分配给一个或多个单据弹性域组合,但弹性域中的所有类别均必须指向同一核销表。有关详情,请参阅:分配单据序列步骤6在Oracle

25、GeneralLedger中实施单据序列如果安装了OracleGeneralLedger并为此应用产品启用了连续编号,则在过帐之前必须定义日记帐分录类别的序列、类别和分配。应收款将过帐至以下总帐管理系统的日记帐类别:概述13调整拖欠款项贷项通知单核销贷项通知单交叉货币(在11版中才岀现)借项通知单杂项收款销售发票贸易收款注:通过在应用层而非地点层设置“连续编号”配置文件选项,可对特定应用产品的单据进行排序。AR 中的单据序列试验步骤1定义一种新的事务处理类型Nav:ARSystemadministrator-setup-transaction-TransactionType我们在AR设置里面定

26、义了一个事务处理类型“INV-TST0101则系统会自动创建一种单据类别,其名称也是“INV-TST0101。如下图。概述14步骤2使用新的事务处理类型创建一笔事务Nav:ARSystemadministratorTransactions-transactions步骤3为新的事务处理类型对应的单据类别分配序列Nav:Systemadministrator-Application-Document-Assign只不过,系统不会自动为此单据类型分配序列我们发现,使用这种事务处理类型来做一笔事务处理,则系统不会为这笔事务处理产生序列号。概述15确认连续编号”配置文件选项(SequentialNumb

27、ering)已经设置,本例中设置为:部分使用,如下图。步骤4使用新的事务处理类型再创建一笔事务Nav:ARSystemadministratorTransactions-transactions概述16我们发现,系统已经为这笔事务处理生成了单据序号Number53455ReferenceSourceMore|RemilTo.Sales|PayingCustomerNotes Commitmenl|ReferenceInformation|11.MOVJOT6riifj共它litvolcs14-MOV-20DfcStatusDiatribiulionsBalanceFreightCreditlo

28、sts-llmerrtsLing:HernsDaleBComplelsTransacliorhGLDaleCurrencjfPrintOptionDefaultTaxFinanceChargesCrossReferenceOriginalTransactionAgreemenl!DisputeAmounlSpecialInstructionsComrier4sINV-TSTOIDIIrwoicingRuleTypeManSalesCrediUComplete概述17步骤5查看数据库记录事务处理头表中会存储序列及序列的值,如下图:5QLOutput5tatistic5SelectTrx_Huff

29、lber,Doc_Sequeuee_ValueFroaRaCiistofflerTrxAllaTh旺电Drg_Id=216ladCustcinier_Trs_Id=1263719T母第MayoTRXNUMBERDOCSEQUENCEI:DlOOCSEQUENCEVALVE153455743AR的序列审计表中会存储序列生成的历史记录,如下图:5QLOutputStatisticsSelect+ImAr_Doc_Se4jiji.eiice_AuilitnereDoc_equerice_Id二7OrderByCreationjateDescTH-好旻解au-DOCSEQUIBCZIBDOCSBQVE

30、HCEASSIOUIEHTIBDOCSEQUEKCEVALUECREATIONWECREATEDBT1T|215514320D6-11-1415:25:17-109822T1.14220D4-3-1T14:14:12-1.6506371.14120D3-12-112:07:37-1.0434I71.14020D3-12-112:06:44-1.04345711392003-12-L12:03:44-10434B7113B2O03-IK814:41:51-10434T71.1372003-11-2814:36:24-104346T1.13B20D3-11-2T10:33:24-10434971.

31、13520D3-11-T1D:27:5B-9551步骤6定义一种新的事务处理批来源,设置“事务处理编号”拷贝“序列号”Nav:ARSystemadministrator-setup-transactions-Source概述18定义这个事务处理来源批”时,我们勾选了AutomaticTransactionNumbering并设定其LastNumber=1000.保存时,系统会自动生成一个数据库对象Sequenee,其格式为:RA_TRX_NUMBER_vBATCH_SOURCE_ID_S,这个Sequenee用于自动生成事务处理编号:Trx_Num.,如下图:SQLOutputStatisti

32、csSelect*TraTheresequenc_n4ffieLikeRA_TK_l!rVfflEER_1798%JRow1FieldsSZ9UEFUEOWNBECT3-SE9UEITCEKWflEKATEXNVMBEK17SS2lSMillVALUE1IAX_VALVE1S2QIHCREMEHT_BY1CYCEEPLAGHORDEILFLW?UCACHE_SIZE20LASTOMEER1021也就是说,如果我们没有勾选CopyDocumentNumbertoTransactionNumber”,则使用TSTBATCH001作为“事务处理来源批”创建事务处理时,系统会自动生成从1000开始的事

33、务处理编号。但是我们这里也勾选:CopyDocumentNumbertoTransactionNumber然后我们看看创建事务处理时,系统如何处理?步骤7使用TSTBATCH001作为“事务处理来源批”创建事务处理Nav:ARSystemadministratorTransactions-transactions我们发现,系统并没有使用“事务处理来源批”中的设置,使用“单据序列”来作为“事务处理编号”这是不是因为在同时勾选AutomaticTransactionNumbering和“CopyDocumentNumbertoTransactionNumber的情况下,系统优先使用Automati

34、cTransactionNumbering的设置呢?我们可以再定义一种“事务处理来源批”来验证这件事概述19步骤8定义一种新的事务处理批来源,不设置“自动事务处理编号Nav:ARSystemadministrator-setup-transactions-Source在这种情况下,系统会设置“事务处理编号”为“需要手工录入,且必填”,所以我们必须随便填写一个编号,然后保存:OperaiingUnii|ou_nw|NameISIBA1CH002BatchiSourceAulolnvoice.CuslnmerInf.|AccountingI.|OllierInform.DescriptionTST

35、BATCH002HiveEffectivieDates厂 AutomaticBatchNumbering厂 AutomaticTraosactio-nNumbering顾 CopyGocurnenlNumbertoTransactionNumber1J-NOV-200ttLastNumberLastNumbernCopyTransaclionInform 白 ti0nFlexfieldtoCreditMemoReceipiHandlingforCreditsReferenceFieldDefaultValueStandardTiransactiDnTypeCreditMemoBatchSour

36、ce步骤9使用TSTBATCH002作为“事务处理来源批”创建事务处理Nav:ARSystemadministratorTransactions-transactions1巧More-RemitTn,S-ale-s PayingCuslamerNoles CtTRimrlment IhEfErEncEInformationSalesCredit.概述20其结果是,系统依然没有实现使用“事务处理来源批”中的设置,使用“单据序列”来作为“事务处理编号”的功能。不过,如果我们把这张发票完成以后(输入几条行,并调整好收入帐户后按Complete按钮)就不一样了,请看:完成后,事务处理编号确实被复制成序

37、列号了。这其实与Oracle文档中描述得并不一样。因为在步骤2中,我们实际并未设置系统配置文件:AR:Document概述21銮二 ErsonmiProfileV-Slues:亡:J:::;:;:;:71 翼理论上讲,应该在保存的时候,即把单据序列号复制到事务处理编号。但实际情况却是在完成时才实现这个动作。所以说,如果不设置系统配置文件AR:DocumentNumberGenerationLevel,其默认值是在完成时生成事务处理编号(把单据据序列号复制到事务处理编号)”的。步骤11过帐到总帐Nav:ARSystemadministratorInterface-GereralLeger我们调用

38、总帐接口程序把这天的会计分配信息过帐到总帐接口,然后我们查询数据库可以看到:在总帐接口表GL_interface表中,单据序列号=45的会计分配信息都已经到了总帐接口表中了。单据序列号也被带到了总帐接口表。*STA1VADCOmfTIKGjLGIEJtCATEGORTUSERJZJOlffSiaLEBGEVKSEQffirEJ5LTLEUGEMKSEQUBCE一丫虬血IKEK1 2CO6-1I-14SiltsInvQLcBtHectLra.blei4.52跚-12006H-4*Sd.esIIWOLC轉-RceLva.ible;453KEh-1ZDQ61114$41匕IiwoietiHit亡ti

39、va&lfti-45卜斗卿页-112006-11-14*SaltsIjivuiu”villas-眄5200611-)4TInvaiees-ReceLcables-45SelectSt4.lLU5pSetJDf&oks_Id3LCiJIUltrIfEtfSyliltdgHr_D9iCiJournals-lmport-Run概述23importJoumalsflHW-BOOKB):jf71XRunOptionsDataRange_JPuiErT-jrz,lu 臼了卩刃冃 mStartCreateSuirunarj!JournalsEndImportDescriptiveFlexfieldsNo*W

40、ithViilidi1ionWithoutValidationImport导入完成后,我们可以在总帐日记帐中找到我们导入的会计分配信息:查看数据库可见,单据序号被带入到日记帐行表GL_Je_lines中了V概述24单据序列的实用意义分析按照Oracle的说法,使用单据序列的好处主要有三个:1、单据序列可以提供完整性的证明。例如,单据序列可用于反映每项事务处理,甚至是失败的事务处理。2、单据序列还可以提供跟踪线索。例如,单据序列可以提供一条从总帐到子分类帐,再到最初影响帐户余额的单据的跟踪线索。3、由于单据序列会生成跟踪数据,因此即使单据被删除,它们的跟踪记录也会保留下来。作用3的分析:对于第3

41、个作用,我们在步骤5已经能够体会到了。由于单据序列审计跟踪信息表:XX_DOC_SEQUENCE_AUDIT中的提供了一些列,这些列信息可以让我们知道:“某人在某天曾经创建过一个什么类型的单据”,但是,由于列数太少,没有纪录这个单据的其他信息,如果这个单据被删除了,也无法了解当时创建的单据具体输入了那些业务信息。所以这个作用有一定意义。但是单独看这个作用意义不大。只有为第一个作用服务的时候才能显示岀一点实际意义。下文对作用1的分析,我们会提到这点实际意义。作用2的分析:对于第2个作用,我们还需要继续思考,我们主要关注从AR事务处理生成的单据序列号,究竟是怎样被一步一步传送到总帐中的。以AR发票

42、为例,首先,如果启用了序列,则a)在事务处理头信息表RA_CUSTOMER_TRX_ALL中就会生成DOC_SEQUENCE_ID禾口DOC_SEQUENCE_VALUE。b)事务处理会计分配信息表RA_CUST_TRX_LINE_GL_DIST_ALL中的内容通过和在事务处理头信息表RA_CUSTOMER_TRX_ALL关联可以获得DOC_SEQUENCE_ID和口DOC_SEQUENCE_VALUE。在过帐到总帐的时候,这两个字段被传给总帐接口表GL_lNTERFACE的SUBLEDGER_DOC_SEQUENCE_ID和口SUBLEDGER_DOC_SEQUENCE_VALUESQLOj

43、tpjtStagesSflsel1电丄电(叫D輻岳i讥i现帥吐胡鵲r驰矗驭电hM.Id,5tiblfet,_DocJe;3ice_ViLiieFroaGlJTi_Liae5Iher皂SuKledgerjac_SegiLEn.ceJd二TAndSuiilraiger_Dac_Sei5ueiii2e_Y:al,je二45JEJEQE.n)JtJIUIJIlMSCMFnUH3UB1I 为氷 JOC/霽 JEBC 二IDSLED5EijnCSEraCEVXLJE12352曲ReceivalleacccwitforLUVOLCB45.-TTIE2382562T聲iccoijilforiiwoi性fl5.

44、IT453曰523FreisJitaccowtforimice15.-745423524 RefereeactDotforin7Dice95.74552382M5和血為hgBislriUli&Bi.icc&ustferT北概述25c)数据从GL_Inteface导入到日记帐后这两个字段被传到日记帐行表GL_JE_LINES中的SUBLEDGER_DOC_SEQUENCE_ID禾口SUBLEDGER_DOC_SEQUENCE_VALUE。所以如果启用了序列,则从总帐到子分类帐确实可以通过单据序列号来跟踪。上图中,选择第一条日记帐,然后选Tools菜单的DrillDown,则系统条用了如下代码:x

45、la_open_form.open_drilldown(form_function=XLA_XLAIQDRL,set_of_books_id=gl_sob.sob_id.gl_acct_flex=:LINES.accounting_flexfield,gl_period=:LINES.period_name,je_source=:HEADER.je_source,je_category=:HEADER.je_category,je_header_id=:LINES.je_header_id,je_line_num=:LINES.je_line_num);但是, 事实上的。Oracle从总帐到子

46、分类帐的跟踪功能的实现却不是依据序列号进行谿rDldsrTools|windowH&lpTAccounts釦*.J凸圏唳丨/即:/I?SZZmBR2OeReceirable53W96592GI_lmport_References.Refrence3-Ra_Cust_Trx_Line_GI_Dist_AII.Cust_Trx_Line_Gl_Dist_Id-Ra_Customer_Trx_Lines_All.Customer_Trx_Line_Id从上面的分析中可以看岀,实际上Oralcle是根据总帐中的如下信息来实现到子分类帐的追踪的:a)日记帐头表GL_JE_Headers中的JE_CATE

47、GORY和JE_SOURCE。b)日记帐行表GL_JE_Lines中的JE_HEADER_ID和JE_LINE_NUM。c)日记帐导入参考历史表 GI_lmport_References 中的Referenee列。可见,Oracle从总帐到子分类帐的追踪根本就没有使用单据序列号的功能, 所以说这单据序列的第2个功能,也作为使用序列的一个突出的好处,未免有点牵强。作用1的分析:至于说第1个作用,提供完整性证明,我们想,到是有一定的价值的。如果在步骤1中把连续编号配置文件选项(SequentialNumbering)设置成“始终使用”那么系统就会强制要求每笔事务处理都有单据序列号, 而且系统保证单

48、据序列对每笔事务处理是唯一的。在定义单据序列的时候把单据序列定义成“自动”或者“无间隙”的。这样就保证单据编号是连续、不间断的。那么在经过一段时间的运行以后,对于按照上述方式使用单据序列的事务处理类型,我们可以检查有没有哪张单据被人为的删除掉。这只需要检查这种类型的事务处理纪录,其单据序列值(Document_sequence_value)有没有丢号。如果有丢号,我们还可以到序列跟踪审计表XX_DOC_SEQUENCE_AUDIT中查找此丢掉的单据序列值,并且可以通过这条跟踪记录来获得信息:“某人在某天曾经创建过一个什么类型的单据,从而为进一步的人工调查打下基础。作用分析总结:通过分析,我们认为“单据序列”比较有价值的地方只有一点,即:如果某个用户基于具体业务的需求,认为某种事务处理必须使用“连续编号”进行跟踪。那么使用“单据序列”是Oracle可以提供的一个方法。也就是Oracle所说的“作用1”

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!