SBO中的一个极具震撼力的的流程控制功能详细分析Word格式文档下载.docx
- 文档编号:16997321
- 上传时间:2022-11-27
- 格式:DOCX
- 页数:10
- 大小:20.99KB
SBO中的一个极具震撼力的的流程控制功能详细分析Word格式文档下载.docx
《SBO中的一个极具震撼力的的流程控制功能详细分析Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《SBO中的一个极具震撼力的的流程控制功能详细分析Word格式文档下载.docx(10页珍藏版)》请在冰豆网上搜索。
但这点乏味的知识会给您带来无穷的想象力!
SBO的DI对象,针对顾咨询通俗点简单点讲就像物料主数据、客户主数据、销售订单、采购订单等等这些SBO里的东东。
他们在SBO系统里都有一个编号,就像我们都有一个名字一样用于唯独识别。
例如物料主数据的编号是:
4。
具体清单如下:
MemberValue
oChartOfAccounts1
oBusinessPartners2
oBanks3
oItems4
oVatGroups5
oPriceLists6
oSpecialPrices7
oItemProperties8
oUsers12
oInvoices13
oCreditNotes14
oDeliveryNotes15
oReturns16
oOrders17
oPurchaseInvoices18
oPurchaseCreditNotes19
oPurchaseDeliveryNotes20
oPurchaseReturns21
oPurchaseOrders22
oQuotations23
oIncomingPayments24
oJournalVouchers28
oJournalEntries30
oStockTakings31
oContacts33
oCreditCards36
oCurrencyCodes37
oPaymentTermsTypes40
oBankPages42
oManufacturers43
oVendorPayments46
oLandedCostsCodes48
oShippingTypes49
oLengthMeasures50
oWeightMeasures51
oItemGroups52
oSalesPersons53
oCustomsGroups56
oChecksforPayment57
oInventoryGenEntry59
oInventoryGenExit60
oWarehouses64
oCommissionGroups65
oProductTrees66
oStockTransfer67
oWorkOrders68
oCreditPaymentMethods70
oCreditCardPayments71
oAlternateCatNum73
oBudget77
oBudgetDistribution78
oMessages81
oBudgetScenarios91
oSalesOpportunities97
oUserDefaultGroups93
oSalesStages101
oActivityTypes103
oActivityLocations104
oDrafts112
oDeductionTaxHierarchies116
oDeductionTaxGroups117
oAdditionalExpenses125
oSalesTaxAuthorities126
oSalesTaxAuthoritiesTypes127
oSalesTaxCodes128
oQueryCategories134
oFactoringIndicators138
oPaymentsDrafts140
oAccountSegmentations142
oAccountSegmentationCategories143
oWarehouseLocations144
oForms1099145
oInventoryCycles146
oWizardPaymentMethods147
oBPPriorities150
oDunningLetters151
oUserFields152
oUserTables153
oPickLists156
oPaymentRunExport158
oUserQueries160
oMaterialRevaluation162
oCorrectionPurchaseInvoice163
oCorrectionPurchaseInvoiceReversal164
oCorrectionInvoice165
oCorrectionInvoiceReversal166
oContractTemplates170
oEmployeesInfo171
oCustomerEquipmentCards176
oWithholdingTaxCodes178
oBillOfExchangeTransactions182
oKnowledgeBaseSolutions189
oServiceContracts190
oServiceCalls191
oUserKeys193
oQueue194
oSalesForecast198
oTerritories200
oIndustries201
oProductionOrders202
oPackagesTypes205
oUserObjectsMD206
oTeams211
oRelationships212
oUserPermissionTree214
oActivityStatus217
oChooseFromList218
oFormattedSearches219
oAttachments2221
oUserLanguages223
oMultiLanguageTranslations224
oDynamicSystemStrings229
oHouseBankAccounts231
oBusinessPlaces247
oLocalEra250
oSalesTaxInvoice280
oPurchaseTaxInvoice281
BoRecordset300
BoBridge305
oNotaFiscalUsage260
oNotaFiscalCFOP258
oNotaFiscalCST259
oClosingDateProcedure261
oBusinessPartnerGroups10
oBPFiscalRegistryID278
三、关键的储备过程语法:
大伙儿打开sqlserver的查询分析器,打开SBO的一个公司数据库,查找一个储备过程:
SBO_SP_TransactionNotification
它确实是让我们得以操纵SBO的魅力所在!
ALTERprocSBO_SP_TransactionNotification
@object_typenvarchar(25),--SBOObjectType
@transaction_typenchar
(1),--[A]dd,[U]pdate,[D]elete,[C]ancel,C[L]ose
@num_of_cols_in_keyint,
@list_of_key_cols_tab_delnvarchar(255),
@list_of_cols_val_tab_delnvarchar(255)
AS
begin
--Returnvalues
declare@errorint--Result(0fornoerror)
declare@error_messagenvarchar(200)--Errorstringtobedisplayed
select@error=0
select@error_message=N'
Ok'
--------------------------------------------------------------------------------------------------------------------------------
--ADDYOURCODEHERE
--Selectthereturnvalues
select@error,@error_message
end
那个储备过程的作用确实是任何一个SBO对象操作完程前都会调用它一次。
以便我们加入我们的逻辑操纵来实现一些客户的专门要求。
我们来看一下他的参数:
第一个参数:
@object_type这确实是我们上边讨论的SBO对象的编号。
每一个对象执行Add,[U]pdate,[D]elete,[C]ancel,C[L]ose操作时都会把操作的对象编号在那个参数中传入,我们只要判定该参数即可实现对不同的对象的不同的操纵。
我后边会给大伙儿提供一些练习。
第二个参数:
当在SBO系统中执行了添加操作,例如添加了一个物料主数据,@object_type的值就等于4,@transaction_type的值就等于'
A'
。
第三个参数:
@num_of_cols_in_key,对象关键字段的数目。
例如物料主数据的关键字段是物料编码,他只有一个关键字,因此该值等于1。
第四个参数:
@list_of_key_cols_tab_del代表该对象的关键字段的字段名字,例如物料主数据确实是Itemcode,单据确实是Docentry.
第五个参数:
@list_of_cols_val_tab_del代表关键字段的值。
这是专门重要的参数。
我再次讲明一点,通过我测试,SBO的对象再添加修改时会先在数据库里操作完成,然后调用该储备过程。
因此我们就靠那个字段来作为验证操纵我们的逻辑的入口之一了。
在以上介绍的五个参数之中,最重要的确实是@object_type,@transaction_type,@list_of_cols_val_tab_del这三个参数。
大伙儿一定要明白他们的含义!
内部的两个重要操纵参数:
@error,好了,揭示了这么多,就数他最重要了。
运算机世界的0和1就让他体现的淋漓尽致了。
当我们给它赋值为零的时候,SBO的流程连续运行。
一旦我们给他赋值为1,好了,成效显现了,你在sbo中操作的对象就再也不能完成它的操作了!
牛!
确实是那个牛的地点能够让我们收拾SBO任何的对象,能够按客户的心花让SBO尽情的怒放。
所以我们通过我们自己的逻辑,把@error=1,不然SBO按自己的逻辑连续下去了,总也得在SBO中给出个提示把,就像B1的状态栏的提示一样,那您就要动用@error_message那个参数了。
200个字符尽情地表述您的一肚子逻辑的讲明吧,幽默也好,冷冰冰也罢!
好了我们讲明过了那个储备过程的架构,那我接下来看看它的威力。
看看SBO的牛皮吹得力量能不能把鸡蛋吹成气球!
四、几个小例子
第一个例子:
我们就测试一下物料主数据,并看一下这几个参数。
在查询分析器打开该储备过程,让其处于编辑状态,要认真找,SBO的储备过程密密麻麻一大堆,看起来确实头疼,对一个顾咨询来讲。
但研发人员也许不如此认为。
研发人员对代码的好奇心永久是无止境的。
我就曾经把SBO的储备过程一个接一个的读了个遍。
管他加密的不加密的。
读了会有收成的!
呵呵。
也让咱看看SAP的牛人们使用什么样的代码来操作那个世界的企业用户的数据的!
declare@aaanvarchar(100)--WLJtest
if@object_type='
4'
--items
if@transaction_type='
select@aaa=itemnamefromoitmwhereitemcode=@list_of_cols_val_tab_del
if@aaa='
Test'
set@error=1
set@error_message='
物料主数据描述不能等于Test!
'
+@aaa+'
--'
+@list_of_key_cols_tab_del+'
+@list_of_cols_val_tab_del+'
+cast(@num_of_cols_in_keyasnvarchar(20))
elseif@transaction_type='
D'
不承诺小小孩瞎删除!
+@list_of_key_cols_tab_del+'
在那个例子里,我们第一对添加的物料主数据判定其描述是否等于“Test”如果是,那就不让它添加,关于物料主数据则不承诺删除。
大伙儿注意分析各参数的内容。
我在那个例子里把各个参数的值也传递到SBO的消息提示里边,如此大伙儿学习分析方便!
第二个例子:
上边的例子我们测试验证了主数据,我们下边来看一下单据。
17'
--salseorder
添加出错提示!
U'
更新出错提示!
所以那个例子我写得简单,只是测试在销售订单添加或更新的时候强不承诺添加或更新。
大伙儿能够按照自己的逻辑来实际处理。
我那个地点只是给大伙儿提供一个思路。
整合,所以我们实际工作中不可能只对一个对象操作,有可能对专门多对象同时验证,那就把上边的合起来即可,即能够对物料主数据操纵也能够对销售订单操纵。
我给大伙儿写了个小架构供大伙儿参考使用。
declare@aaanvarchar(100)
2'
--BusinessPartners
elseif@object_type='
+cast(@num_of_cols_in_keyasn
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- SBO 中的 一个 震撼力 流程 控制 功能 详细 分析