<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-8317612857393390481</id><updated>2026-10-05T21:04:07.466-07:00</updated><category term="BRM GLID"/><category term="BRM Revenue reporting"/><category term="BRM hash map"/><category term="BRM pipeline"/><category term="GLID configuration"/><category term="OBRM GL"/><category term="Oracle BRM  new service"/><category term="Oracle BRM RODOD implementation"/><category term="Oracle BRM architect"/><category term="Oracle BRM documentation"/><category term="Oracle BRM expert"/><category term="Oracle BRM pipeline"/><category term="Oracle BRM service CDMA"/><category term="c hash map"/><category term="hash map for BRM"/><category term="linked list in BRM"/><category term="service implmentation"/><title type='text'>Oracle BRM - Tips and Tricks</title><subtitle type='html'>Learn more about the billing and revenue management product from Oracle (Oracle Communications BRM). Keep learning and sharing so that together we can make a strong BRM community. &#xa;Happy reading ...</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://billingandrevenuemanagement.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default?start-index=26&amp;max-results=25&amp;redirect=false'/><author><name>Sachid</name><uri>http://www.blogger.com/profile/11822259414693161812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='27' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi3UalPnC1ZfHS6sIfVj6G1Rcme1JLvWa4eyGbwuQAYcDMmr9x5yx2uedvWVYMeFvDi1V50jZtph7LvUiNUKKxlio2_HnGARW876om1AkeiMrgZy6XL-agr5sbw2dwmivM/s97/sketched_small.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>31</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-8317612857393390481.post-7446742859852347089</id><published>2019-06-25T07:53:00.000-07:00</published><updated>2019-06-25T07:53:10.412-07:00</updated><title type='text'>Migrating PDC data from one system to another</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Given System “A” with BRM and PDC and System “B” with BRM and PDC, following is the process for moving new or changed pricing data from system A to system B.&lt;br /&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&amp;nbsp; &amp;nbsp; 1.&amp;nbsp; Load new/changed BRM configuration objects from BRM A to BRM B, in particular, the following objects that are mastered in BRM:&lt;/div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;a. Provisioning Tags&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;b. GLIDs&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;c. Tax Codes&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;d. Tax Supplier&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;e. Events&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;f. Service&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;g. Account&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp; &amp;nbsp; 2. Follow this step if you have made any name changes in PDC for these objects. If no name changes have been made, you can skip this step and go directly to Step 3. Export the Event attribute spec, Customer attribute spec, Product (aka Service) attribute spec and Profile attribute spec [if using ECE] from PDC A.&lt;br /&gt;
&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;ImportExportPricing -export -config EVENT_ATTRIBUTE_SPEC&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ImportExportPricing -export -config CUSTOMER_ATTRIBUTE_SPEC&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ImportExportPricing -export -config PRODUCT_ATTRIBUTE_SPEC&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ImportExportPricing -export –config PROFILE_ATTRIBUTE_SPEC [Applicable for ECE only]&lt;br /&gt;
&lt;br /&gt;
These commands will generate 3 export files. (4 if ECE is used)&lt;br /&gt;
Import the exported attribute specs into PDC B&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;a. The internal IDs for the objects should not be changed.&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;b. Make sure that the transformation engines are running in so that the xref tables are updated.&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;c. Follow the same order as export.&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ImportExportPricing -import -config export_config_attributes.xml&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp; &amp;nbsp; 3. Start SyncPDC&lt;br /&gt;
If the Event, Service, and Account objects have already been moved from PDC A to PDC B (steps 2 and 3), this will only sync the other 4 objects from BRM because SyncPDC will know that the Event, Service, and Account objects have already been sync’ed.&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp; &amp;nbsp; 4. Move configuration objects mastered in PDC.&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;a. Export configuration objects: This export should NOT include the objects mastered in BRM which have already been moved in steps 1-4.&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;ImportExportPricing -export -config &amp;lt;TYPE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Types are: GEO_ZONE_MODEL, STANDARD_ZONE_MODEL, ZONE_MAP, ZONE_RESULT_CONFIGURATION, RUM_CONFIGURATION, ATTRIBUTE_SPEC_MAP, BALANCE_ELEMENT, HOLIDAY_CALENDAR, CUSTOM_ANALYZER_RULE[Applicable for ECE only]&lt;br /&gt;
&lt;br /&gt;
Invoke these commands up to 9 times, generating as many export files.&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;b. Import configuration objects into PDC B. Observe the following ordering when importing:&lt;br /&gt;
&lt;br /&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;
&lt;li&gt;Import the service event map (AttributeSpecMap) last&lt;/li&gt;
&lt;li&gt;Load ZONE_RESULT_CONFIGURATION before both GEO_ZONE_MODEL and STANDARD_ZONE_MODEL&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
ImportExportPricing -import -config &amp;lt;exported file name&amp;gt;&lt;br /&gt;
&lt;br /&gt;
5. Move pricing objects.&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;a. Export all pricing from PDC A&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ImportExportPricing -export -pricing&lt;br /&gt;
&lt;br /&gt;
This creates a file called: export_pricing.xml&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;b. Import all pricing into PDC B&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ImportExportPricing -import -pricing &amp;lt;exported file name&amp;gt;&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://billingandrevenuemanagement.blogspot.com/feeds/7446742859852347089/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2019/06/migrating-pdc-data-from-one-system-to.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/7446742859852347089'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/7446742859852347089'/><link rel='alternate' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2019/06/migrating-pdc-data-from-one-system-to.html' title='Migrating PDC data from one system to another'/><author><name>Sachid</name><uri>http://www.blogger.com/profile/11822259414693161812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='27' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi3UalPnC1ZfHS6sIfVj6G1Rcme1JLvWa4eyGbwuQAYcDMmr9x5yx2uedvWVYMeFvDi1V50jZtph7LvUiNUKKxlio2_HnGARW876om1AkeiMrgZy6XL-agr5sbw2dwmivM/s97/sketched_small.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8317612857393390481.post-4631284746212617373</id><published>2017-12-12T13:54:00.000-08:00</published><updated>2018-02-27T13:14:26.358-08:00</updated><title type='text'>PDC issues and fixes</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/b&gt;&lt;u&gt;&lt;b&gt;Issues#1:&lt;/b&gt;&lt;/u&gt; PDC import is failing with the following error:&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; color: black; font-family: Calibri, sans-serif; font-size: 11pt; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; margin: 0in 0in 0.0001pt; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; color: black; font-family: Calibri, sans-serif; font-size: 11pt; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; margin: 0in 0in 0.0001pt; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px;&quot;&gt;
&lt;span class=&quot;Apple-converted-space&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: red;&quot;&gt;[exec] Error during- Import&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;-moz-text-size-adjust: auto; -webkit-text-stroke-width: 0px; font-family: Calibri, sans-serif; font-size: 11pt; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; margin: 0in 0in 0.0001pt; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px;&quot;&gt;
&lt;span style=&quot;color: red;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; [exec] EJBException: Unknown reason: BEA1-047E79AE2C611898D0B8; nested exception is:&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;-moz-text-size-adjust: auto; -webkit-text-stroke-width: 0px; font-family: Calibri, sans-serif; font-size: 11pt; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; margin: 0in 0in 0.0001pt; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px;&quot;&gt;
&lt;span style=&quot;color: red;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; [exec]&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; javax.transaction.HeuristicMixedException: (PricingDB_pdc_domain, HeuristicHazard, ()) ; nested exception is: javax.transaction.HeuristicMixedException: (PricingDB_pdc_domain, HeuristicHazard, ())&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;-moz-text-size-adjust: auto; -webkit-text-stroke-width: 0px; font-family: Calibri, sans-serif; font-size: 11pt; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; margin: 0in 0in 0.0001pt; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px;&quot;&gt;
&lt;span style=&quot;color: red;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; [echo] Waiting 30 seconds for import to finish.&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; color: black; font-family: Calibri, sans-serif; font-size: 11pt; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; margin: 0in 0in 0.0001pt; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;u&gt;&lt;b&gt;Solution: &lt;/b&gt;&lt;/u&gt;Change XA Retry Interval to 0 in &lt;br /&gt;
&lt;div class=&quot;breadcrumbs&quot;&gt;
Home&amp;nbsp;&amp;gt;Summary of Services&amp;nbsp;&amp;gt;Summary of JDBC Data Sources&amp;nbsp;&amp;gt;JobDispatcherPersistentDS&amp;nbsp;&amp;gt;Summary of JDBC Data Sources&amp;nbsp;&amp;gt;&lt;span class=&quot;bclast&quot;&gt;PricingDB&lt;/span&gt;&lt;/div&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;b&gt;&amp;nbsp;&lt;/b&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;img border=&quot;0&quot; data-original-height=&quot;493&quot; data-original-width=&quot;992&quot; height=&quot;316&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjv38Ra1-_HT8jKJAEZ_CI6CAtFbu9_BGtD3r6PkMhlGbdiPPMUbo5wucHtvaBKMSJ23sFFehv4EjoZAAPvitfzaJTJDjMlHNrsfOd69nHeNM7WuThvX2Rc34o_ZnCdto7s8JsA5wc5JqbM/s640/pdc08.png&quot; width=&quot;540&quot; /&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/b&gt;&lt;u&gt;&lt;b&gt;Issues#2:&lt;/b&gt;&lt;/u&gt; Sequential Discount configuration doesn&#39;t work when discounts configured using PDC&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;u&gt;&lt;b&gt;Solution: &lt;/b&gt;&lt;/u&gt;Set the grant_period_offset for the discounts which need sequential discount configurations:&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; color: black; direction: ltr; font-family: Calibri, sans-serif; font-size: 11pt; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; margin: 0in 0in 0.0001pt; orphans: auto; text-align: left; text-indent: 0px; text-transform: none; unicode-bidi: embed; white-space: normal; widows: auto; word-spacing: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; color: black; direction: ltr; font-family: Calibri, sans-serif; font-size: 11pt; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; margin: 0in 0in 0.0001pt; orphans: auto; text-align: left; text-indent: 0px; text-transform: none; unicode-bidi: embed; white-space: normal; widows: auto; word-spacing: 0px;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; update ifw_dscbalimpact set grant_period_offset=-1;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; color: black; direction: ltr; font-family: Calibri, sans-serif; font-size: 11pt; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; margin: 0in 0in 0.0001pt; orphans: auto; text-align: left; text-indent: 0px; text-transform: none; unicode-bidi: embed; white-space: normal; widows: auto; word-spacing: 0px;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; commit;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; color: black; direction: ltr; font-family: Calibri, sans-serif; font-size: 11pt; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; margin: 0in 0in 0.0001pt; orphans: auto; text-align: left; text-indent: 0px; text-transform: none; unicode-bidi: embed; white-space: normal; widows: auto; word-spacing: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; color: black; direction: ltr; font-family: Calibri, sans-serif; font-size: 11pt; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; margin: 0in 0in 0.0001pt; orphans: auto; text-align: left; text-indent: 0px; text-transform: none; unicode-bidi: embed; white-space: normal; widows: auto; word-spacing: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;u&gt;&lt;b&gt;Issues#3:&lt;/b&gt;&lt;/u&gt; Prorate discounts for fixed discount configurations &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; color: black; direction: ltr; font-family: Calibri, sans-serif; font-size: 11pt; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; margin: 0in 0in 0.0001pt; orphans: auto; text-align: left; text-indent: 0px; text-transform: none; unicode-bidi: embed; white-space: normal; widows: auto; word-spacing: 0px;&quot;&gt;
&lt;u&gt;&lt;b&gt;Solution: &lt;/b&gt;&lt;/u&gt;Add ProrateFixedDiscount entry in the discount pipeline&#39;s registry: &lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; color: black; direction: ltr; font-family: Calibri, sans-serif; font-size: 11pt; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; margin: 0in 0in 0.0001pt; orphans: auto; text-align: left; text-indent: 0px; text-transform: none; unicode-bidi: embed; white-space: normal; widows: auto; word-spacing: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; color: black; direction: ltr; font-family: Calibri, sans-serif; font-size: 11pt; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; margin: 0in 0in 0.0001pt; orphans: auto; text-align: left; text-indent: 0px; text-transform: none; unicode-bidi: embed; white-space: normal; widows: auto; word-spacing: 0px;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ApolloDiscountModule&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ModuleName = FCT_Discount&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Module&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Active&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = TRUE&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DiscountDataModule&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = ifw.DataPool.DiscountModelDataModule&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; BalanceDataModule&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = ifw.DataPool.BalanceDataModule&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; AccountDataModule&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = ifw.DataPool.CustomerData&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CurrencyDataModule&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = ifw.DataPool.CurrencyDataModule&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DiscountMoreThanPossible = False&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TaxationMode&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 3&amp;nbsp;&amp;nbsp; #[0-3] needs to in sync with &#39;taxation_switch&#39; entry in pin.conf&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DiscountTrace&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = FALSE&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ProrateFixedDiscount&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = true&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://billingandrevenuemanagement.blogspot.com/feeds/4631284746212617373/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2017/12/pdc-issues-and-fixes.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/4631284746212617373'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/4631284746212617373'/><link rel='alternate' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2017/12/pdc-issues-and-fixes.html' title='PDC issues and fixes'/><author><name>Sachid</name><uri>http://www.blogger.com/profile/11822259414693161812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='27' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi3UalPnC1ZfHS6sIfVj6G1Rcme1JLvWa4eyGbwuQAYcDMmr9x5yx2uedvWVYMeFvDi1V50jZtph7LvUiNUKKxlio2_HnGARW876om1AkeiMrgZy6XL-agr5sbw2dwmivM/s97/sketched_small.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjv38Ra1-_HT8jKJAEZ_CI6CAtFbu9_BGtD3r6PkMhlGbdiPPMUbo5wucHtvaBKMSJ23sFFehv4EjoZAAPvitfzaJTJDjMlHNrsfOd69nHeNM7WuThvX2Rc34o_ZnCdto7s8JsA5wc5JqbM/s72-c/pdc08.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8317612857393390481.post-811378205288299214</id><published>2017-10-23T21:35:00.003-07:00</published><updated>2017-10-26T16:21:16.233-07:00</updated><title type='text'>Realtime Discounting Pipeline Reports &quot;discount model: () is invalid&quot; In Discount Trace</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;u&gt;&lt;b&gt;Debugging Realtime Discounting Pipeline Reports &quot;discount model: () is invalid&quot; In Discount Trace&lt;/b&gt;&lt;/u&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;span class=&quot;kmContent&quot; id=&quot;kmPgTpl:sd_r1:0:dv_rDoc:ot71&quot; style=&quot;color: black; font-size: x-small;&quot;&gt;#### BEGIN transaction: 3169&lt;br /&gt;&lt;br /&gt;-----&amp;gt; DETAIL Container::isValidDetail: 1, Pipeline: 0&lt;br /&gt;Account DB#: 1, ID: 234522&lt;br /&gt;discount model: () is invalid, &lt;b&gt;valid flag: 3&lt;/b&gt;&lt;/span&gt; &lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
The VALID_FLAG values, see below for the different values and their meaning :&lt;/div&gt;
&lt;blockquote&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;blockquote&gt;
1 ==&amp;gt; valid&lt;br /&gt;
2 ==&amp;gt; invalid purchase start or end time&lt;br /&gt;
3 ==&amp;gt; invalid usage start or end time&lt;br /&gt;
4 ==&amp;gt; invalid sponsorship start or end time&lt;br /&gt;
5 ==&amp;gt; invalid discount/sponsorship object id&lt;br /&gt;
6 ==&amp;gt; no usage map for event type&lt;br /&gt;
7 ==&amp;gt; invalid usage map for event type&lt;/blockquote&gt;
&lt;/div&gt;
&lt;/blockquote&gt;
&lt;br /&gt;
If it fails with valid flag: 5, it could be a problem with the way pipeline is restarted. CM should start after pipeline and you should not see listen with the port using following command:&lt;br /&gt;
&lt;br /&gt;
lsof -i|grep 10803&lt;br /&gt;
ifw&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 24438 pin08&amp;nbsp;&amp;nbsp; 35u&amp;nbsp; IPv6 447623857&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0t0&amp;nbsp; TCP *:10803 (LISTEN)&lt;br /&gt;
&lt;br /&gt;
Check for any extra RTP processes running before start RTP &lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://billingandrevenuemanagement.blogspot.com/feeds/811378205288299214/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2017/10/realtime-discounting-pipeline-reports.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/811378205288299214'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/811378205288299214'/><link rel='alternate' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2017/10/realtime-discounting-pipeline-reports.html' title='Realtime Discounting Pipeline Reports &quot;discount model: () is invalid&quot; In Discount Trace'/><author><name>Sachid</name><uri>http://www.blogger.com/profile/11822259414693161812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='27' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi3UalPnC1ZfHS6sIfVj6G1Rcme1JLvWa4eyGbwuQAYcDMmr9x5yx2uedvWVYMeFvDi1V50jZtph7LvUiNUKKxlio2_HnGARW876om1AkeiMrgZy6XL-agr5sbw2dwmivM/s97/sketched_small.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8317612857393390481.post-5609167959273441597</id><published>2016-11-08T17:42:00.002-08:00</published><updated>2016-11-08T17:42:45.945-08:00</updated><title type='text'>Dequeuing in Oracle BRM</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;br /&gt;
&lt;br /&gt;
Although it is not recommended, but sometimes in the test environment where there is no interface to dequeue the message from advance queue, the queue is clogged and we wish to dequeue it. Here is the way to do it:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;DECLARE&lt;br /&gt;po_t dbms_aqadm.aq$_purge_options_t;&lt;br /&gt;BEGIN&lt;br /&gt;dbms_aqadm.purge_queue_table(&#39;AQ_SYNC&#39;, NULL, po_t);&lt;br /&gt;END;&lt;br /&gt;
&lt;br /&gt;
Execute the above from SQL client or command line.&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://billingandrevenuemanagement.blogspot.com/feeds/5609167959273441597/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2016/11/dequeuing-in-oracle-brm.html#comment-form' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/5609167959273441597'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/5609167959273441597'/><link rel='alternate' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2016/11/dequeuing-in-oracle-brm.html' title='Dequeuing in Oracle BRM'/><author><name>Sachid</name><uri>http://www.blogger.com/profile/11822259414693161812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='27' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi3UalPnC1ZfHS6sIfVj6G1Rcme1JLvWa4eyGbwuQAYcDMmr9x5yx2uedvWVYMeFvDi1V50jZtph7LvUiNUKKxlio2_HnGARW876om1AkeiMrgZy6XL-agr5sbw2dwmivM/s97/sketched_small.jpg'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8317612857393390481.post-4183690534670403594</id><published>2016-02-09T13:54:00.000-08:00</published><updated>2016-10-15T18:47:19.568-07:00</updated><title type='text'> Useful logging information for cm and dm_oracle</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;h3 class=&quot;post-title entry-title&quot; itemprop=&quot;name&quot;&gt;
&lt;/h3&gt;
&lt;div class=&quot;post-header&quot;&gt;

&lt;/div&gt;
&lt;h2&gt;
&lt;span style=&quot;color: #20124d;&quot;&gt;Logging settings for cm and dm_oracle&lt;/span&gt;&lt;/h2&gt;
1) &lt;u&gt;For&amp;nbsp;logging the time taken by opcode in the cm.pinlog&lt;/u&gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Add the following lines in $PIN_HOME/sys/cm/pin.conf&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;&lt;span style=&quot;color: red;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - cm enable_pcm_op_call_stack 1&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - cm max_pcm_op_call_stack_entries 256&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-size: xx-small;&quot;&gt;This will start displaying the opcode time as below:&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: xx-small;&quot;&gt;cm_pcm_op_call_stack&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Seconds Type&amp;nbsp; Opcode (flags, notes)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0.000000000 Enter PCM_OP_READ_OBJ (0x0)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0.000348000 .Enter PCM_OP_READ_OBJ (0x0)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0.478129000 .Exit&amp;nbsp; PCM_OP_READ_OBJ (0x0) - from DM 0.0.0.1&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0.502946000 Exit&amp;nbsp; PCM_OP_READ_OBJ (0x0)&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
2) &lt;u&gt;For setting the cm to debug level&lt;/u&gt;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;strong&gt;&lt;span style=&quot;color: red;&quot;&gt;- cm cm_loglevel 3&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
3) &lt;u&gt;For&amp;nbsp;logging the PCM_OP_SEARCH input and output flist&lt;/u&gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; Add the following lines in $PIN_HOME/sys/cm/pin.conf&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;&lt;span style=&quot;color: red;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; - cm CMAP_DEBUG 0xFFFFFFFF&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;&lt;span style=&quot;color: red;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; - cm CM_DEBUG 0xFFFFFFFF&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
This should be used with cm in debug level.&lt;br /&gt;
&lt;br /&gt;
4) &lt;u&gt;Setting the cm log level to debug when cm is running&lt;/u&gt;&lt;br /&gt;
&lt;br /&gt;
cat cm_debug3&lt;br /&gt;&lt;strong&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;r &amp;lt;&amp;lt; XXX&amp;nbsp; 1&lt;br /&gt;0 PIN_FLD_POID POID [0] 0.0.0.1 /account 1 1&lt;br /&gt;0 PIN_FLD_COMPONENT STR [0] &quot;CM&quot;&lt;br /&gt;0 PIN_FLD_LOGLEVEL INT [0] 3&lt;br /&gt;XXX&lt;br /&gt;#&lt;br /&gt;xop PCM_OP_INFMGR_SET_LOGLEVEL 0 1&lt;br /&gt;#&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
run the below command from $PIN_HOME/test&lt;br /&gt;
&lt;strong&gt;testnap cm_debug3&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
5) &lt;u&gt;Setting the cm log level to&amp;nbsp;error when cm is running&lt;/u&gt;&lt;br /&gt;
 &lt;br /&gt;
cat cm_debug1&lt;br /&gt;&lt;strong&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;r &amp;lt;&amp;lt; XXX&amp;nbsp; 1&lt;br /&gt;0 PIN_FLD_POID POID [0] 0.0.0.1 /account 1 1&lt;br /&gt;0 PIN_FLD_COMPONENT STR [0] &quot;CM&quot;&lt;br /&gt;0 PIN_FLD_LOGLEVEL INT [0] 1&lt;br /&gt;XXX&lt;br /&gt;#&lt;br /&gt;xop PCM_OP_INFMGR_SET_LOGLEVEL 0 1&lt;br /&gt;#&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;
run the below command from $PIN_HOME/test&lt;br /&gt;
&lt;strong&gt;testnap cm_debug1&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
5) &lt;u&gt;Setting the&amp;nbsp;dm_oracle log level to&amp;nbsp;debug when cm&amp;nbsp;and dm are&amp;nbsp;running&lt;/u&gt;&lt;br /&gt;
&lt;br /&gt;cat dm_debug3&lt;br /&gt;&lt;strong&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;r &amp;lt;&amp;lt; XXX&amp;nbsp; 1&lt;br /&gt;0 PIN_FLD_POID POID [0] 0.0.0.1 /account 1 1&lt;br /&gt;0 PIN_FLD_COMPONENT STR [0] &quot;DM&quot;&lt;br /&gt;0 PIN_FLD_DEBUG_FLAG ARRAY [1] allocated 20, used 2&lt;br /&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PIN_FLD_NAME STR [0] &quot;DM_DEBUG&quot;&lt;br /&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PIN_FLD_FLAGS INT [0] 255&lt;br /&gt;0 PIN_FLD_DEBUG_FLAG ARRAY [2] allocated 20, used 2&lt;br /&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PIN_FLD_NAME STR [0] &quot;DM_DEBUG2&quot;&lt;br /&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PIN_FLD_FLAGS INT [0] 4090&lt;br /&gt;0 PIN_FLD_DEBUG_FLAG ARRAY [3] allocated 20, used 2&lt;br /&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp; PIN_FLD_NAME STR [0] &quot;DM_DEBUG3&quot;&lt;br /&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp; PIN_FLD_FLAGS INT [0] 65535&lt;br /&gt;XXX&lt;br /&gt;#&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;
run the below command from $PIN_HOME/test&lt;br /&gt;
testnap dm_debug3&lt;br /&gt;
&lt;br /&gt;
6) &lt;u&gt;Setting the dm_oracle log level to normal when cm and dm are running&lt;/u&gt;&lt;br /&gt;
&lt;br /&gt;
cat dm_debug1&lt;br /&gt;&lt;strong&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;r &amp;lt;&amp;lt; XXX&amp;nbsp; 1&lt;br /&gt;0 PIN_FLD_POID POID [0] 0.0.0.1 /account 1 1&lt;br /&gt;0 PIN_FLD_COMPONENT STR [0] &quot;DM&quot;&lt;br /&gt;0 PIN_FLD_DEBUG_FLAG ARRAY [1] allocated 20, used 2&lt;br /&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PIN_FLD_NAME STR [0] &quot;DM_DEBUG&quot;&lt;br /&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PIN_FLD_FLAGS INT [0] 255&lt;br /&gt;0 PIN_FLD_DEBUG_FLAG ARRAY [2] allocated 20, used 2&lt;br /&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PIN_FLD_NAME STR [0] &quot;DM_DEBUG2&quot;&lt;br /&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PIN_FLD_FLAGS INT [0] 0&lt;br /&gt;0 PIN_FLD_DEBUG_FLAG ARRAY [3] allocated 20, used 2&lt;br /&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp; PIN_FLD_NAME STR [0] &quot;DM_DEBUG3&quot;&lt;br /&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp; PIN_FLD_FLAGS INT [0] 0&lt;br /&gt;XXX&lt;br /&gt;#&lt;br /&gt;xop PCM_OP_INFMGR_SET_LOGLEVEL 0 1&lt;br /&gt;#&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;
&amp;nbsp;run the below command from $PIN_HOME/test&lt;br /&gt;
&lt;strong&gt;testnap dm_debug1&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
7) &lt;u&gt;Setting the dm_oracle to debug level&lt;/u&gt;&lt;br /&gt;
&lt;br /&gt;
Add the following lines in $PIN_HOME/sys/dm_oracle/pin.conf&lt;br /&gt;
&lt;strong&gt;&lt;span style=&quot;color: red;&quot;&gt;- dm dm_debug 0xff&lt;br /&gt;- dm dm_debug2 0xffa&lt;br /&gt;- dm dm_debug3 0xffff&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-size: xx-small;&quot;&gt;You can find the SQL statements as below in dm_oracle.pinlog file:&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: xx-small;&quot;&gt;SQL_STMT do_sql_update: cmd=&quot;update 
account_t set poid_rev = poid_rev + 1, mod_t = :mod_t, 
cust_seg_list=:cust_seg_list, currency=:currency, 
currency_secondary=:currency_secondary where poid_id0 = :poid_id0&quot;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: xx-small;&quot;&gt;There will be lot more useful information in dm_oracle.log file&lt;/span&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://billingandrevenuemanagement.blogspot.com/feeds/4183690534670403594/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2016/02/useful-logging-information-for-cm-and.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/4183690534670403594'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/4183690534670403594'/><link rel='alternate' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2016/02/useful-logging-information-for-cm-and.html' title=' Useful logging information for cm and dm_oracle'/><author><name>Sachid</name><uri>http://www.blogger.com/profile/11822259414693161812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='27' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi3UalPnC1ZfHS6sIfVj6G1Rcme1JLvWa4eyGbwuQAYcDMmr9x5yx2uedvWVYMeFvDi1V50jZtph7LvUiNUKKxlio2_HnGARW876om1AkeiMrgZy6XL-agr5sbw2dwmivM/s97/sketched_small.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8317612857393390481.post-7802581562083841451</id><published>2014-11-19T04:12:00.001-08:00</published><updated>2016-10-15T18:47:19.593-07:00</updated><title type='text'>Implementing new service (CDMA) - Text format</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;span style=&quot;color: purple; font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;There are a few services that are supported out of the box in BRM. These services include GSM, GPRS, IP et.c. To support&amp;nbsp; new service in BRM, lot of customization is required. This is specified in the BRM documentation,&amp;nbsp; but spread in lots of areas so it becomes pretty difficult to take help of the BRM doc to implement a new service. Here are some of the steps /guidelines to priovide support for a new service in BRM. In this context we have used CDMA service implementation.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;color: #20124d; font-family: &amp;quot;Helvetica Neue&amp;quot;, Arial, Helvetica, sans-serif;&quot;&gt;1]. Create or extend /service storable class e.g.&amp;nbsp;&lt;em&gt;/service/telco/cdma&lt;/em&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #20124d; font-family: Arial;&quot;&gt;2]. Create or extend the /event class for the delayed events (if the rating is to be done by batch pipeline) e.g.&amp;nbsp;&lt;em&gt;/event/delayed/session/telco/cdma&lt;/em&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #20124d; font-family: Arial;&quot;&gt;3]. Map&amp;nbsp;&lt;em&gt;/event/delayed/session/telco/cdma&amp;nbsp;&lt;/em&gt;event to&amp;nbsp;&lt;em&gt;/service/telco/cdma&lt;/em&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #20124d; font-family: Arial;&quot;&gt;&lt;em&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/em&gt;a). Edit BRM_HOME/sys/data/pricing/example/pin_event_map file&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #20124d; font-family: Arial;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;font-family: Times, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;&lt;span style=&quot;color: #990000;&quot;&gt;&lt;u&gt;&lt;strong&gt;Caution&lt;/strong&gt;&lt;/u&gt;&amp;nbsp;The load_event_map&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #990000;&quot;&gt;utility overwrites the existing event map.&amp;nbsp;If you are updating the event map, you can not load new mappings only.You must load the entire event map each time you run load_event_map utility.&lt;/span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
If you want to load gsm events also then you should edit&amp;nbsp;&lt;strong&gt;BRM_HOME/sys/data/config/pin_event_map_telco_gsm file&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/strong&gt;&lt;span style=&quot;color: #20124d; font-family: Arial;&quot;&gt;b). Add the service - event mapping&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #20124d; font-family: Arial;&quot;&gt;&lt;em&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /service/telco/cdma : /event/delayed/session/telco/cdma : Delayed CDMA session&lt;/em&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;color: #20124d; font-family: Arial;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; c). Load the configuration to the&amp;nbsp;&lt;strong&gt;&lt;u&gt;/config/event_map&lt;/u&gt;&lt;/strong&gt;&amp;nbsp;using the utility&amp;nbsp;&lt;strong&gt;load_pin_event_map&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #20124d; font-family: Arial;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;em&gt;$&amp;gt; load_pin_event_map -dv pin_event_map_telco_gsm&lt;/em&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;color: #20124d; font-family: Arial;&quot;&gt;4]. Defining RUMs for new service usage events&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #20124d; font-family: Arial;&quot;&gt;&amp;nbsp;&amp;nbsp; RUMs(Ratable Usage Metrics) are used to charge for the events. To define new RUMs(RUMs which are not already defined) for the new service, following steps should be performaed:&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #20124d; font-family: Arial;&quot;&gt;&amp;nbsp; a). Define new RUMs in the&amp;nbsp;&lt;strong&gt;&lt;em&gt;pin_rum&lt;/em&gt;&lt;/strong&gt;&amp;nbsp;configuration file&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #20124d; font-family: Arial;&quot;&gt;&amp;nbsp;&amp;nbsp;b). Load the contents of the&amp;nbsp;&lt;strong&gt;&lt;em&gt;pin_rum&lt;/em&gt;&amp;nbsp;&lt;/strong&gt;file to&amp;nbsp;&lt;strong&gt;&lt;u&gt;/config/rum&lt;/u&gt;&lt;/strong&gt;&amp;nbsp;object by using the&amp;nbsp;&lt;u&gt;&lt;em&gt;load_pin_rum&lt;/em&gt;&lt;/u&gt;&amp;nbsp;utility&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;color: #20124d; font-family: Arial;&quot;&gt;5]. Load item tags : If you want to add new/custom tag to use in the invoice/bill, you need to edit&amp;nbsp;&lt;u&gt;&lt;em&gt;config_item_types.xml&lt;/em&gt;&lt;/u&gt;&amp;nbsp;and&amp;nbsp;&lt;em&gt;&lt;u&gt;config_item_tags.xml&lt;/u&gt;&lt;/em&gt;. In this example, we have created a new tag for CDMA service&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #20124d; font-family: Arial;&quot;&gt;&amp;nbsp; a).&amp;nbsp;Add the new tag element in the&amp;nbsp;&lt;em&gt;BRM_HOME/sys/data/pricing/example/config_item_tags.xml&lt;/em&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;color: black; font-family: Times, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;&amp;nbsp;&amp;nbsp; &amp;lt;ItemTagElement&amp;gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: black; font-family: Times, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;lt;ItemTag&amp;gt;CDMA_Telephony&amp;lt;/ItemTag&amp;gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: black; font-family: Times, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;EventType&amp;gt;/event/delayed/session/telco/cdma&amp;lt;/EventType&amp;gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: black; font-family: Times, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;lt;ServiceType&amp;gt;/service/telco/cdma/*&amp;lt;/ServiceType&amp;gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: black; font-family: Times, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;&amp;nbsp;&amp;nbsp; &amp;lt;/ItemTagElement&amp;gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;color: #20124d; font-family: Arial;&quot;&gt;&amp;nbsp; b). Load tags using&amp;nbsp;&lt;u&gt;&lt;em&gt;load_config_item_tags&lt;/em&gt;&lt;/u&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #20124d; font-family: Arial;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;em&gt;$&amp;gt;. load_config_item_tags -dv config_item_tags.xml&lt;/em&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;color: #20124d; font-family: Arial;&quot;&gt;&lt;em&gt;&amp;nbsp;&amp;nbsp;&lt;/em&gt;c). Add the item tag configuration in the config_item_types.xml&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #20124d; font-family: Arial;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color: black; font-family: Times, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;ItemTypeElement&amp;gt;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: black; font-family: Times;&quot;&gt;&amp;lt;ItemTag&amp;gt;CDMA_Telephony&amp;lt;/ItemTag&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: black; font-family: Times;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;ItemDescription&amp;gt;CDMA Telephony&amp;lt;/ItemDescription&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: black; font-family: Times;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;ItemType precreate=&quot;true&quot; type=&quot;cumulative&quot;&amp;gt;/item/misc&amp;lt;/ItemType&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: black; font-family: Times;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/ItemTypeElement&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color: black; font-family: Times;&quot;&gt;&lt;span style=&quot;color: #20124d; font-family: Arial;&quot;&gt;&amp;nbsp; d). Load using&amp;nbsp;&lt;u&gt;&lt;em&gt;load_config_item_types&lt;/em&gt;&lt;/u&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #20124d; font-family: Arial;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;em&gt;$&amp;gt;. load_config_item_types -dv config_item_types.xml&lt;/em&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color: #20124d; font-family: Arial;&quot;&gt;&lt;u&gt;&lt;span style=&quot;font-size: large;&quot;&gt;&amp;nbsp;&lt;strong&gt;&lt;span style=&quot;color: #274e13; font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;Define the new service and service class&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/u&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color: #20124d; font-family: Arial;&quot;&gt;&amp;nbsp;&amp;nbsp; 1). Add new service using the pipeline setup toolbox in pricing centre&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; a.&amp;nbsp; Open &quot;Pipeline Setup Tool Box&quot; from pricing centre&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; b.&amp;nbsp; Click on Product&amp;amp;Service&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; c.&amp;nbsp; Click on Service. Make a new service&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; d.&amp;nbsp;&amp;nbsp;Give below entries on &quot;Service&quot; page:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;table border=&quot;0&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; style=&quot;border-collapse: collapse; width: 482px;&quot;&gt;&lt;colgroup&gt;&lt;col style=&quot;mso-width-alt: 6656; mso-width-source: userset; width: 137pt;&quot; width=&quot;182&quot;&gt;&lt;/col&gt;&lt;col style=&quot;mso-width-alt: 10971; mso-width-source: userset; width: 225pt;&quot; width=&quot;300&quot;&gt;&lt;/col&gt;&lt;/colgroup&gt;&lt;tbody&gt;
&lt;tr height=&quot;20&quot; style=&quot;height: 15pt;&quot;&gt;&lt;td class=&quot;xl68&quot; height=&quot;20&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext 0.5pt solid; border-right: windowtext 0.5pt solid; border-top: windowtext 0.5pt solid; height: 15pt; width: 137pt;&quot; width=&quot;182&quot;&gt;&lt;strong&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;Service Code&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;td class=&quot;xl66&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext 0.5pt solid; width: 225pt;&quot; width=&quot;300&quot;&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;CDMAT&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;20&quot; style=&quot;height: 15pt;&quot;&gt;&lt;td class=&quot;xl68&quot; height=&quot;20&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext 0.5pt solid; border-right: windowtext 0.5pt solid; border-top: windowtext; height: 15pt;&quot;&gt;&lt;strong&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;Name&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;td class=&quot;xl66&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext;&quot;&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;CDMA Telephony Service&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;20&quot; style=&quot;height: 15pt;&quot;&gt;&lt;td class=&quot;xl68&quot; height=&quot;20&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext 0.5pt solid; border-right: windowtext 0.5pt solid; border-top: windowtext; height: 15pt;&quot;&gt;&lt;strong&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;Rank&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;td align=&quot;right&quot; class=&quot;xl66&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext;&quot;&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;1&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;20&quot; style=&quot;height: 15pt;&quot;&gt;&lt;td class=&quot;xl68&quot; height=&quot;20&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext 0.5pt solid; border-right: windowtext 0.5pt solid; border-top: windowtext; height: 15pt;&quot;&gt;&lt;strong&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;Type of Service&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;td class=&quot;xl66&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext;&quot;&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;Basic(choose from drop down)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;20&quot; style=&quot;height: 15pt;&quot;&gt;&lt;td class=&quot;xl68&quot; height=&quot;20&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext 0.5pt solid; border-right: windowtext 0.5pt solid; border-top: windowtext; height: 15pt;&quot;&gt;&lt;strong&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;Ratable Usage Metric Group&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;td class=&quot;xl66&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext;&quot;&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;DURATION-Duration (choose from drop down)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;20&quot; style=&quot;height: 15pt;&quot;&gt;&lt;td class=&quot;xl68&quot; height=&quot;20&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext 0.5pt solid; border-right: windowtext 0.5pt solid; border-top: windowtext; height: 15pt;&quot;&gt;&lt;strong&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;General Ledger Account&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;td class=&quot;xl66&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext;&quot;&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;1420-National Airtime telephony&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;20&quot; style=&quot;height: 15pt;&quot;&gt;&lt;td class=&quot;xl68&quot; height=&quot;20&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext 0.5pt solid; border-right: windowtext 0.5pt solid; border-top: windowtext; height: 15pt;&quot;&gt;&lt;strong&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;Revenue Group&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;td class=&quot;xl66&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext;&quot;&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;Blank&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;20&quot; style=&quot;height: 15pt;&quot;&gt;&lt;td class=&quot;xl68&quot; height=&quot;20&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext 0.5pt solid; border-right: windowtext 0.5pt solid; border-top: windowtext; height: 15pt;&quot;&gt;&lt;strong&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;Parent Service&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;td class=&quot;xl66&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext;&quot;&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;Blank&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;20&quot; style=&quot;height: 15pt;&quot;&gt;&lt;td class=&quot;xl68&quot; height=&quot;20&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext 0.5pt solid; border-right: windowtext 0.5pt solid; border-top: windowtext; height: 15pt;&quot;&gt;&lt;strong&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;Basic&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;td class=&quot;xl66&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext;&quot;&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;Click the check box&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;20&quot; style=&quot;height: 15pt;&quot;&gt;&lt;td class=&quot;xl68&quot; height=&quot;20&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext 0.5pt solid; border-right: windowtext 0.5pt solid; border-top: windowtext; height: 15pt;&quot;&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;&lt;strong&gt;PIN Service Type&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;&lt;td class=&quot;xl67&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext;&quot;&gt;&lt;span style=&quot;font-family: Simsun;&quot;&gt;&lt;strong&gt;/service/telco/cdma/telephony&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;20&quot; style=&quot;height: 15pt;&quot;&gt;&lt;td class=&quot;xl68&quot; height=&quot;20&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext 0.5pt solid; border-right: windowtext 0.5pt solid; border-top: windowtext; height: 15pt;&quot;&gt;&lt;strong&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;History&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;td class=&quot;xl65&quot; style=&quot;background-color: transparent; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; e.&amp;nbsp;&amp;nbsp;Give below entries on &quot;Service Class&quot; page&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;
&lt;table border=&quot;0&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; style=&quot;border-collapse: collapse; width: 496px;&quot;&gt;&lt;colgroup&gt;&lt;col style=&quot;mso-width-alt: 7058; mso-width-source: userset; width: 145pt;&quot; width=&quot;193&quot;&gt;&lt;/col&gt;&lt;col style=&quot;mso-width-alt: 3181; mso-width-source: userset; width: 65pt;&quot; width=&quot;87&quot;&gt;&lt;/col&gt;&lt;col style=&quot;mso-width-alt: 6034; mso-width-source: userset; width: 124pt;&quot; width=&quot;165&quot;&gt;&lt;/col&gt;&lt;col style=&quot;mso-width-alt: 1865; mso-width-source: userset; width: 38pt;&quot; width=&quot;51&quot;&gt;&lt;/col&gt;&lt;/colgroup&gt;&lt;tbody&gt;
&lt;tr height=&quot;20&quot; style=&quot;height: 15pt;&quot;&gt;&lt;td class=&quot;xl67&quot; height=&quot;20&quot; style=&quot;background-color: transparent; border-bottom: windowtext 0.5pt solid; border-left: windowtext 0.5pt solid; border-right: windowtext 0.5pt solid; border-top: windowtext 0.5pt solid; height: 15pt; width: 145pt;&quot; width=&quot;193&quot;&gt;&lt;strong&gt;Service Code&lt;/strong&gt;&lt;/td&gt;&lt;td class=&quot;xl68&quot; style=&quot;background-color: transparent; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext 0.5pt solid; width: 65pt;&quot; width=&quot;87&quot;&gt;&lt;strong&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;Service Class&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;td class=&quot;xl68&quot; style=&quot;background-color: transparent; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext 0.5pt solid; width: 124pt;&quot; width=&quot;165&quot;&gt;&lt;strong&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;Name&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;td class=&quot;xl68&quot; style=&quot;background-color: transparent; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext 0.5pt solid; width: 38pt;&quot; width=&quot;51&quot;&gt;&lt;strong&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;History&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;40&quot; style=&quot;height: 30pt;&quot;&gt;&lt;td class=&quot;xl65&quot; height=&quot;40&quot; style=&quot;background-color: transparent; border-bottom: windowtext 0.5pt solid; border-left: windowtext 0.5pt solid; border-right: windowtext 0.5pt solid; border-top: windowtext; height: 30pt; width: 145pt;&quot; width=&quot;193&quot;&gt;CDMAT-CDMA&amp;nbsp;&amp;nbsp;&lt;span class=&quot;font6&quot; style=&quot;font-family: Calibri;&quot;&gt;Telephony Service&lt;/span&gt;&lt;span class=&quot;font5&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;&lt;td class=&quot;xl66&quot; style=&quot;background-color: transparent; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext; width: 65pt;&quot; width=&quot;87&quot;&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;DEF&lt;/span&gt;&lt;/td&gt;&lt;td class=&quot;xl66&quot; style=&quot;background-color: transparent; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext; width: 124pt;&quot; width=&quot;165&quot;&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;Default Service Class for CDMA TEL&lt;span style=&quot;mso-spacerun: yes;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td class=&quot;xl69&quot; style=&quot;background-color: transparent; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;color: #20124d; font-family: Arial;&quot;&gt;&amp;nbsp; 2. Add reference mapping&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #20124d; font-family: Arial;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; a. Open &quot;Pipeline Setup Toolbox&quot; from pricing centre&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #20124d; font-family: Arial;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; b. Click on reference mapping&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #20124d; font-family: Arial;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; c. Click on Product &amp;amp; Service&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #20124d; font-family: Arial;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; d. Enter the following entries on &quot;Reference Mapping&quot; page&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;table border=&quot;0&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; style=&quot;border-collapse: collapse; width: 427px;&quot;&gt;&lt;colgroup&gt;&lt;col style=&quot;mso-width-alt: 5485; mso-width-source: userset; width: 113pt;&quot; width=&quot;150&quot;&gt;&lt;/col&gt;&lt;col style=&quot;mso-width-alt: 10130; mso-width-source: userset; width: 208pt;&quot; width=&quot;277&quot;&gt;&lt;/col&gt;&lt;/colgroup&gt;&lt;tbody&gt;
&lt;tr height=&quot;20&quot; style=&quot;height: 15pt;&quot;&gt;&lt;td class=&quot;xl67&quot; height=&quot;20&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext 0.5pt solid; border-right: windowtext 0.5pt solid; border-top: windowtext 0.5pt solid; height: 15pt; width: 113pt;&quot; width=&quot;150&quot;&gt;&lt;strong&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;ID&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;td class=&quot;xl65&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext 0.5pt solid; width: 208pt;&quot; width=&quot;277&quot;&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;CustomerData&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;20&quot; style=&quot;height: 15pt;&quot;&gt;&lt;td class=&quot;xl67&quot; height=&quot;20&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext 0.5pt solid; border-right: windowtext 0.5pt solid; border-top: windowtext; height: 15pt;&quot;&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;&lt;strong&gt;Referenced Object&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;&lt;td class=&quot;xl66&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext;&quot;&gt;&lt;span style=&quot;font-family: Simsun;&quot;&gt;&lt;strong&gt;/service/telco/cdma/telephony&lt;/strong&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;20&quot; style=&quot;height: 15pt;&quot;&gt;&lt;td class=&quot;xl67&quot; height=&quot;20&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext 0.5pt solid; border-right: windowtext 0.5pt solid; border-top: windowtext; height: 15pt;&quot;&gt;&lt;strong&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;Referenced Column&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;td class=&quot;xl65&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext;&quot;&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;Blank&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;20&quot; style=&quot;height: 15pt;&quot;&gt;&lt;td class=&quot;xl67&quot; height=&quot;20&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext 0.5pt solid; border-right: windowtext 0.5pt solid; border-top: windowtext; height: 15pt;&quot;&gt;&lt;strong&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;Referenced Parameter&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;td class=&quot;xl65&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext;&quot;&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;/event/delayed/session/telco/cdma&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;20&quot; style=&quot;height: 15pt;&quot;&gt;&lt;td class=&quot;xl67&quot; height=&quot;20&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext 0.5pt solid; border-right: windowtext 0.5pt solid; border-top: windowtext; height: 15pt;&quot;&gt;&lt;strong&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;History&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;td class=&quot;xl65&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;color: #20124d; font-family: Arial;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;color: #20124d; font-family: Arial;&quot;&gt;&amp;nbsp; 3. Map&amp;nbsp;service code&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #20124d; font-family: Arial;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; a. Open &quot;Pipeline Setup Toolbox&quot; from pricing centre&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #20124d; font-family: Arial;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; b. Click on Mapping &amp;amp; Enhancement&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #20124d; font-family: Arial;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; c. Click on Map group&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #20124d; font-family: Arial;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; d. Map group looks like :&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;table border=&quot;0&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; style=&quot;border-collapse: collapse; width: 403px;&quot;&gt;&lt;colgroup&gt;&lt;col style=&quot;mso-width-alt: 3328; mso-width-source: userset; width: 68pt;&quot; width=&quot;91&quot;&gt;&lt;/col&gt;&lt;col style=&quot;mso-width-alt: 9069; mso-width-source: userset; width: 186pt;&quot; width=&quot;248&quot;&gt;&lt;/col&gt;&lt;col style=&quot;width: 48pt;&quot; width=&quot;64&quot;&gt;&lt;/col&gt;&lt;/colgroup&gt;&lt;tbody&gt;
&lt;tr height=&quot;20&quot; style=&quot;height: 15pt;&quot;&gt;&lt;td class=&quot;xl66&quot; height=&quot;20&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext 0.5pt solid; border-right: windowtext 0.5pt solid; border-top: windowtext 0.5pt solid; height: 15pt; width: 68pt;&quot; width=&quot;91&quot;&gt;&lt;strong&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;Map Group&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;td class=&quot;xl66&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext 0.5pt solid; width: 186pt;&quot; width=&quot;248&quot;&gt;&lt;strong&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;Name&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;td class=&quot;xl66&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext 0.5pt solid; width: 48pt;&quot; width=&quot;64&quot;&gt;&lt;strong&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;History&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;20&quot; style=&quot;height: 15pt;&quot;&gt;&lt;td class=&quot;xl65&quot; height=&quot;20&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext 0.5pt solid; border-right: windowtext 0.5pt solid; border-top: windowtext; height: 15pt;&quot;&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;ALL_RATE&lt;/span&gt;&lt;/td&gt;&lt;td class=&quot;xl65&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext;&quot;&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;Wireless Sample Mapping&lt;/span&gt;&lt;/td&gt;&lt;td class=&quot;xl65&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;20&quot; style=&quot;height: 15pt;&quot;&gt;&lt;td class=&quot;xl65&quot; height=&quot;20&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext 0.5pt solid; border-right: windowtext 0.5pt solid; border-top: windowtext; height: 15pt;&quot;&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;INCOLLECT&lt;/span&gt;&lt;/td&gt;&lt;td class=&quot;xl65&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext;&quot;&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;Incollect Settlement Pipeline Mapping&lt;/span&gt;&lt;/td&gt;&lt;td class=&quot;xl65&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;20&quot; style=&quot;height: 15pt;&quot;&gt;&lt;td class=&quot;xl65&quot; height=&quot;20&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext 0.5pt solid; border-right: windowtext 0.5pt solid; border-top: windowtext; height: 15pt;&quot;&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;OUTCOLLECT&lt;/span&gt;&lt;/td&gt;&lt;td class=&quot;xl65&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext;&quot;&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;Incollect Settlement Pipeline Mapping&lt;/span&gt;&lt;/td&gt;&lt;td class=&quot;xl65&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; e. Click on ALL_RATE and edit&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; f. Goto to Service Code Map and create new with the following details&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;table border=&quot;0&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; style=&quot;border-collapse: collapse; width: 470px;&quot;&gt;&lt;colgroup&gt;&lt;col style=&quot;mso-width-alt: 8118; mso-width-source: userset; width: 167pt;&quot; width=&quot;222&quot;&gt;&lt;/col&gt;&lt;col style=&quot;mso-width-alt: 9069; mso-width-source: userset; width: 186pt;&quot; width=&quot;248&quot;&gt;&lt;/col&gt;&lt;/colgroup&gt;&lt;tbody&gt;
&lt;tr height=&quot;20&quot; style=&quot;height: 15pt;&quot;&gt;&lt;td class=&quot;xl67&quot; height=&quot;20&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext 0.5pt solid; border-right: windowtext 0.5pt solid; border-top: windowtext 0.5pt solid; height: 15pt; width: 167pt;&quot; width=&quot;222&quot;&gt;&lt;strong&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;Map Group&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;td class=&quot;xl66&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext 0.5pt solid; width: 186pt;&quot; width=&quot;248&quot;&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;ALL_RATE-Wireless Sample Mapping&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;20&quot; style=&quot;height: 15pt;&quot;&gt;&lt;td class=&quot;xl67&quot; height=&quot;20&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext 0.5pt solid; border-right: windowtext 0.5pt solid; border-top: windowtext; height: 15pt;&quot;&gt;&lt;strong&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;Name&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;td class=&quot;xl66&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext;&quot;&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;Telephony service for CDMA&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;20&quot; style=&quot;height: 15pt;&quot;&gt;&lt;td class=&quot;xl67&quot; height=&quot;20&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext 0.5pt solid; border-right: windowtext 0.5pt solid; border-top: windowtext; height: 15pt;&quot;&gt;&lt;strong&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;External Service Code&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;td class=&quot;xl66&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext;&quot;&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;CDMA.*&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;20&quot; style=&quot;height: 15pt;&quot;&gt;&lt;td class=&quot;xl67&quot; height=&quot;20&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext 0.5pt solid; border-right: windowtext 0.5pt solid; border-top: windowtext; height: 15pt;&quot;&gt;&lt;strong&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;Usage Class&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;td class=&quot;xl66&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext;&quot;&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;.*&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;20&quot; style=&quot;height: 15pt;&quot;&gt;&lt;td class=&quot;xl67&quot; height=&quot;20&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext 0.5pt solid; border-right: windowtext 0.5pt solid; border-top: windowtext; height: 15pt;&quot;&gt;&lt;strong&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;Location Area Indicator VAS-Event&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;td class=&quot;xl66&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext;&quot;&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;.*&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;20&quot; style=&quot;height: 15pt;&quot;&gt;&lt;td class=&quot;xl67&quot; height=&quot;20&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext 0.5pt solid; border-right: windowtext 0.5pt solid; border-top: windowtext; height: 15pt;&quot;&gt;&lt;strong&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;Quality of Service Requested&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;td class=&quot;xl66&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext;&quot;&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;.*&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;20&quot; style=&quot;height: 15pt;&quot;&gt;&lt;td class=&quot;xl67&quot; height=&quot;20&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext 0.5pt solid; border-right: windowtext 0.5pt solid; border-top: windowtext; height: 15pt;&quot;&gt;&lt;strong&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;Quality of Service Used&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;td class=&quot;xl66&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext;&quot;&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;.*&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;20&quot; style=&quot;height: 15pt;&quot;&gt;&lt;td class=&quot;xl67&quot; height=&quot;20&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext 0.5pt solid; border-right: windowtext 0.5pt solid; border-top: windowtext; height: 15pt;&quot;&gt;&lt;strong&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;Record Type&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;td class=&quot;xl66&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext;&quot;&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;.*&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;20&quot; style=&quot;height: 15pt;&quot;&gt;&lt;td class=&quot;xl67&quot; height=&quot;20&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext 0.5pt solid; border-right: windowtext 0.5pt solid; border-top: windowtext; height: 15pt;&quot;&gt;&lt;strong&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;Intern Service Code&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;td class=&quot;xl66&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext;&quot;&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;CDMAT-CDMA Telephony Service&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;20&quot; style=&quot;height: 15pt;&quot;&gt;&lt;td class=&quot;xl67&quot; height=&quot;20&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext 0.5pt solid; border-right: windowtext 0.5pt solid; border-top: windowtext; height: 15pt;&quot;&gt;&lt;strong&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;Intern Service Class&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;td class=&quot;xl66&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext;&quot;&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;DEF&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;20&quot; style=&quot;height: 15pt;&quot;&gt;&lt;td class=&quot;xl67&quot; height=&quot;20&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext 0.5pt solid; border-right: windowtext 0.5pt solid; border-top: windowtext; height: 15pt;&quot;&gt;&lt;strong&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;History&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;td class=&quot;xl65&quot; style=&quot;background-color: transparent; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;br /&gt;
Note : Make sure that in the Service Code Map, new service map should come before default service(i.e, service map with name Everything else…)&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp; 4. Add container field for the new service&lt;br /&gt;
&lt;span style=&quot;color: #20124d; font-family: Arial;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; a. Open &quot;Pipeline Setup Toolbox&quot; from pricing centre&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #20124d; font-family: Arial;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; b. Click on EDR&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #20124d; font-family: Arial;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; c. Click on EDR Container Description. This page will look like as :&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;table border=&quot;0&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; style=&quot;border-collapse: collapse; width: 614px;&quot;&gt;&lt;colgroup&gt;&lt;col style=&quot;mso-width-alt: 7058; mso-width-source: userset; width: 145pt;&quot; width=&quot;193&quot;&gt;&lt;/col&gt;&lt;col style=&quot;mso-width-alt: 9362; mso-width-source: userset; width: 192pt;&quot; width=&quot;256&quot;&gt;&lt;/col&gt;&lt;col style=&quot;mso-width-alt: 6034; mso-width-source: userset; width: 124pt;&quot; width=&quot;165&quot;&gt;&lt;/col&gt;&lt;/colgroup&gt;&lt;tbody&gt;
&lt;tr height=&quot;20&quot; style=&quot;height: 15pt;&quot;&gt;&lt;td class=&quot;xl67&quot; height=&quot;20&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext 0.5pt solid; border-right: windowtext 0.5pt solid; border-top: windowtext 0.5pt solid; height: 15pt; width: 145pt;&quot; width=&quot;193&quot;&gt;&lt;strong&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;EDR Container Description&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;td class=&quot;xl67&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext 0.5pt solid; width: 192pt;&quot; width=&quot;256&quot;&gt;&lt;strong&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;Name&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;td class=&quot;xl67&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext 0.5pt solid; width: 124pt;&quot; width=&quot;165&quot;&gt;&lt;strong&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;History&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;20&quot; style=&quot;height: 15pt;&quot;&gt;&lt;td class=&quot;xl66&quot; height=&quot;20&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext 0.5pt solid; border-right: windowtext 0.5pt solid; border-top: windowtext; height: 15pt;&quot;&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;ALL_RATE&lt;/span&gt;&lt;/td&gt;&lt;td class=&quot;xl66&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext;&quot;&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;WIRELESS_SAMPLE contanier description&lt;/span&gt;&lt;/td&gt;&lt;td class=&quot;xl66&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;20&quot; style=&quot;height: 15pt;&quot;&gt;&lt;td class=&quot;xl66&quot; height=&quot;20&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext 0.5pt solid; border-right: windowtext 0.5pt solid; border-top: windowtext; height: 15pt;&quot;&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;EXAMPLE&lt;/span&gt;&lt;/td&gt;&lt;td class=&quot;xl66&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext;&quot;&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;Exmaple container description&lt;/span&gt;&lt;/td&gt;&lt;td class=&quot;xl65&quot; style=&quot;background-color: transparent; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; d. Select ALL_RATE and edit. This will open EDR Conatiner Description with three tabs&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; i. EDR Container Description&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ii. EDR Container Field&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; iii. Alias Mapping&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; e. Select Alias Mapping and create new Alias Mapping with the following details :&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;table border=&quot;0&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; style=&quot;border-collapse: collapse; width: 525px;&quot;&gt;&lt;colgroup&gt;&lt;col style=&quot;mso-width-alt: 6912; mso-width-source: userset; width: 142pt;&quot; width=&quot;189&quot;&gt;&lt;/col&gt;&lt;col style=&quot;mso-width-alt: 12288; mso-width-source: userset; width: 252pt;&quot; width=&quot;336&quot;&gt;&lt;/col&gt;&lt;/colgroup&gt;&lt;tbody&gt;
&lt;tr height=&quot;20&quot; style=&quot;height: 15pt;&quot;&gt;&lt;td class=&quot;xl66&quot; height=&quot;20&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext 0.5pt solid; border-right: windowtext 0.5pt solid; border-top: windowtext 0.5pt solid; height: 15pt; width: 142pt;&quot; width=&quot;189&quot;&gt;&lt;strong&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;EDR Container Description&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;td class=&quot;xl65&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext 0.5pt solid; width: 252pt;&quot; width=&quot;336&quot;&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;ALL_RATE - WIRELESS_SAMPLE conatiner description&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;20&quot; style=&quot;height: 15pt;&quot;&gt;&lt;td class=&quot;xl66&quot; height=&quot;20&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext 0.5pt solid; border-right: windowtext 0.5pt solid; border-top: windowtext; height: 15pt;&quot;&gt;&lt;strong&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;Reference&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;td class=&quot;xl65&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext;&quot;&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;UniData_CustA&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;20&quot; style=&quot;height: 15pt;&quot;&gt;&lt;td class=&quot;xl66&quot; height=&quot;20&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext 0.5pt solid; border-right: windowtext 0.5pt solid; border-top: windowtext; height: 15pt;&quot;&gt;&lt;strong&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;Key&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;td class=&quot;xl65&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext;&quot;&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;CDMAT&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;20&quot; style=&quot;height: 15pt;&quot;&gt;&lt;td class=&quot;xl66&quot; height=&quot;20&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext 0.5pt solid; border-right: windowtext 0.5pt solid; border-top: windowtext; height: 15pt;&quot;&gt;&lt;strong&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;Type&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;td class=&quot;xl65&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext;&quot;&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;Internal(choose from drop down)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;20&quot; style=&quot;height: 15pt;&quot;&gt;&lt;td class=&quot;xl66&quot; height=&quot;20&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext 0.5pt solid; border-right: windowtext 0.5pt solid; border-top: windowtext; height: 15pt;&quot;&gt;&lt;strong&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;Field ID&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;td class=&quot;xl65&quot; style=&quot;background-color: white; border-bottom: windowtext 0.5pt solid; border-left: windowtext; border-right: windowtext 0.5pt solid; border-top: windowtext;&quot;&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;DETAIL.A_NUMBER&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;&lt;u&gt;&lt;span style=&quot;color: #274e13; font-family: Georgia; font-size: large;&quot;&gt;Configuring Pipeline Manager to rate the events of the new service&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;1. Configure the IRL_EventTypeSplitting iScript to split EDRs by service code: Add&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;em&gt;&lt;span style=&quot;color: #660000;&quot;&gt;CDMAT:CDMAOutput&lt;/span&gt;&lt;/em&gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; as the last line in the PIPELINE_HOME/iScriptLib/iScriptLib_Standard/IRL_EventTypeSplitting.data&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp; 2. Edit wireless.reg to redirect output for CDMA, add the following piece of code/configuration&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;color: #444444; font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;&quot;&gt;#----------------------------------------&amp;nbsp;&lt;br /&gt;#The /service/cdma/telephony output stream&amp;nbsp;&lt;br /&gt;#----------------------------------------&amp;nbsp;&lt;br /&gt;CDMAOutput&amp;nbsp;&lt;br /&gt;{&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp; ModuleName = OUT_GenericStream&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp; ProcessType = RATING_PIPELINE&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;EventType = /event/delayed/session/telco/cdma&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp; Module&lt;br /&gt;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Grammar = ./formatDesc/Formats/Solution42/V670_EVENT_LOADER_OutGrammar.dsc&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DeleteEmptyStream = True&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;OutputStream&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ModuleName = EXT_OutFileManager&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Module&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; OutputPath = ./data/out/cdma/telephony&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; OutputPrefix = test_CDMA&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; OutputSuffix = .out&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;TempPrefix = .&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;TempDataPath = ./data/out/cdma/telephony&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;TemDataPrefix = cdma.tmp.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;TempDataSuffix = .data&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Replace = TRUE&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp; &amp;nbsp;}&lt;br /&gt;}# end of TELOutput&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;CONV_CDMAOutput&amp;nbsp;&lt;br /&gt;{&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp; ModuleName = OUT_GenericStream&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp; ProcessType = RATING_PIPELINE&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;EventType = /event/delayed/session/telco/cdma&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp; ObjectCacheType = CONVERGENT&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp; Module&lt;br /&gt;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;Grammar = ./formatDesc/Formats/Solution42/V670_EVENT_LOADER_OutGrammar.dsc&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;DeleteEmptyStream = True&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;OutputStream&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;ModuleName = EXT_OutFileManager&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;Module&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;OutputPath = ./data/out/cdma/telephony&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;OutputPrefix = test_CDMA&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;OutputSuffix = .out&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;TempPrefix = .&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;TempDataPath = ./data/out/cdma/telephony&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;TemDataPrefix = cdma.tmp.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;TempDataSuffix = .data&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Replace = TRUE&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp; &amp;nbsp;}&lt;br /&gt;}# end of CONV_TELOutput&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp; 3. Create IFW_HOME/data/out/cdma/telephony&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: #444444; font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;&quot;&gt;$&amp;gt;. mkdir -p IFW_HOME/data/out/cdma/telephony&lt;/span&gt;&lt;br /&gt;
&amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;&lt;u&gt;&lt;span style=&quot;color: #274e13; font-family: Georgia; font-size: large;&quot;&gt;Changes in PIN_REL for loading rated events&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; 1. Add the event tables for the new event in the Infranet.properties of apps/pin_rel&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;color: #444444; font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;&quot;&gt;#/event/delayed/session/telco/cdma&lt;br /&gt;infranet.rel.storable_class.event_delayed_session_telco_cdma.number_of_tables = 9&lt;br /&gt;infranet.rel.storable_class.event_delayed_session_telco_cdma.table.1.name = event_t&lt;br /&gt;infranet.rel.storable_class.event_delayed_session_telco_cdma.table.2.name = event_bal_impacts_t&lt;br /&gt;infranet.rel.storable_class.event_delayed_session_telco_cdma.table.3.name = event_essentials_t&lt;br /&gt;infranet.rel.storable_class.event_delayed_session_telco_cdma.table.4.name = event_dlay_sess_tlcs_t&lt;br /&gt;infranet.rel.storable_class.event_delayed_session_telco_cdma.table.5.name = event_dlay_sess_tlcs_svc_cds_t&lt;br /&gt;infranet.rel.storable_class.event_delayed_session_telco_cdma.table.6.name = event_dlyd_session_tlco_cdma_t&lt;br /&gt;infranet.rel.storable_class.event_delayed_session_telco_cdma.table.7.name = event_tax_jurisdictions_t&lt;br /&gt;infranet.rel.storable_class.event_delayed_session_telco_cdma.table.8.name = event_rum_map_t&lt;br /&gt;infranet.rel.storable_class.event_delayed_session_telco_cdma.table.9.name = tmp_profile_event_ordering_t&lt;/span&gt;&amp;nbsp;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2. Create ctl file for CDMA before loading the events using pin_rel&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; a. Copy the original&amp;nbsp;&lt;em&gt;event_dlyd_session_tlco_gsm_t.ctl&amp;nbsp;&lt;/em&gt;to&amp;nbsp;&lt;em&gt;event_dlyd_session_tlco_cdma_t.ctl&lt;/em&gt;, as we are not changing anything on field level.&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; b. Open event_dlyd_session_tlco_cdma_t.ctl file and change the following…&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;color: #444444; font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;&quot;&gt;UNCOVERABLE&lt;br /&gt;LOAD DATA&lt;br /&gt;APPEND&lt;br /&gt;INTO TABLE EVENT_DLYD_SESSION_TLCO_CDMA_T // table name changed&lt;br /&gt;SINGLEROW&lt;br /&gt;PARTITION&lt;br /&gt;(first the partition utility is run to create partition for /event/delayed /session/telco/cdma class)&lt;br /&gt;partition_utils -o add -c /event/delayed/session/telco/cdma&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;color: #444444; font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;&quot;&gt;&lt;span style=&quot;color: purple; font-family: &amp;quot;Trebuchet MS&amp;quot;, sans-serif;&quot;&gt;New service is ready to use. You can start by creating new products. deals, discounts and plans.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://billingandrevenuemanagement.blogspot.com/feeds/7802581562083841451/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2014/11/implementing-new-service-cdma-text.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/7802581562083841451'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/7802581562083841451'/><link rel='alternate' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2014/11/implementing-new-service-cdma-text.html' title='Implementing new service (CDMA) - Text format'/><author><name>Sachid</name><uri>http://www.blogger.com/profile/11822259414693161812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='27' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi3UalPnC1ZfHS6sIfVj6G1Rcme1JLvWa4eyGbwuQAYcDMmr9x5yx2uedvWVYMeFvDi1V50jZtph7LvUiNUKKxlio2_HnGARW876om1AkeiMrgZy6XL-agr5sbw2dwmivM/s97/sketched_small.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8317612857393390481.post-4955239506400660505</id><published>2014-07-21T01:53:00.000-07:00</published><updated>2014-07-21T01:53:03.124-07:00</updated><title type='text'>A simple Oracle DB function to convert timestamp to date</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;br /&gt;
&lt;br /&gt;
In BRM, all the time and date is stored in number format and it is required to convert them if you are reading it from the DB.&lt;br /&gt;
Lots of developers write functions or utilities to convert it to date. Here is a similar function:&lt;br /&gt;
&lt;br /&gt;
create or replace function u2d(&lt;br /&gt;
v_tstamp IN number)&lt;br /&gt;
return date&lt;br /&gt;
as&lt;br /&gt;
v_date date;&lt;br /&gt;
&lt;br /&gt;
begin&lt;br /&gt;
v_date := to_date(&#39;01-JAN-1970&#39;, &#39;DD-MON-YYYY&#39;) + (v_tstamp+19800)/86400;&lt;br /&gt;
RETURN V_DATE;&lt;br /&gt;
END;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://billingandrevenuemanagement.blogspot.com/feeds/4955239506400660505/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2014/07/a-simple-oracle-db-function-to-convert.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/4955239506400660505'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/4955239506400660505'/><link rel='alternate' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2014/07/a-simple-oracle-db-function-to-convert.html' title='A simple Oracle DB function to convert timestamp to date'/><author><name>Sachid</name><uri>http://www.blogger.com/profile/11822259414693161812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='27' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi3UalPnC1ZfHS6sIfVj6G1Rcme1JLvWa4eyGbwuQAYcDMmr9x5yx2uedvWVYMeFvDi1V50jZtph7LvUiNUKKxlio2_HnGARW876om1AkeiMrgZy6XL-agr5sbw2dwmivM/s97/sketched_small.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8317612857393390481.post-4427700126483383913</id><published>2013-07-10T18:09:00.001-07:00</published><updated>2014-11-19T06:28:26.282-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="BRM hash map"/><category scheme="http://www.blogger.com/atom/ns#" term="c hash map"/><category scheme="http://www.blogger.com/atom/ns#" term="hash map for BRM"/><category scheme="http://www.blogger.com/atom/ns#" term="linked list in BRM"/><title type='text'>Hash map implementation in C</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
I&#39;ve written a hash map in C which is based on linked list data structure. It may be useful in various scenarios. Here is the list of the APIs implemented in this:&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
// Hash map structure&lt;/div&gt;
&lt;div&gt;
struct hash_map_t{&lt;/div&gt;
&lt;div&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;struct&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;hash_map_t* nxt;&lt;/div&gt;
&lt;div&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;char*&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;account_poid; //Key&lt;/div&gt;
&lt;div&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;int&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;status; &amp;nbsp;// Value&lt;/div&gt;
&lt;div&gt;
}&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;b&gt;&lt;u&gt;=&amp;gt; HASH MAP OPERATIONS&lt;/u&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div&gt;
&lt;b&gt;&lt;u&gt;&lt;br /&gt;&lt;/u&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div&gt;
/*&lt;/div&gt;
&lt;div&gt;
&amp;nbsp;*&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;Function to insert/update a key-value pair&lt;/div&gt;
&lt;div&gt;
&amp;nbsp;* &lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;If the key doesn&#39;t exist, this function will create a new node and add the&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp;* &lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;key-value pair, if the key already exit, its value will be updated&lt;/div&gt;
&lt;div&gt;
&amp;nbsp;*/&lt;/div&gt;
&lt;div&gt;
void hash_map_set(&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;struct hash_map_t*&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;hm,&lt;/div&gt;
&lt;div&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;char*&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;acc_poid,&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;int&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;status);&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
/*&lt;/div&gt;
&lt;div&gt;
&amp;nbsp;* Function to free the memory allocated by hash map&lt;/div&gt;
&lt;div&gt;
&amp;nbsp;*/&lt;/div&gt;
&lt;div&gt;
void &amp;nbsp; &amp;nbsp;free_hash_map(struct &amp;nbsp;hash_map_t* hm);&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div&gt;
/*&lt;/div&gt;
&lt;div&gt;
&amp;nbsp;* Function to retrieve the map node with the kep acc_poid&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;     &lt;/span&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp;*/&lt;/div&gt;
&lt;div&gt;
struct hash_map_t* getNodeWithKey(&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; struct hash_map_t*&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;hm,&lt;/div&gt;
&lt;div&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;char*&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;acc_poid);&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
/*&lt;/div&gt;
&lt;div&gt;
&amp;nbsp;* Function to retrieve the map node using value status&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;       &lt;/span&gt; &amp;nbsp;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp;*/&lt;/div&gt;
&lt;div&gt;
struct hash_map_t* getNodeWithValue(&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;struct hash_map_t* hm,&lt;/div&gt;
&lt;div&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;int &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; status);&lt;/div&gt;
&lt;div&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;       &lt;/span&gt;&amp;nbsp; &amp;nbsp;&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
The code is attached at the following location:&lt;/div&gt;
&lt;div&gt;
&lt;a href=&quot;https://docs.google.com/file/d/0B_TJwfRI4aqhcjJRMXBhQUNCQk0/edit?usp=sharing&quot;&gt;https://docs.google.com/file/d/0B_TJwfRI4aqhcjJRMXBhQUNCQk0/edit?usp=sharing&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;
If you&#39;ve Scripd account, download it here:&lt;br /&gt;
&lt;a href=&quot;https://www.scribd.com/doc/247124214/Hash-Map-Lib&quot;&gt;https://www.scribd.com/doc/247124214/Hash-Map-Lib&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://billingandrevenuemanagement.blogspot.com/feeds/4427700126483383913/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2013/07/hash-map-implementation-in-c.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/4427700126483383913'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/4427700126483383913'/><link rel='alternate' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2013/07/hash-map-implementation-in-c.html' title='Hash map implementation in C'/><author><name>Sachid</name><uri>http://www.blogger.com/profile/11822259414693161812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='27' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi3UalPnC1ZfHS6sIfVj6G1Rcme1JLvWa4eyGbwuQAYcDMmr9x5yx2uedvWVYMeFvDi1V50jZtph7LvUiNUKKxlio2_HnGARW876om1AkeiMrgZy6XL-agr5sbw2dwmivM/s97/sketched_small.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8317612857393390481.post-1101069555254664326</id><published>2013-04-08T00:36:00.001-07:00</published><updated>2019-03-11T05:18:22.624-07:00</updated><title type='text'>BRM Errors</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;br /&gt;
&lt;b&gt;&lt;u&gt;Title:&amp;nbsp;pcm_dyn_attach_mmap() issue&lt;/u&gt;&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Issue: Following error observed while starting cm or in the cm.pinlog while executing any application connected to CM&lt;br /&gt;
mmap failed for pcm_dyn_attach_mmap(): Invalid argument&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;
Cause: This error usually comes when you use reference to some mapping parameter/file in the CM or application&#39;s pin.conf and that is invalid or empty. E.g. if the entry file for&amp;nbsp;ops_fields_extension_file is empty or invalid, we can get the error:&lt;br /&gt;
&lt;span style=&quot;color: red;&quot;&gt;mmap failed for pcm_dyn_attach_mmap(): Invalid argument&lt;/span&gt;&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;b&gt;&lt;u&gt;Title: Resource Credit Limit Issue&lt;/u&gt;&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Issue: &lt;br /&gt;
2:SACJOSHI-US:CustomerCenter:0:AWT-EventQueue-0:108:1476427204:0:root.0.0.0.1:::&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Credit limit exceeded&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;location=PIN_ERRLOC_FM:5 class=PIN_ERRCLASS_SYSTEM_DETERMINATE:1 errno=PIN_ERR_CREDIT_LIMIT_EXCEEDED:81&amp;gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;field num=0:0,0 recid=0 reserved=0 reserved2=0 time(sec:usec)=0:0&amp;gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;facility=0 msg_id=0 version=0&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cause: This error usually comes when you use NCR (non-currency resource) to have a +ve balance impact. By default the credit limit for NCRs is 0 in BRM. In case, you need to have a positive balance impact on NCR, you need to update the credit limit.&lt;br /&gt;
&lt;br /&gt;
0 PIN_FLD_POID&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; POID [0] 0.0.0.1 /config/credit_profile 201 0&lt;br /&gt;
0 PIN_FLD_PROFILES&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; ARRAY [2] allocated 2, used 2&lt;br /&gt;
1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PIN_FLD_CREDIT_FLOOR&amp;nbsp;&amp;nbsp; DECIMAL [0] NULL&lt;br /&gt;
1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PIN_FLD_CREDIT_LIMIT&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DECIMAL [0] NULL&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;u&gt;Title: AMT procedure errors&lt;/u&gt;&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Issue:&lt;br /&gt;
ORA-29280: invalid directory path&lt;br /&gt;
ORA-06512: at &quot;WK33_PIN03.AMT_MV&quot;, line 347&lt;br /&gt;
ORA-06512: at line 1&lt;br /&gt;
&lt;br /&gt;
Cause: The directory mentioned in Infranet.properties of pin_amt application is not created or if it is created you are using the name in lowercase, change it to upper case.&lt;br /&gt;
&lt;br /&gt;
Issue:&lt;br /&gt;
ORA-29289: directory access denied&lt;br /&gt;
ORA-06512: at &quot;WK33_PIN03.AMT_MV&quot;, line 347&lt;br /&gt;
ORA-06512: at line 1&lt;br /&gt;
&lt;br /&gt;
Cause: Good news is that the directory exists but the db user with which pin_amt is being executed is not having read/write permission.&lt;br /&gt;
&lt;br /&gt;
Issue:&lt;br /&gt;
ORA-02055: distributed update operation failed; rollback required&lt;br /&gt;
ORA-54013: INSERT operation disallowed on virtual columns&lt;br /&gt;
ORA-06512: at &quot;WK33_PIN03.AMT_MV&quot;, line 722&lt;br /&gt;
ORA-06512: at line 1&lt;br /&gt;
&lt;br /&gt;
Cause: Some table in the AMT_METADATA is having virtual column, check what are the custom tables added and check which one has virtual columns.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;u&gt;Title: Cache entry not found&lt;/u&gt;&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
E Mon Apr &amp;nbsp;8 16:13:58 2013 &amp;nbsp;&amp;lt;&amp;lt;hostname&amp;gt;&amp;gt; &amp;nbsp;cm:18233 &amp;nbsp;fm_bill_utils_billing.c(49):1039 1:&amp;lt;&amp;lt;hostname&amp;gt;&amp;gt;:testnap:18231:-136099600:100001:1365405238:1&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Could not find cache entry: &quot;PIN_SEQUENCE_TYPE_PACKAGE_ID&quot;&lt;br /&gt;
E Mon Apr &amp;nbsp;8 16:13:58 2013 &amp;nbsp;&amp;lt;&amp;lt;hostname&amp;gt;&amp;gt; &amp;nbsp;cm:18233 &amp;nbsp;fm_subscription_purchase_deal.c:805 1:&amp;lt;&amp;lt;hostname&amp;gt;&amp;gt;:testnap:18231:-136099600:100001:1365405238:1&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; op_subscription_purchase_deal error&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;location=PIN_ERRLOC_FM:5 class=PIN_ERRCLASS_SYSTEM_DETERMINATE:1 errno=PIN_ERR_NOT_FOUND:3&amp;gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;field num=^Aopsflds:0,0 recid=0 reserved=3 reserved2=0 time(sec:usec)=0:0&amp;gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;facility=0 msg_id=0 version=0&amp;gt;&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;b&gt;&lt;u&gt;Resolution&lt;/u&gt;&lt;/b&gt;: As the cache entry is missing, it means CM could not load few variable, restart cm to fix this.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;u&gt;Title: pricing_admin.pl failed in initializing&lt;/u&gt;&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-bash-3.2$ ./pricing_admin.pl -init&lt;br /&gt;
EBUF: errno=&amp;lt;PIN_ERR_BAD_CRYPT:15&amp;gt; location=&amp;lt;PIN_ERRLOC_DM:4&amp;gt; class=&amp;lt;UNKNOWN:0&amp;gt; field num=&amp;lt;0:0,0&amp;gt; recid=&amp;lt;0&amp;gt; reserved=&amp;lt;0&amp;gt;&lt;br /&gt;
0 PIN_FLD_POID &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; POID [0] 0.0.0.1 /config/pricing_admin -1 0&lt;br /&gt;
0 PIN_FLD_ACCOUNT_OBJ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;POID [0] 0.0.0.1 /account 1 0&lt;br /&gt;
0 PIN_FLD_HOSTNAME &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;STR [0] &quot;-&quot;&lt;br /&gt;
0 PIN_FLD_NAME &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;STR [0] &quot;config_pricing_admin&quot;&lt;br /&gt;
0 PIN_FLD_PROGRAM_NAME &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;STR [0] &quot;-&quot;&lt;br /&gt;
0 PIN_FLD_CONFIG_INFO &amp;nbsp; &amp;nbsp; &amp;nbsp; SUBSTRUCT [0] allocated 6, used 6&lt;br /&gt;
1 &amp;nbsp; &amp;nbsp; PIN_FLD_HOSTNAME &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;STR [0] &quot;sacjoshi-linux&quot;&lt;br /&gt;
1 &amp;nbsp; &amp;nbsp; PIN_FLD_LOGIN &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; STR [0] &quot;INTEGRATE&quot;&lt;br /&gt;
1 &amp;nbsp; &amp;nbsp; PIN_FLD_NAME &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;STR [0] &quot;brm11gdb&quot;&lt;br /&gt;
1 &amp;nbsp; &amp;nbsp; PIN_FLD_PASSWD &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;STR [0] &quot;integrate&quot;&lt;br /&gt;
1 &amp;nbsp; &amp;nbsp; PIN_FLD_PORT &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;INT [0] 1521&lt;br /&gt;
1 &amp;nbsp; &amp;nbsp; PIN_FLD_SERVER_TYPE &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; STR [0] &quot;oracle&quot;&lt;br /&gt;
call_opcode: PCM_OP_CREATE_OBJ failed. at ./pricing_admin.pl line 504.&lt;br /&gt;
Initializing config object for pricing admin failed.&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;b&gt;&lt;u&gt;Resolution:&lt;/u&gt;&lt;/b&gt;&amp;nbsp;- crypt md5 entry is not enabled, enable this entry in dm_oracle&#39;s pin.conf&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Another issue that can sometimes occur due to installation issues is:&lt;br /&gt;
&lt;br /&gt;
-bash-3.2$ ./pricing_admin.pl -set &amp;lt;admins.txt&lt;br /&gt;
EBUF: errno=&amp;lt;PIN_ERR_BAD_ARG:4&amp;gt; location=&amp;lt;PIN_ERRLOC_DM:4&amp;gt; class=&amp;lt;UNKNOWN:0&amp;gt; field num=&amp;lt;PIN_FLD_POID:7,16&amp;gt; recid=&amp;lt;0&amp;gt; reserved=&amp;lt;0&amp;gt;&lt;br /&gt;
0 PIN_FLD_RESULTS &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;ARRAY [*] NULL&lt;br /&gt;
0 PIN_FLD_POID &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;POID [0] 0.0.0.1 /search -1 0&lt;br /&gt;
0 PIN_FLD_ARGS &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ARRAY [1] allocated 1, used 1&lt;br /&gt;
1 &amp;nbsp; &amp;nbsp; PIN_FLD_POID &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;POID [0] 0.0.0.1 /config/pricing_admin -1 0&lt;br /&gt;
0 PIN_FLD_TEMPLATE &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; STR [0] &quot;select X from /config/pricing_admin where F1 = V1 &quot;&lt;br /&gt;
0 PIN_FLD_FLAGS &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;INT [0] 0&lt;br /&gt;
call_opcode: PCM_OP_GLOBAL_SEARCH failed. at ./pricing_admin.pl line 504.&lt;br /&gt;
Search failed for /config/pricing_admin object.&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://billingandrevenuemanagement.blogspot.com/feeds/1101069555254664326/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2013/04/brm-errors.html#comment-form' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/1101069555254664326'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/1101069555254664326'/><link rel='alternate' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2013/04/brm-errors.html' title='BRM Errors'/><author><name>Sachid</name><uri>http://www.blogger.com/profile/11822259414693161812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='27' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi3UalPnC1ZfHS6sIfVj6G1Rcme1JLvWa4eyGbwuQAYcDMmr9x5yx2uedvWVYMeFvDi1V50jZtph7LvUiNUKKxlio2_HnGARW876om1AkeiMrgZy6XL-agr5sbw2dwmivM/s97/sketched_small.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8317612857393390481.post-7672620223543444789</id><published>2011-11-02T02:28:00.000-07:00</published><updated>2011-11-02T02:28:03.796-07:00</updated><title type='text'>Storable class to XML representation</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
I recently noticed this application that converts the storable class representation in database to XML format. Its syntax is:&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div&gt;
storableclasstoxml [-h] [-r &amp;lt;filename&amp;gt; [-o &amp;lt;objectname&amp;gt;]]&lt;/div&gt;
&lt;div&gt;
-h : display help information&lt;/div&gt;
&lt;div&gt;
-r &amp;lt;filename&amp;gt; : retrieves storable class for&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; 1. /service and its sub classes&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; 2. /event and its sub classes&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; 3. /account class&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; and write it to &amp;lt;filename&amp;gt;&lt;/div&gt;
&lt;div&gt;
-r &amp;lt;filename&amp;gt; -o &amp;lt;objectname&amp;gt; : retrieves storable class for&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;objectname&amp;gt; and write it to &amp;lt;filename&amp;gt;.&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;objectname&amp;gt; can be /service, /event, /account,&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; /service/xyz or /event/xyz where xyz is a sub class&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; of either /service or /event. &amp;nbsp;Multiple object types&lt;/div&gt;
&lt;div&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; can be passed with comma(&#39;,&#39;) separated.&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
I&#39;m not sure in which all scenarios this XML representation will be useful. If anyone get a chance to explore this or if someone has already explored, please share with me.&lt;/div&gt;
&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://billingandrevenuemanagement.blogspot.com/feeds/7672620223543444789/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2011/11/storable-class-to-xml-representation.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/7672620223543444789'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/7672620223543444789'/><link rel='alternate' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2011/11/storable-class-to-xml-representation.html' title='Storable class to XML representation'/><author><name>Sachid</name><uri>http://www.blogger.com/profile/11822259414693161812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='27' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi3UalPnC1ZfHS6sIfVj6G1Rcme1JLvWa4eyGbwuQAYcDMmr9x5yx2uedvWVYMeFvDi1V50jZtph7LvUiNUKKxlio2_HnGARW876om1AkeiMrgZy6XL-agr5sbw2dwmivM/s97/sketched_small.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8317612857393390481.post-1278128198973741970</id><published>2011-10-12T03:55:00.000-07:00</published><updated>2011-10-12T04:08:26.357-07:00</updated><title type='text'>Some useful BRM flists</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
Here are some useful flists which will be useful for the POCs during development of Oracle BRM based applications.&lt;br /&gt;
1). Search flist to find the service and account objects (or POIDS) using the login field value when login is available in the the service&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
0 PIN_FLD_POID &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;POID [0] 0.0.0.1 /search -1 0&lt;br /&gt;
0 PIN_FLD_FLAGS &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;INT [0] 256&lt;br /&gt;
0 PIN_FLD_INDEX_NAME &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; STR [0] &quot;service_login_i&quot;&lt;br /&gt;
0 PIN_FLD_PARAMETERS &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; STR [0] &quot;telco/voice&quot;&lt;br /&gt;
0 PIN_FLD_TEMPLATE &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; STR [0] &quot;select X from /service/$1 where F1 = V1 and &amp;nbsp;F2 = V2 &quot;&lt;br /&gt;
0 PIN_FLD_RESULTS &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;ARRAY [0] allocated 7, used 7&lt;br /&gt;
1 &amp;nbsp; &amp;nbsp; PIN_FLD_POID &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;POID [0] NULL&lt;br /&gt;
1 &amp;nbsp; &amp;nbsp; PIN_FLD_ACCOUNT_OBJ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; POID [0] NULL&lt;br /&gt;
1 &amp;nbsp; &amp;nbsp; PIN_FLD_LOGIN &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;STR [0] NULL&lt;br /&gt;
1 &amp;nbsp; &amp;nbsp; PIN_FLD_PASSWD &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; STR [0] NULL&lt;br /&gt;
1 &amp;nbsp; &amp;nbsp; PIN_FLD_PASSWD_EXPIRATION_T TSTAMP [0] (0) 01/01/1970 05:30:00:000 AM&lt;br /&gt;
1 &amp;nbsp; &amp;nbsp; PIN_FLD_PASSWD_STATUS &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ENUM [0] 0&lt;br /&gt;
1 &amp;nbsp; &amp;nbsp; PIN_FLD_STATUS &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;ENUM [0] 0&lt;br /&gt;
0 PIN_FLD_ARGS &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ARRAY [1] allocated 1, used 1&lt;br /&gt;
1 &amp;nbsp; &amp;nbsp; PIN_FLD_POID &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;POID [0] 0.0.0.1 /service/ip -1 0&lt;br /&gt;
0 PIN_FLD_ARGS &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ARRAY [2] allocated 1, used 1&lt;br /&gt;
1 &amp;nbsp; &amp;nbsp; PIN_FLD_LOGIN &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;STR [0] &quot;your-login&quot;&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
2). Search flist to find the service and account objects (or POIDS) using the alias field value when login is not &amp;nbsp;available in the the service&lt;/div&gt;
&lt;div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
0 PIN_FLD_POID &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;POID [0] 0.0.0.1 /search -1 0&lt;/div&gt;
&lt;div&gt;
0 PIN_FLD_FLAGS &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;INT [0] 256&lt;/div&gt;
&lt;div&gt;
0 PIN_FLD_INDEX_NAME &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; STR [0] &quot;service_alias_list_name_i&quot;&lt;/div&gt;
&lt;div&gt;
0 PIN_FLD_PARAMETERS &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; STR [0] &quot;telco/voice&quot;&lt;/div&gt;
&lt;div&gt;
0 PIN_FLD_TEMPLATE &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; STR [0] &quot;select X from /service/$1 where F1 = V1 and &amp;nbsp;F2 = V2 &quot;&lt;/div&gt;
&lt;div&gt;
0 PIN_FLD_RESULTS &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;ARRAY [0] allocated 7, used 7&lt;/div&gt;
&lt;div&gt;
1 &amp;nbsp; &amp;nbsp; PIN_FLD_POID &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;POID [0] NULL&lt;/div&gt;
&lt;div&gt;
1 &amp;nbsp; &amp;nbsp; PIN_FLD_ACCOUNT_OBJ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; POID [0] NULL&lt;/div&gt;
&lt;div&gt;
1 &amp;nbsp; &amp;nbsp; PIN_FLD_LOGIN &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;STR [0] NULL&lt;/div&gt;
&lt;div&gt;
1 &amp;nbsp; &amp;nbsp; PIN_FLD_PASSWD &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; STR [0] NULL&lt;/div&gt;
&lt;div&gt;
1 &amp;nbsp; &amp;nbsp; PIN_FLD_PASSWD_EXPIRATION_T TSTAMP [0] (0) 01/01/1970 05:30:00:000 AM&lt;/div&gt;
&lt;div&gt;
1 &amp;nbsp; &amp;nbsp; PIN_FLD_PASSWD_STATUS &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ENUM [0] 0&lt;/div&gt;
&lt;div&gt;
1 &amp;nbsp; &amp;nbsp; PIN_FLD_STATUS &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;ENUM [0] 0&lt;/div&gt;
&lt;div&gt;
0 PIN_FLD_ARGS &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ARRAY [1] allocated 1, used 1&lt;/div&gt;
&lt;div&gt;
1 &amp;nbsp; &amp;nbsp; PIN_FLD_POID &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;POID [0] 0.0.0.1 /service/telco/gsm/telephony -1 0&lt;/div&gt;
&lt;div&gt;
0 PIN_FLD_ARGS &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ARRAY [2] allocated 1, used 1&lt;/div&gt;
&lt;div&gt;
1 &amp;nbsp; &amp;nbsp; PIN_FLD_ALIAS_LIST &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ARRAY [*] allocated 1, used 1&lt;/div&gt;
&lt;div&gt;
2 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; PIN_FLD_NAME &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; STR [0] &quot;9830000011&quot;&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
3). Flist to create customer without plan/deals/products (PCM_OP_CUST_COMMIT_CUSTOMER)&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div&gt;
0&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;PIN_FLD_POID&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;POID [0] &amp;nbsp;0.0.0.1 /plan 9198 0&lt;/div&gt;
&lt;div&gt;
0&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;PIN_FLD_ACCTINFO&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;ARRAY [0] &amp;nbsp;&lt;/div&gt;
&lt;div&gt;
1&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;PIN_FLD_POID&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;POID [0] 0.0.0.1 /account -1 0&lt;/div&gt;
&lt;div&gt;
0&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;PIN_FLD_PAYINFO&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;ARRAY [0] &amp;nbsp;&lt;/div&gt;
&lt;div&gt;
1&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;PIN_FLD_POID&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;POID [0] 0.0.0.1 /payinfo/invoice -1 0&lt;/div&gt;
&lt;div&gt;
1&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;PIN_FLD_PAY_TYPE&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;ENUM [0] 10001&lt;/div&gt;
&lt;div&gt;
1&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;PIN_FLD_INHERITED_INFO &amp;nbsp; &amp;nbsp; &amp;nbsp;SUBSTRUCT [0]&lt;/div&gt;
&lt;div&gt;
2&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;PIN_FLD_INV_INFO&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;ARRAY [0]&lt;/div&gt;
&lt;div&gt;
3&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;    &lt;/span&gt;PIN_FLD_ADDRESS&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt; &amp;nbsp; STR [0] &quot;Castro Street&quot;&lt;/div&gt;
&lt;div&gt;
3&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;    &lt;/span&gt;PIN_FLD_CITY&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt; &amp;nbsp; STR [0] &quot;San Fransisco&quot;&lt;/div&gt;
&lt;div&gt;
3&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;    &lt;/span&gt;PIN_FLD_COUNTRY&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt; &amp;nbsp; STR [0] &quot;US&quot;&lt;/div&gt;
&lt;div&gt;
0&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;PIN_FLD_NAMEINFO&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;ARRAY [1] &amp;nbsp;&lt;/div&gt;
&lt;div&gt;
1&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;PIN_FLD_LAST_NAME&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;STR [0] &quot;LastN&quot;&lt;/div&gt;
&lt;div&gt;
1&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;PIN_FLD_FIRST_NAME&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;STR [0] &quot;FirstN&quot;&lt;/div&gt;
&lt;div&gt;
1&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;PIN_FLD_ADDRESS&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;STR [0] &quot;113, Castro Street&quot;&lt;/div&gt;
&lt;div&gt;
1&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;PIN_FLD_CITY&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;STR [0] &quot;San Fransisco&quot;&lt;/div&gt;
&lt;div&gt;
1&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;PIN_FLD_STATE&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;STR [0] &quot;CA&quot;&lt;/div&gt;
&lt;div&gt;
1&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;PIN_FLD_COUNTRY&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;STR [0] &quot;US&quot;&lt;/div&gt;
&lt;div&gt;
1&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;PIN_FLD_ZIP&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;STR [0] &quot;53038&quot;&lt;/div&gt;
&lt;div&gt;
1&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;PIN_FLD_COMPANY&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;STR [0] &quot;ABC&quot;&lt;/div&gt;
&lt;div&gt;
1&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;PIN_FLD_EMAIL_ADDR&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;STR [0] &quot;test@test.com&quot;&lt;/div&gt;
&lt;div&gt;
0&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;PIN_FLD_SERVICES&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;ARRAY [0] &amp;nbsp;&lt;/div&gt;
&lt;div&gt;
1&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;PIN_FLD_SERVICE_OBJ&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;POID [0] 0.0.0.1 /service/telco/gsm/telephony -1 0&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://billingandrevenuemanagement.blogspot.com/feeds/1278128198973741970/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2011/10/some-useful-flist.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/1278128198973741970'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/1278128198973741970'/><link rel='alternate' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2011/10/some-useful-flist.html' title='Some useful BRM flists'/><author><name>Sachid</name><uri>http://www.blogger.com/profile/11822259414693161812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='27' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi3UalPnC1ZfHS6sIfVj6G1Rcme1JLvWa4eyGbwuQAYcDMmr9x5yx2uedvWVYMeFvDi1V50jZtph7LvUiNUKKxlio2_HnGARW876om1AkeiMrgZy6XL-agr5sbw2dwmivM/s97/sketched_small.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8317612857393390481.post-6264248229764711518</id><published>2011-09-29T01:47:00.000-07:00</published><updated>2011-09-29T01:47:50.180-07:00</updated><title type='text'>Enabling pin_virtual_time first time after BRM 7.4 installation</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
During development many times we need pin_virtual_time utility to move the BRM time forward to test many scenarios like billing, invoicing, dunning et.c.&lt;br /&gt;
After installing the BRM 7.4 components in the server, generally the pin_virtual_time_file is not created and also the entry is commented in almost all the component&#39;s pin.conf file. &lt;br /&gt;
Here are some tips to enable the pin_virtual_time (may be useful to novice BRM developers/testers)&lt;br /&gt;
&lt;br /&gt;
1). Uncomment pin_virtual_time entry in all the components&#39; pin.conf file. You may run the following command :&lt;br /&gt;
find&amp;nbsp; $PIN_HOME/ -name &quot;pin.conf&quot; | xargs sed -i &#39;s/# - - pin_virtual_time/- - pin_virtual_time/g&#39;&lt;br /&gt;
2). Restart the BRM server &lt;br /&gt;
3). Goto the $PIN_HOME/sys/test directory and execute&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; $&amp;gt; pin_virtual_time&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; This will create the pin_virtual_time_file and from now on you can move the time.&lt;br /&gt;
&lt;br /&gt;
&lt;u&gt;&lt;b&gt;PIN_VIRTUAL_TIME USAGE&lt;/b&gt;&lt;/u&gt;&lt;br /&gt;
usage: pin_virtual_time [-h|-H|-?] [-f filename] [-m mode [value]]|[-i interval]&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; -h, -H, -? print this message.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; -m ... set pin_virtual_time to mode, nothing or -i query pin_virtual_time&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; mode is 0 (regular), 1 (fixed) or 2 (running)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; value as [mmdd]HHMM[[cc]yy][.SS]&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; interval is time between queries in seconds&lt;br /&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://billingandrevenuemanagement.blogspot.com/feeds/6264248229764711518/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2011/09/enabling-pinvirtualtime-first-time.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/6264248229764711518'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/6264248229764711518'/><link rel='alternate' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2011/09/enabling-pinvirtualtime-first-time.html' title='Enabling pin_virtual_time first time after BRM 7.4 installation'/><author><name>Sachid</name><uri>http://www.blogger.com/profile/11822259414693161812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='27' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi3UalPnC1ZfHS6sIfVj6G1Rcme1JLvWa4eyGbwuQAYcDMmr9x5yx2uedvWVYMeFvDi1V50jZtph7LvUiNUKKxlio2_HnGARW876om1AkeiMrgZy6XL-agr5sbw2dwmivM/s97/sketched_small.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8317612857393390481.post-6020782117512474214</id><published>2011-09-05T04:50:00.000-07:00</published><updated>2011-09-05T04:50:30.032-07:00</updated><title type='text'>Search flist to find billinfo and account poid using account_no</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
Following is a complex search flist for finding BILLINFO poid and ACCOUNT poid using the ACCOUNT_NO field. As such this is used while running the bill utility during test runs but consider it as a sample for searching and extracting field values from two different storable class in single search. Generally, using a simple flist this is not achievable.&lt;br /&gt;
&lt;br /&gt;
0 PIN_FLD_POID&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; POID [0] 0.0.0.1 /search -1 0&lt;br /&gt;0 PIN_FLD_FLAGS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; INT [0] 768&lt;br /&gt;0 PIN_FLD_TEMPLATE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; STR [0] &quot; select X from /account 1, /billinfo 2 where 1.F1 = 2.F2 and 1.F3 = V3 &quot;&lt;br /&gt;0 PIN_FLD_RESULTS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ARRAY [*] allocated 2, used 2&lt;br /&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PIN_FLD_POID&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; POID [0] NULL&lt;br /&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PIN_FLD_LINKED_OBJ&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ARRAY [2] allocated 3, used 3&lt;br /&gt;2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PIN_FLD_ACCOUNT_OBJ&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; POID [0] NULL&lt;br /&gt;2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PIN_FLD_LINK_DIRECTION&amp;nbsp;&amp;nbsp;&amp;nbsp; ENUM [0] 1&lt;br /&gt;2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PIN_FLD_EXTRA_RESULTS&amp;nbsp;&amp;nbsp;&amp;nbsp; ARRAY [*] allocated 1, used 1&lt;br /&gt;3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PIN_FLD_POID&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; POID [0] NULL&lt;br /&gt;0 PIN_FLD_ARGS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ARRAY [1] allocated 1, used 1&lt;br /&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PIN_FLD_POID&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; POID [0] NULL&lt;br /&gt;0 PIN_FLD_ARGS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ARRAY [2] allocated 1, used 1&lt;br /&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PIN_FLD_ACCOUNT_OBJ&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; POID [0] NULL&lt;br /&gt;0 PIN_FLD_ARGS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ARRAY [3] allocated 1, used 1&lt;br /&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PIN_FLD_ACCOUNT_NO&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; STR [0] &quot;0.0.0.1-90356&quot;&lt;br /&gt;
&lt;br /&gt;
I will provide the explaination shortly.&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://billingandrevenuemanagement.blogspot.com/feeds/6020782117512474214/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2011/09/search-flist-to-find-billinfo-and.html#comment-form' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/6020782117512474214'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/6020782117512474214'/><link rel='alternate' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2011/09/search-flist-to-find-billinfo-and.html' title='Search flist to find billinfo and account poid using account_no'/><author><name>Sachid</name><uri>http://www.blogger.com/profile/11822259414693161812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='27' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi3UalPnC1ZfHS6sIfVj6G1Rcme1JLvWa4eyGbwuQAYcDMmr9x5yx2uedvWVYMeFvDi1V50jZtph7LvUiNUKKxlio2_HnGARW876om1AkeiMrgZy6XL-agr5sbw2dwmivM/s97/sketched_small.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8317612857393390481.post-4197421869040699106</id><published>2011-05-31T11:44:00.000-07:00</published><updated>2011-05-31T11:44:43.640-07:00</updated><title type='text'>Utility to move pin_virtual_time(mode 1) and execute pin_bill_day</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;It sounds like huh, why should I need a script for changing virtual time or executing pin_bill_day but it has utility. Specially for BRM testing, there are scenarios where the movement of time followed by execution of pin_bill_day and pin_ledger_report are required, e.g. &lt;br /&gt;
&amp;nbsp;&amp;nbsp; - Testing of invalid (soft declined/hard declined) credit cards&lt;br /&gt;
&amp;nbsp;&amp;nbsp; - Checking the monthly bill for a certain period of time&lt;br /&gt;
&amp;nbsp;&amp;nbsp; - Accounting validation by looking at General Ledger(GL) reports of certain months&lt;br /&gt;
&amp;nbsp;&amp;nbsp; - Checking the expiration of the non-currency date based resources valid for a year&lt;br /&gt;
&amp;nbsp;&amp;nbsp; - and so on&lt;br /&gt;
&lt;br /&gt;
So this script has the following modes of operation when you will execute it&amp;nbsp;:&lt;br /&gt;
&lt;br /&gt;
&lt;em&gt;&lt;strong&gt;$&amp;gt; perl tbill.pl&lt;/strong&gt;&lt;/em&gt;&lt;br /&gt;
&lt;em&gt;&lt;strong&gt;Current time is : mode 1&amp;nbsp; 1367341200&amp;nbsp; Tue Apr 30 10:00:00 2013&lt;br /&gt;
mode 1&amp;nbsp; 1367341200&amp;nbsp; Tue Apr 30 10:00:00 2013&lt;/strong&gt;&lt;/em&gt;&lt;br /&gt;
&lt;em&gt;&lt;strong&gt;Select from the following :&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1. Increment time to next day&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2. Increment time to a date&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3. Move time to a date by incrementing one day at a time&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4. Move time to a date by incrementing one month at a time :&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 5. Move time to a date by incrementing 15 days at a time&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Your Selection(1|2|3|4|5) :&lt;/strong&gt;&lt;/em&gt;&lt;br /&gt;
&lt;em&gt;&lt;strong&gt;&lt;br /&gt;
&amp;nbsp;&lt;/strong&gt;&lt;/em&gt;Option1 : Increment time to next day and execute pin_bill_day and pin_ledger_report&lt;br /&gt;
Option2 : Increment time to a particular date in future like some date after few months in the same year or next year&lt;br /&gt;
Option3 : Increment time to a date in future by executing pin_bill_day and pin_ledger_report on each day of that period&lt;br /&gt;
Option4 : Increment time to few months by moving one month at a time and executing pin_bill_day and pin_ledger_report each month&lt;br /&gt;
Option5 : Increment time to a date by moving 15 day at once and executing pin_bill_day and pin_ledger_report&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Here is the link of the script :&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://billingandrevenuemanagement.blogspot.com/feeds/4197421869040699106/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2011/05/utility-to-move-pinvirtualtimemode-1.html#comment-form' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/4197421869040699106'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/4197421869040699106'/><link rel='alternate' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2011/05/utility-to-move-pinvirtualtimemode-1.html' title='Utility to move pin_virtual_time(mode 1) and execute pin_bill_day'/><author><name>Sachid</name><uri>http://www.blogger.com/profile/11822259414693161812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='27' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi3UalPnC1ZfHS6sIfVj6G1Rcme1JLvWa4eyGbwuQAYcDMmr9x5yx2uedvWVYMeFvDi1V50jZtph7LvUiNUKKxlio2_HnGARW876om1AkeiMrgZy6XL-agr5sbw2dwmivM/s97/sketched_small.jpg'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8317612857393390481.post-5522132506714035597</id><published>2011-05-24T11:21:00.000-07:00</published><updated>2011-05-24T11:21:02.468-07:00</updated><title type='text'>Guidelines to write a new FM in BRM</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;strong&gt;&lt;u&gt;&lt;span style=&quot;font-size: large;&quot;&gt;Creating a new FM&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;Steps to create a new FM in a CM :&lt;/span&gt;&lt;br /&gt;
&lt;ol&gt;&lt;li&gt;Define new opcodes&lt;/li&gt;
&lt;li&gt;Write a function to implement the new opcode&lt;/li&gt;
&lt;li&gt;Write a program to map opcodes to functions&lt;/li&gt;
&lt;li&gt;Create a shared library on UNIX i.e. &quot;.so&quot; file&lt;/li&gt;
&lt;li&gt;Configure the new FM as part of the CM&lt;/li&gt;
&lt;/ol&gt;&lt;br /&gt;
&lt;strong&gt;&lt;u&gt;&lt;span style=&quot;color: #351c75;&quot;&gt;1. Defining new opcodes &lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;color: black;&quot;&gt;You must define your custom opcodes, with their numbers, in a header file and execute parse_custom_ops_fields.pl&amp;nbsp;on the file. parse_custom_ops_fields.pl creates an extension to the pcm_tbls.c file. Client applications use pcm_tbls.c to map a field or opcode to its number.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Portal opcodes and their numbers are defined in the ops/*.h files in the &amp;lt;BRM_HOME&amp;gt;/include directory.&lt;br /&gt;
To pass new opcodes from a client application to a new FM, use the PCM_OP macro.&lt;br /&gt;
&lt;br /&gt;
To define a new opcode:&lt;br /&gt;
&amp;nbsp; a). Create a header file and define your new opcodes by using this format:&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;em&gt;&lt;strong&gt;#define&amp;nbsp;&amp;nbsp;&amp;nbsp; opcode_name_1&amp;nbsp;&amp;nbsp;&amp;nbsp; opcode_number_1&lt;/strong&gt;&lt;/em&gt;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; For example, you might create a header file named &lt;strong&gt;&lt;span style=&quot;color: #20124d;&quot;&gt;my_opcodes.h&lt;/span&gt;&lt;/strong&gt; with these definitions :&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;&lt;em&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; #define MY_OP_SET_AGE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 100001&lt;/em&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;&lt;em&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; #define MY_OP_SET_LANGUAGE&amp;nbsp; 100002&lt;/em&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;strong&gt;&lt;u&gt;Important:&lt;/u&gt;&lt;/strong&gt; Numbers upto 100000 are reserved for use by BRM.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp; b). Run the &lt;strong&gt;&lt;em&gt;parse_custom_ops_fields.pl&lt;/em&gt;&lt;/strong&gt; perl script by using this syntax:&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;strong&gt;&lt;em&gt;parse_custom_ops_fields.pl -L language -I input -O output -P java_package&lt;/em&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;c). For the applications written in PCM C or PCM COM, create an entry using the following format in the pin.conf each application :&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;strong&gt;&lt;em&gt;- - ops_fields_extension_file ops_flds_ext&lt;/em&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Where ops_flds_ext is the file name and location of the memory-mapped extension file that was created by the parse_custom_ops_fields.pl script.&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Make sure that you included your header file both in the application that is calling the opcode and in the custom FM.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;&lt;u&gt;&lt;span style=&quot;color: #351c75;&quot;&gt;2.&amp;nbsp;Writing a function to implement a new opcode&amp;nbsp;&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;color: black;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; To implement a new opcode in BRM, you have to write a new function that calls the base system opcodes to access the DM. The new function then becomes part of the new FM shared library in UNIX.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;The new function you are implementing should conform to the PCM_OP calling convention.&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Use the PCM_OP_* reference pages as checklists and templates to determine what your custom function must implement. Pay particular attention to the input and output flists. &lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;&lt;u&gt;Important&lt;/u&gt;&lt;/strong&gt; If you are adding a new function in the &lt;strong&gt;&lt;em&gt;fm_utils&lt;/em&gt;&lt;/strong&gt; module that can be called outside the module, add a prototype of that function in the fm_utils.h&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;&lt;u&gt;&lt;span style=&quot;color: #351c75;&quot;&gt;3.&amp;nbsp;Creating an opcode-to-function mapping file&amp;nbsp;&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;color: black;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; You create a configuration program fm_*_config.c to map an opcode name to the function that implements it. This configuration file is read when&amp;nbsp;a dynamic library is&amp;nbsp;created, and the mapping information is stored in it.&amp;nbsp; When a parent CM is inititalized, it configures the opcode-function pairs into itself, and each child CM inherits the same configuration as its parent CM.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp; The configuration program contains an array of &lt;strong&gt;&lt;em&gt;&lt;span style=&quot;color: purple;&quot;&gt;struct cm_fm_config&lt;/span&gt;&lt;/em&gt;&lt;/strong&gt; for each opcode and its corresponding function and the &lt;span style=&quot;color: purple;&quot;&gt;&lt;strong&gt;&lt;em&gt;config&lt;/em&gt;&lt;/strong&gt;&lt;/span&gt; function at the end. &lt;br /&gt;
&amp;nbsp;&amp;nbsp; For a definition of this struct (&lt;strong&gt;&lt;em&gt;&lt;span style=&quot;color: purple;&quot;&gt;cm_fm_config&lt;/span&gt;&lt;/em&gt;&lt;/strong&gt;), see the &lt;strong&gt;cm_fm.h&lt;/strong&gt; file in the &lt;strong&gt;BRM_SDK_HOME/include&lt;/strong&gt; directory.&lt;br /&gt;
&amp;nbsp;&amp;nbsp; The following example shows an opcode-to-function configuration file.&lt;br /&gt;
&lt;br /&gt;
Important Include you &quot;&lt;strong&gt;.h&quot;&lt;/strong&gt; file with your new custom opcodes&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;&lt;em&gt;#ifndef lint&lt;br /&gt;
static&amp;nbsp; char&amp;nbsp;&amp;nbsp;&amp;nbsp; Sccs_id[] = &quot;@(#) fm_custom_config.c 1.0 24&amp;nbsp;May 2011 %&quot;;&lt;br /&gt;
#endif&lt;/em&gt;&lt;/strong&gt;&lt;span lang=&quot;EN&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;strong&gt;&lt;em&gt;#include &amp;lt;stdio.h&amp;gt; /* for FILE * in pcm.h */&lt;/em&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;&lt;em&gt;#include &quot;ops/base.h&quot;&lt;/em&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;&lt;em&gt;#include &quot;pcm.h&quot;&lt;/em&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;&lt;em&gt;#include &quot;cm_fm.h&quot;&lt;/em&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;&lt;em&gt;#include &quot;ops/my_header.h&quot;&lt;/em&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;&lt;em&gt;/*******************************************************************&lt;/em&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;&lt;em&gt;* Opcodes handled by this FM.&lt;/em&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;&lt;em&gt;*******************************************************************/&lt;/em&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;&lt;em&gt;struct cm_fm_config my_config[] = {&lt;/em&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;&lt;em&gt;/* opcode as a u_int, function name (as a string) */&lt;/em&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;&lt;em&gt;{ MY_FIRST_OPCODE , &quot;op_my_opcode&quot; },&lt;/em&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;&lt;em&gt;{ 0, (char *)0 }&lt;/em&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;&lt;em&gt;};&lt;/em&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;&lt;em&gt;void * my_config_func()&lt;/em&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;&lt;em&gt;{&lt;/em&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;&lt;em&gt;return ((void *) (my_config));&lt;/em&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;&lt;em&gt;}&lt;/em&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When the CM gets a MY_FIRST_OPCODE opcode through the PCM_OP call from a client application, the CM looks up at this table and calls the op_cust_create_acct() function.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;&lt;u&gt;&lt;span style=&quot;color: #351c75;&quot;&gt;4.&amp;nbsp;Adding a new FM module to the CM configuration file&amp;nbsp;&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;color: black;&quot;&gt;The configuration file contain the names of the shared libraries that implement the base and custom opcodes. It also contains the names of the corresponding configuration files that contain the opcode-to-function mappings.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Use the entries for the system FMs in the default CM configuration file pin.conf in the BRM_HOME/sys/cm as an example to add your custom FM entries. For example, the typical entries for custom FMs look like:&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;&lt;em&gt;-&amp;nbsp;cm fm_module BRM_HOME/lib/my_fm.so my_config - pin&lt;/em&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
In this example,&amp;nbsp;I&#39;m assuming that the new dynamic library that implements the new custom FM my_fm.so is copied to BRM_HOME/lib directory. &quot;my_config&quot; is the name of the configuration implementation that contains the name-to-function mapping of the new custom OpCode.&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;&lt;u&gt;&lt;span style=&quot;color: #351c75;&quot;&gt;5.&amp;nbsp;Compiling and linking a custom FM&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;color: black;&quot;&gt;Use the libraries in the Portal_SDK_home/lib for linking.&lt;/span&gt;&lt;br /&gt;
Each custom FM must be created as a shared library on UNIX &lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://billingandrevenuemanagement.blogspot.com/feeds/5522132506714035597/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2011/05/guidelines-to-write-new-fm-in-brm.html#comment-form' title='29 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/5522132506714035597'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/5522132506714035597'/><link rel='alternate' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2011/05/guidelines-to-write-new-fm-in-brm.html' title='Guidelines to write a new FM in BRM'/><author><name>Sachid</name><uri>http://www.blogger.com/profile/11822259414693161812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='27' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi3UalPnC1ZfHS6sIfVj6G1Rcme1JLvWa4eyGbwuQAYcDMmr9x5yx2uedvWVYMeFvDi1V50jZtph7LvUiNUKKxlio2_HnGARW876om1AkeiMrgZy6XL-agr5sbw2dwmivM/s97/sketched_small.jpg'/></author><thr:total>29</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8317612857393390481.post-8303658173831770602</id><published>2011-05-05T16:03:00.000-07:00</published><updated>2012-03-20T03:00:24.604-07:00</updated><title type='text'>Important classes in Oracle BRM</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
In BRM, account/customer related data such as names, addresses, profiles, current account balances, group charge sharing, and account hierarchy are stored. Plans/deals/products can be purchased by the customer which gets associated with their account. The customers can purchase one or more services like GSM/GPRS et.c. (in case the subscriber is a telecom subscriber).&amp;nbsp; Some of the key or most important BRM classes are:&lt;br /&gt;
&lt;br /&gt;
&lt;u&gt;&lt;strong&gt;/ACCOUNT :&lt;/strong&gt;&lt;/u&gt;&amp;nbsp; This is one of the most important and key storable class of BRM that stores information about the customer. The customer information includes their contact info,status, locale and tax related information. Account class is mapped to &lt;strong&gt;&lt;u&gt;account_t&lt;/u&gt;&amp;nbsp;&lt;/strong&gt;table and is uniquely identified by POID. Each account has a default balance group and is associated with the instances of billinfo, balance group,payment method, purchased products, purchased discounts and services.&lt;br /&gt;
&lt;br /&gt;
&lt;u&gt;&lt;strong&gt;/BALANCE_GROUP :&lt;/strong&gt;&lt;/u&gt;&amp;nbsp; Stores the balance information for each currency and non-currency resources in an account . A balance group includes one or more sub-balances for each resource. The sub-balance contains the current amount, resource type, validity dates for the resource, rollover data, and sub-balance contributors. This storable class is mapped with the&amp;nbsp;
&lt;u&gt;&lt;strong&gt;bal_grp_t&lt;/strong&gt;&lt;/u&gt;&amp;nbsp;table in BRM database.&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;&lt;u&gt;/BILL :&lt;/u&gt; &lt;/strong&gt;This storable class contains the information for the bills generated for each customer based on the products&amp;nbsp;they purchase or the usage they do. It includes information&amp;nbsp;such as the amount due, amount adjusted, currency and bill number. A /bill object is created for each account that have a due at the beginning of a billing cycle.&amp;nbsp;It contains information for the invoice and the billinfo object with&amp;nbsp;which it is associated.&amp;nbsp;It maps with the&amp;nbsp;
&lt;strong&gt;&lt;u&gt;bill_t&lt;/u&gt;&lt;/strong&gt;&amp;nbsp;&amp;nbsp;table in BRM database.&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;&lt;u&gt;/BILLINFO:&lt;/u&gt; &lt;/strong&gt;Stores all billing, payment method, accounting cycle, and hierarchy information necessary to bill an account. A default /billinfo object is created for every account. If the billinfo is subordinate, the /billinfo object points to the parent account and the parent account’s /billinfo object. It maps to&amp;nbsp;&lt;b style=&quot;text-decoration: underline;&quot;&gt;billinfo_t&lt;/b&gt; table in BRM database.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;&lt;u&gt;/INVOICE:&lt;/u&gt;&amp;nbsp;&lt;/strong&gt;Stores a customer invoice and information about the invoice, such as the bill it is associated with. Each /bill object can have a corresponding /invoice object. It maps to&amp;nbsp;&lt;b style=&quot;text-decoration: underline;&quot;&gt;invoice_t&lt;/b&gt; table in BRM database.&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;&lt;u&gt;/ITEM:&lt;/u&gt;&amp;nbsp;&lt;/strong&gt;Created to bundle events, this table summarizes billable item activity by type. It maps to&amp;nbsp;&lt;strong&gt;&lt;u&gt;item_t&amp;nbsp;&lt;/u&gt;&lt;/strong&gt;table in BRM database. Rows in this table are added for each row in the BILL_T table.&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;&lt;u&gt;/PAYINFO:&lt;/u&gt;&amp;nbsp;&lt;/strong&gt;Stores generic payment method information for an account. It maps to&amp;nbsp;&lt;strong&gt;&lt;u&gt;payinfo_t&amp;nbsp;&lt;/u&gt;&lt;/strong&gt;&amp;nbsp;table in BRM database.&lt;br /&gt;
&lt;br class=&quot;Apple-interchange-newline&quot; /&gt;&lt;br /&gt;
&lt;strong&gt;&lt;u&gt;/DEAL:&lt;/u&gt; &lt;/strong&gt;Stores information about a deal.When you use Pricing Center and connect to the database, all /deal objects in the database are shown in Pricing Center. It maps to&amp;nbsp;&lt;strong&gt;&lt;u&gt;DEAL_T&lt;/u&gt;&amp;nbsp;&lt;/strong&gt;table in BRM database.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;&lt;u&gt;/PRODCUT:&lt;/u&gt;&amp;nbsp;&lt;/strong&gt;Stores the information for a single product. Maps to&amp;nbsp;&lt;strong&gt;&lt;u&gt;product_t&lt;/u&gt;&amp;nbsp;&lt;/strong&gt;table.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;&lt;u&gt;/DEVICE:&lt;/u&gt; &lt;/strong&gt;Stores information about devices. There is a separate /device object for every device managed by BRM. Generic data applicable to all devices is stored in the parent /device object. Subclasses such as /device/num store information specific to a particular device type. It maps to&amp;nbsp;&lt;strong&gt;&lt;u&gt;device_t&lt;/u&gt;&amp;nbsp;&lt;/strong&gt;table in BRM database.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;&lt;u&gt;/PROFILE:&lt;/u&gt;&amp;nbsp;&lt;/strong&gt;Abstract class to support custom account information. To use a /profile object, always create a subclass. You can link an account to any number of /profile objects. Maps to&amp;nbsp;&lt;strong&gt;&lt;u&gt;profile_t&lt;/u&gt;&amp;nbsp;&lt;/strong&gt;table.&lt;br /&gt;
&lt;br class=&quot;Apple-interchange-newline&quot; /&gt;&lt;br /&gt;
&lt;strong&gt;&lt;u&gt;/EVENT :&lt;/u&gt; &lt;/strong&gt;Abstract class to record system-initiated and user-initiated events. Event objects are related to a specific service or to an account. An event includes generic information such as start and end times as well the balance impacts that are incurred by the account due to this event. The /event object points to the account balance group that is impacted.Maps to&amp;nbsp;&lt;strong&gt;&lt;u&gt;event_t&lt;/u&gt;&amp;nbsp;&lt;/strong&gt;table in BRM database. The event class stores the event balance data in another table &lt;b&gt;&lt;u&gt;event_bal_impacts_t.&lt;/u&gt;&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;&lt;u&gt;&lt;br /&gt;&lt;/u&gt;&lt;/b&gt;&lt;br /&gt;
&lt;strong&gt;&lt;u&gt;/PURCHASED_PRODUCT :&lt;/u&gt; &lt;/strong&gt;Contains an entry for each product owned by an account at the time of conversion.Maps to&amp;nbsp;&lt;strong&gt;&lt;u&gt;purchased_product_t&lt;/u&gt;&lt;/strong&gt;&amp;nbsp;table in the BRM database.&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;&lt;u&gt;&lt;br /&gt;&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;&lt;u&gt;/PURCHASED_DISCOUNT:&lt;/u&gt;&amp;nbsp;&lt;/strong&gt;Contains an entry for each discount owned by an account at the time of conversion.Maps to&amp;nbsp;&lt;strong&gt;&lt;u&gt;purchased_discount_t&lt;/u&gt;&lt;/strong&gt;&amp;nbsp;table in the BRM database.&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;&lt;u&gt;/SERVICE :&lt;/u&gt; &lt;/strong&gt;Stores generic service type information for accounts. There is one row in this table for each applicable service for each entry in ACCOUNT_T. In addition to a row in this table, a row must be created in the service type table, such as IP service or email. Maps to&amp;nbsp;&lt;strong&gt;&lt;u&gt;service_t&lt;/u&gt;&lt;/strong&gt;&amp;nbsp;table in the BRM database.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;&lt;u&gt;/CONFIG:&lt;/u&gt;&amp;nbsp;&lt;/strong&gt;Base class for configuration objects. Subclasses hold specific configuration information for various features, for example, /config/beid defines currency and non-currency resources. Maps to&amp;nbsp;&lt;strong&gt;&lt;u&gt;config_t&amp;nbsp;&lt;/u&gt;&lt;/strong&gt;&amp;nbsp;table.&lt;br /&gt;
&lt;br class=&quot;Apple-interchange-newline&quot; /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://billingandrevenuemanagement.blogspot.com/feeds/8303658173831770602/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2011/05/important-tables-in-oracle-brm.html#comment-form' title='10 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/8303658173831770602'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/8303658173831770602'/><link rel='alternate' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2011/05/important-tables-in-oracle-brm.html' title='Important classes in Oracle BRM'/><author><name>Sachid</name><uri>http://www.blogger.com/profile/11822259414693161812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='27' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi3UalPnC1ZfHS6sIfVj6G1Rcme1JLvWa4eyGbwuQAYcDMmr9x5yx2uedvWVYMeFvDi1V50jZtph7LvUiNUKKxlio2_HnGARW876om1AkeiMrgZy6XL-agr5sbw2dwmivM/s97/sketched_small.jpg'/></author><thr:total>10</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8317612857393390481.post-2859989656987153168</id><published>2011-05-05T15:49:00.000-07:00</published><updated>2016-02-09T13:54:59.088-08:00</updated><title type='text'>Custom fields in BRM</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
Oracle Communications Billing and Revenue Management offers two methods for creating, editing and deleting custom fields and storable classes. One approach is by using Storable Class Editor, part of the Developer Center application, and the other is by using SDK opcodes. &lt;/div&gt;
&lt;div&gt;
This post will address manipulating custom fields with SDK opcodes.&lt;/div&gt;
&lt;br /&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
&lt;/div&gt;
&lt;div&gt;
Before beginning, one change needs to be made first: &lt;u&gt;making&amp;nbsp;the data dictionary writable&lt;/u&gt;. Here’s how to do it:&lt;/div&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
1. Open the DM Oracle configuration file ($BRM_HOME/sys/dm_oracle/pin.conf) in a text(e.g. vi)&amp;nbsp;editor.&lt;/div&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
2. Enable field manipulation in the data dictionary, by setting the following entry to 1:- &lt;/div&gt;
&lt;div&gt;
&lt;/div&gt;
&lt;div&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;b&gt;dm dd_write_enable_fields 1&lt;/b&gt;&lt;/div&gt;
&lt;div&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
&lt;u&gt;&lt;b&gt;Our objectives are as follows:&lt;/b&gt;&lt;/u&gt;&lt;/div&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
1. To create a custom field&lt;/div&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
2. To edit the custom field description&lt;/div&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
3. To delete the custom field from the database&lt;/div&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
4. To make the custom field available to BRM&lt;/div&gt;
&lt;div&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
&lt;b&gt;1. Creating a New Custom Field&lt;/b&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
Creating a new custom field and committing it to the database can be accomplished with SDK opcodes or with a pin deploy utility. As developers know, SDK opcodes provide a more flexible way to create, edit, and delete custom fields at the development stage. The pin deploy&amp;nbsp;utility, on the other hand, uses PODL (Portal Object Definition Language) to export and import &amp;nbsp;field and storable class definitions. This is more useful, especially at the administrative level, because the process can be streamlined by putting field definitions into source code management and thus lower any possibility of damaging the Oracle BRM production database data dictionary.&lt;/div&gt;
&lt;div&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
The following SDK opcodes can be used to manage field specifications:&lt;/div&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
i. &lt;b&gt;PCM_OP_SDK_SET_FLD_SPECS&lt;/b&gt; – create or modify a field,&lt;/div&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
ii. &lt;b&gt;PCM_OP_SDK_GET_FLD_SPECS&lt;/b&gt; – retrieve a field specs,&lt;/div&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
iii. &lt;b&gt;PCM_OP_SDK_DEL_FLD_SPECS&lt;/b&gt; – delete a field.&lt;/div&gt;
&lt;div&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
&lt;u&gt;&lt;i&gt;To create a field, it’s necessary to write an input flist for&lt;/i&gt; &lt;b&gt;PCM_OP_SDK_SET_FLD_SPECS&lt;/b&gt; &lt;i&gt;opcode:&lt;/i&gt;&lt;/u&gt;&lt;/div&gt;
&lt;div&gt;
&lt;/div&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
0 PIN_FLD_POID &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;POID [0] 0.0.0.1 /dd/fields 0 0&lt;/div&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
0 PIN_FLD_FIELD &amp;nbsp; &amp;nbsp; &amp;nbsp;ARRAY [0]&lt;/div&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
1 &amp;nbsp; &amp;nbsp;PIN_FLD_DESCR &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;STR [0] “custom field for holding a VAT number”&lt;/div&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
1 &amp;nbsp; &amp;nbsp;PIN_FLD_FIELD_NAME &amp;nbsp; &amp;nbsp; &amp;nbsp;STR [0] “C_FLD_VAT_NUMBER”&lt;/div&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
1 &amp;nbsp; &amp;nbsp;PIN_FLD_FIELD_NUM &amp;nbsp; &amp;nbsp; &amp;nbsp;ENUM [0] 10000&lt;/div&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
1 &amp;nbsp; &amp;nbsp;PIN_FLD_FIELD_TYPE &amp;nbsp; &amp;nbsp; &amp;nbsp;INT [0] 5&lt;/div&gt;
&lt;div&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
&lt;i&gt;Now, verify that the field created exists in the database data dictionary by feeding the following input flist to &lt;/i&gt;&lt;i&gt;&lt;b&gt;PCM_OP_SDK_GET_FLD_SPECS&lt;/b&gt; opcode:&lt;/i&gt;&lt;/div&gt;
&lt;div&gt;
&lt;/div&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
0 PIN_FLD_POID &amp;nbsp; &amp;nbsp; &amp;nbsp;POID [0] 0.0.0.1 /dd/objects 0 0&lt;/div&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
0 PIN_FLD_FIELD &amp;nbsp; &amp;nbsp;ARRAY [0]&lt;/div&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
1 &amp;nbsp; &amp;nbsp;PIN_FLD_FIELD_NAME &amp;nbsp; &amp;nbsp;STR [0] “C_FLD_VAT_NUMBER”&lt;/div&gt;
&lt;div&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
&lt;b&gt;2. Editing the Custom Field Description&lt;/b&gt;&lt;/div&gt;
&lt;div&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
&lt;i&gt;Now, having confirmed that the new custom field exists, the description can be altered by calling &lt;b&gt;PCM_OP_SDK_SET_FLD_SPECS&lt;/b&gt; opcode with the following input flist:&lt;/i&gt;&lt;/div&gt;
&lt;div&gt;
&lt;/div&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
0 PIN_FLD_POID &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;POID [0] 0.0.0.1 /dd/fields 0 0&lt;/div&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
0 PIN_FLD_FIELD &amp;nbsp; &amp;nbsp; &amp;nbsp;ARRAY [0]&lt;/div&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
1 &amp;nbsp; &amp;nbsp;PIN_FLD_DESCR &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;STR [0] “custom field – VAT number”&lt;/div&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
1 &amp;nbsp; &amp;nbsp;PIN_FLD_FIELD_NAME &amp;nbsp; &amp;nbsp; &amp;nbsp;STR [0] “C_FLD_VAT_NUMBER”&lt;/div&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
1 &amp;nbsp; &amp;nbsp;PIN_FLD_FIELD_NUM &amp;nbsp; &amp;nbsp; &amp;nbsp;ENUM [0] 10000&lt;/div&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
1 &amp;nbsp; &amp;nbsp;PIN_FLD_FIELD_TYPE &amp;nbsp; &amp;nbsp; &amp;nbsp;INT [0] 5&lt;/div&gt;
&lt;div&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
Again, the field’s specifications can be retrieved so as to verify that the change has been accomplished.&lt;/div&gt;
&lt;br /&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
&lt;b&gt;After that, delete the custom field from the database.&lt;/b&gt;&lt;/div&gt;
&lt;div&gt;
&lt;/div&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
&lt;i&gt;Finally, assume a mistake has been made, and it’s necessary to delete a field. Provide the following input flist to &lt;b&gt;PCM_OP_SDK_DEL_FLD_SPECS&lt;/b&gt; opcode, deletes the field:&lt;/i&gt;&lt;/div&gt;
&lt;div&gt;
&lt;/div&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
0 PIN_FLD_POID &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;POID [0] 0.0.0.1 /dd/fields 0 0&lt;/div&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
0 PIN_FLD_FIELD &amp;nbsp; &amp;nbsp; &amp;nbsp;ARRAY [0]&lt;/div&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
1 &amp;nbsp; &amp;nbsp;PIN_FLD_FIELD_NAME &amp;nbsp; &amp;nbsp; &amp;nbsp;STR [0] “C_FLD_VAT_NUMBER”&lt;/div&gt;
&lt;div&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
If the opcode for retrieving the field’s specifications returns an empty flist (only POID obj),then that signifies the field was not found in the database data dictionary.&lt;/div&gt;
&lt;div&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
&lt;b&gt;3. Making the Custom Fields Available to BRM&lt;/b&gt;&lt;/div&gt;
&lt;div&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
Standard practice dictates that everything custom developed goes into the BRM_HOME/custom directory, and since, in this case, BRM_HOME/include/pin_flds.h, is being extended, a new custom header file BRM_HOME/custom/include/custom_flds.h. needs to be created.&lt;/div&gt;
&lt;div&gt;
&lt;/div&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
&lt;b&gt;&lt;u&gt;Now, the new custom field can be introduced by appending the following line to custom_flds.h:&lt;/u&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
&lt;b&gt;#define&amp;nbsp;MY_CUSTOM_FLD PIN_MAKE_FLD(PIN_FLDT_STR, 10000)&lt;/b&gt;&lt;/div&gt;
&lt;div&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
The line above defines a custom field named “&lt;b&gt;MY_CUSTOM_FLD&lt;/b&gt;” with data type “PIN_FLDT_STR” (STR stands for string) and unique identifier “10000″ (in regards to BRM_HOME/include/pin_flds.h). &lt;/div&gt;
&lt;div&gt;
Data types are static, and defined by the BRM version you are running; please see BRM_HOME/include/pcm.h for definitions.&lt;/div&gt;
&lt;br /&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
Next, run the &lt;b&gt;&lt;u&gt;parse_custom_ops_fields.pl&lt;/u&gt;&lt;/b&gt; perl script on the custom_flds.h using this command:&lt;/div&gt;
&lt;div&gt;
&lt;/div&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
&lt;b&gt;&lt;i&gt;$BRM_HOME/bin/parse_custom_ops_fields.pl -L pcmc -I custom_flds.h -O $BRM_HOME/custom/include/custom_mapping.m&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
&lt;b&gt;&lt;u&gt;And finally, include the following line to every pin.conf where it’s desired that these field be seen: –&lt;/u&gt;&lt;/b&gt; &lt;/div&gt;
&lt;div&gt;
&lt;b&gt;&lt;i&gt;- ops_fields_extension_file ${BRM_HOME}/custom/include/custom_mapping.m&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
&lt;b&gt;&lt;u&gt;NOTE:&lt;/u&gt;&lt;/b&gt; &lt;i&gt;When introducing new functionalities using custom fields, it is necessary to include the custom_flds.h header file in the FMs that use these fields&lt;/i&gt;&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://billingandrevenuemanagement.blogspot.com/feeds/2859989656987153168/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2011/05/custom-fields-in-brm.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/2859989656987153168'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/2859989656987153168'/><link rel='alternate' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2011/05/custom-fields-in-brm.html' title='Custom fields in BRM'/><author><name>Sachid</name><uri>http://www.blogger.com/profile/11822259414693161812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='27' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi3UalPnC1ZfHS6sIfVj6G1Rcme1JLvWa4eyGbwuQAYcDMmr9x5yx2uedvWVYMeFvDi1V50jZtph7LvUiNUKKxlio2_HnGARW876om1AkeiMrgZy6XL-agr5sbw2dwmivM/s97/sketched_small.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8317612857393390481.post-3916809512240047841</id><published>2011-04-01T10:59:00.000-07:00</published><updated>2018-02-01T06:20:26.256-08:00</updated><title type='text'>Some BRM SQLs</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
Here I&#39;m sharing few &lt;span style=&quot;font-family: &amp;quot;georgia&amp;quot; , &amp;quot;times new roman&amp;quot; , serif;&quot;&gt;SQLs&lt;/span&gt; which are very useful for specific BRM scenarios during debugging and testing. Please contribute if you have some SQLs apart from the listed ones :&lt;br /&gt;
&lt;br /&gt;
1). Searching the resources associated with an account with their balances:&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;color: purple; font-size: small;&quot;&gt;SELECT BG.OBJ_ID0,BG.REC_ID,BG.REC_ID2,CB.NAME,CB.SYMBOL, DATE &#39;1970-01-01&#39;+BG.VALID_FROM/86400,DATE &#39;1970-01-01&#39;+BG.VALID_TO/86400,BG.CURRENT_BAL FROM BAL_GRP_SUB_BALS_T BG,CONFIG_BEID_BALANCES_T CB WHERE BG.OBJ_ID0=(SELECT POID_ID0 FROM BAL_GRP_T WHERE ACCOUNT_OBJ_ID0=30651) AND BG.REC_ID2=CB.REC_ID&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;georgia&amp;quot; , &amp;quot;times new roman&amp;quot; , serif;&quot;&gt;Change the ACCOUNT_OBJ_ID0 and use this query.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;georgia&amp;quot; , &amp;quot;times new roman&amp;quot; , serif;&quot;&gt;2). Getting discount details with discount model &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;georgia&amp;quot; , &amp;quot;times new roman&amp;quot; , serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;georgia&amp;quot; , &amp;quot;times new roman&amp;quot; , serif;&quot;&gt;select d.name,dum.EVENT_TYPE, -- Discount Name&lt;br /&gt;idm.CODE, -- discount model&lt;br /&gt;idt.CODE &quot;Trigger&quot;, idcndn.COND_EXPRESSION ||&#39; &#39;||idcndn.COND_OPERATOR||&#39; &#39;||idcndn.CONDITION_VALUE &quot;Trigger value&quot;, -- Trigger details&lt;br /&gt;idmstr.CODE &quot;DiscountMaster&quot;, iddtl.ZONEMODEL, iddtl.IMPACT_CATEGORY, iddtl.SERVICECODE, iddtl.SERVICECLASS, -- Master details&lt;br /&gt;iddtl.TIMEMODEL, iddtl.TIMEZONE, iddtl.PRICEMODEL, iddtl.RESSOURCE, iddtl.RUM, iddtl.RECORDTYPE, -- Master details cont&lt;br /&gt;iddtl.USAGETYPE,iddtl.USAGECLASS, iddtl.RATE_PLAN, iddtl.RATE_TAG, iddtl.GLID, -- Master details cont&lt;br /&gt;idrl.CODE &quot;DISC RULE&quot;, idrl.DRUM_EXPRESSION, idrl.RULE_TYPE, idrl.DRUM_TYPE, -- Discount rule&lt;br /&gt;idstp.CODE, idstp.RANK, idstp.THRESHOLD_FROM, idstp.THRESHOLD_TO, -- Discount step&lt;br /&gt;idblimpct.RESOURCE_ID, idblimpct.DISCOUNT_OWNER_FLAG, idblimpct.DISCOUNT_TYPE, idblimpct.BASE_EXPRESSION, -- discount balance impact&lt;br /&gt;idblimpct.GRANT_BEAT, idblimpct.GRANT_PRORATEDBEAT, idblimpct.GRANT_UNITS, idblimpct.EVENT_BALANCE_ID -- discount balance impact&lt;br /&gt;from discount_t d, discount_usage_map_t dum, IFW_DISCOUNTMODEL idm,&lt;br /&gt;IFW_DSCMDL_CNF idmc, IFW_DSCTRIGGER idt, IFW_DISCOUNTRULE idrl, IFW_DSCCONDITION idcndn, IFW_DISCOUNTMASTER idmstr, IFW_DISCOUNTDETAIL iddtl,&lt;br /&gt;IFW_DISCOUNTSTEP idstp, IFW_DSCBALIMPACT idblimpct--, IFW_DSCMDL_CNF idscnf&lt;br /&gt;where d.POID_ID0=dum.OBJ_ID0 and dum.DISCOUNT_MODEL=idm.CODE and idmc.DISCOUNTMODEL=idm.DISCOUNTMODEL&lt;br /&gt;and idmc.DISCOUNTTRIGGER=idt.DISCOUNTTRIGGER and idmc.DISCOUNTRULE=idrl.DISCOUNTRULE&lt;br /&gt;and idcndn.DISCOUNTTRIGGER=idt.DISCOUNTTRIGGER and idmstr.DISCOUNTMASTER=idrl.DISCOUNTMASTER&lt;br /&gt;and idmstr.DISCOUNTMASTER=iddtl.DISCOUNTMASTER and idstp.DISCOUNTRULE=idrl.DISCOUNTRULE&lt;br /&gt;and idblimpct.DISCOUNTSTEP=idstp.DISCOUNTSTEP ;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;georgia&amp;quot; , &amp;quot;times new roman&amp;quot; , serif;&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;georgia&amp;quot; , &amp;quot;times new roman&amp;quot; , serif;&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;georgia&amp;quot; , &amp;quot;times new roman&amp;quot; , serif;&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;georgia&amp;quot; , &amp;quot;times new roman&amp;quot; , serif;&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;georgia&amp;quot; , &amp;quot;times new roman&amp;quot; , serif;&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;georgia&amp;quot; , &amp;quot;times new roman&amp;quot; , serif;&quot;&gt;&lt;br /&gt;3). Discount details with discount model selector&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;georgia&amp;quot; , &amp;quot;times new roman&amp;quot; , serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;georgia&amp;quot; , &amp;quot;times new roman&amp;quot; , serif;&quot;&gt;select d.name,dum.EVENT_TYPE, -- Discount Name&lt;br /&gt;idm.CODE, -- discount model &lt;br /&gt;idt.CODE &quot;Trigger&quot;, idcndn.COND_EXPRESSION ||&#39; &#39;||idcndn.COND_OPERATOR||&#39; &#39;||idcndn.CONDITION_VALUE &quot;Trigger value&quot;, -- Trigger details&lt;br /&gt;idmstr.CODE &quot;DiscountMaster&quot;, iddtl.ZONEMODEL, iddtl.IMPACT_CATEGORY, iddtl.SERVICECODE, iddtl.SERVICECLASS, -- Master details&lt;br /&gt;iddtl.TIMEMODEL, iddtl.TIMEZONE, iddtl.PRICEMODEL, iddtl.RESSOURCE, iddtl.RUM, iddtl.RECORDTYPE, -- Master details cont&lt;br /&gt;iddtl.USAGETYPE,iddtl.USAGECLASS, iddtl.RATE_PLAN, iddtl.RATE_TAG, iddtl.GLID, -- Master details cont&lt;br /&gt;idrl.CODE &quot;DISC RULE&quot;, idrl.DRUM_EXPRESSION, idrl.RULE_TYPE, idrl.DRUM_TYPE, -- Discount rule&lt;br /&gt;idstp.CODE, idstp.RANK, idstp.THRESHOLD_FROM, idstp.THRESHOLD_TO, -- Discount step&lt;br /&gt;idblimpct.RESOURCE_ID, idblimpct.DISCOUNT_OWNER_FLAG, idblimpct.DISCOUNT_TYPE, idblimpct.BASE_EXPRESSION, -- discount balance impact&lt;br /&gt;idblimpct.GRANT_BEAT, idblimpct.GRANT_PRORATEDBEAT, idblimpct.GRANT_UNITS, idblimpct.EVENT_BALANCE_ID -- discount balance impact&lt;br /&gt;from discount_t d, discount_usage_map_t dum, IFW_MODEL_SELECTOR ims, IFW_SELECTOR_RULESET isrlst, IFW_DISCOUNTMODEL idm,&lt;br /&gt;IFW_DSCMDL_CNF idmc, IFW_DSCTRIGGER idt, IFW_DISCOUNTRULE idrl, IFW_DSCCONDITION idcndn, IFW_DISCOUNTMASTER idmstr, IFW_DISCOUNTDETAIL iddtl,&lt;br /&gt;IFW_DISCOUNTSTEP idstp, IFW_DSCBALIMPACT idblimpct,&lt;br /&gt;IFW_SELECTOR_RULE_LNK isrl, IFW_SELECTOR_RULE isl, IFW_SELECTOR_DETAIL isd&lt;br /&gt;where d.POID_ID0=dum.OBJ_ID0 and dum.MODEL_SELECTOR=ims.NAME and idmc.DISCOUNTMODEL=idm.DISCOUNTMODEL&lt;br /&gt;and idmc.DISCOUNTTRIGGER=idt.DISCOUNTTRIGGER and idmc.DISCOUNTRULE=idrl.DISCOUNTRULE&lt;br /&gt;and idcndn.DISCOUNTTRIGGER=idt.DISCOUNTTRIGGER and idmstr.DISCOUNTMASTER=idrl.DISCOUNTMASTER&lt;br /&gt;and idmstr.DISCOUNTMASTER=iddtl.DISCOUNTMASTER and idstp.DISCOUNTRULE=idrl.DISCOUNTRULE&lt;br /&gt;and idblimpct.DISCOUNTSTEP=idstp.DISCOUNTSTEP &lt;br /&gt;and dum.MODEL_SELECTOR=ims.NAME&lt;br /&gt;and isrlst.MODEL_SELECTOR=ims.MODEL_SELECTOR&lt;br /&gt;and isrlst.MODEL=idm.DISCOUNTMODEL&lt;br /&gt;and isrlst.SELECTOR_RULE=isrl.SELECTOR_RULE&lt;br /&gt;and isrl.SELECTOR_RULE=isl.SELECTOR_RULE and isrl.SELECTOR_DETAIL=isd.SELECTOR_DETAIL&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;georgia&amp;quot; , &amp;quot;times new roman&amp;quot; , serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;georgia&amp;quot; , &amp;quot;times new roman&amp;quot; , serif;&quot;&gt;4). SQL to find pipeline rate plan details with product poid&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;georgia&amp;quot; , &amp;quot;times new roman&amp;quot; , serif;&quot;&gt;select p.name,pum.EVENT_TYPE, isrl.*, ipm.*, ims.* &lt;br /&gt;from product_t p, PRODUCT_USAGE_MAP_T pum, RATE_PLAN_T rp, IFW_RATEPLAN irp, &lt;br /&gt;IFW_RATEPLAN_VER irpv, IFW_RATEPLAN_CNF irpc, IFW_MODEL_SELECTOR ims, IFW_SELECTOR_RULESET isr, &lt;br /&gt;IFW_SELECTOR_RULE isrl, IFW_PRICEMODEL ipm&lt;br /&gt;where p.POID_ID0=pum.OBJ_ID0 and pum.RATE_PLAN_CODE=rp.CODE and rp.CODE=irp.CODE&lt;br /&gt;and irp.RATEPLAN=irpv.RATEPLAN and irpv.RATEPLAN=irpc.RATEPLAN and irpc.MODEL_SELECTOR=ims.MODEL_SELECTOR&lt;br /&gt;and isr.MODEL_SELECTOR=ims.MODEL_SELECTOR&lt;br /&gt;and isrl.SELECTOR_RULE=isr.SELECTOR_RULE&lt;br /&gt;and isr.MODEL=ipm.PRICEMODEL&lt;br /&gt;and p.poid = &amp;lt;&amp;lt;PRODUCT_POID&amp;gt;&amp;gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;georgia&amp;quot; , &amp;quot;times new roman&amp;quot; , serif;&quot;&gt;5). SQL to find discount details&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;georgia&amp;quot; , &amp;quot;times new roman&amp;quot; , serif;&quot;&gt;select dsc.poid_id0, dsc.NAME,&lt;br /&gt;decode(idb.discount_type,&#39;P&#39;,idb.GRANT_UNITS*100||&#39;%&#39;, idb.GRANT_UNITS||&#39; Fixed&#39;) discount&lt;br /&gt;, idd.* &lt;br /&gt;from&lt;br /&gt;DISCOUNT_T dsc, DISCOUNT_USAGE_MAP_T dum&lt;br /&gt;,IFW_DISCOUNTMODEL idm&lt;br /&gt;,IFW_DSCMDL_CNF idmc&lt;br /&gt;,IFW_DISCOUNTRULE idr&lt;br /&gt;,IFW_DISCOUNTSTEP ids&lt;br /&gt;,IFW_DSCBALIMPACT idb&lt;br /&gt;,IFW_DISCOUNTDETAIL idd&lt;br /&gt;where dsc.POID_ID0=dum.OBJ_ID0&lt;br /&gt;and idm.code=dum.DISCOUNT_MODEL&lt;br /&gt;and idmc.discountmodel = idm.discountmodel&lt;br /&gt;and idr.DISCOUNTRULE = idmc.DISCOUNTRULE&lt;br /&gt;and ids.discountrule = idr.discountrule &lt;br /&gt;and idb.discountstep = ids.discountstep&lt;br /&gt;and idr.DISCOUNTMASTER = idd.DISCOUNTMASTER&lt;br /&gt;--and dsc.name like &#39;%&amp;lt;&amp;lt;DISCOUNT_PATTERN%&#39;&lt;br /&gt;and dum.EVENT_TYPE=&#39;&amp;lt;&amp;lt;EVENT_TYPE&amp;gt;&amp;gt;&#39;&lt;br /&gt;; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;georgia&amp;quot; , &amp;quot;times new roman&amp;quot; , serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://billingandrevenuemanagement.blogspot.com/feeds/3916809512240047841/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2011/04/some-brm-sqls.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/3916809512240047841'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/3916809512240047841'/><link rel='alternate' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2011/04/some-brm-sqls.html' title='Some BRM SQLs'/><author><name>Sachid</name><uri>http://www.blogger.com/profile/11822259414693161812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='27' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi3UalPnC1ZfHS6sIfVj6G1Rcme1JLvWa4eyGbwuQAYcDMmr9x5yx2uedvWVYMeFvDi1V50jZtph7LvUiNUKKxlio2_HnGARW876om1AkeiMrgZy6XL-agr5sbw2dwmivM/s97/sketched_small.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8317612857393390481.post-3909344349890341212</id><published>2011-03-26T11:22:00.000-07:00</published><updated>2014-11-19T04:47:05.046-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="BRM GLID"/><category scheme="http://www.blogger.com/atom/ns#" term="BRM Revenue reporting"/><category scheme="http://www.blogger.com/atom/ns#" term="GLID configuration"/><category scheme="http://www.blogger.com/atom/ns#" term="OBRM GL"/><title type='text'>BRM - GL (General Ledger)</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div class=&quot;MsoListParagraph&quot; style=&quot;margin: 0cm 0cm 10pt 18pt; text-align: center; text-indent: -18pt;&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg54F9VAS90edaM3VyeHOI1HB0zL72brIBjkOY08ABQnvWKYS3JiNuZieQqzFMuKHcofZ9Ghg549ld5zqzR9qCZl307F4LNVpw7uN21s6hcZqbDmFsL4Uk9kaCavX2qSDd1Dy11o0QXnEn0/s1600/1.JPG&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg54F9VAS90edaM3VyeHOI1HB0zL72brIBjkOY08ABQnvWKYS3JiNuZieQqzFMuKHcofZ9Ghg549ld5zqzR9qCZl307F4LNVpw7uN21s6hcZqbDmFsL4Uk9kaCavX2qSDd1Dy11o0QXnEn0/s1600/1.JPG&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi12pBmYsYMqBtjBvW0HNJ4XtNmGbhSj04YC69h2_mwrmCZF9mRJ4SLLEqVQ5Pm2a0jU45R7DzmUnvuvk7yh84TxsFRvxMCV93Lr6fcqYVweursz4xorMh64NL-ubVyR1fTNltMeugi_bl4/s1600/2.JPG&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi12pBmYsYMqBtjBvW0HNJ4XtNmGbhSj04YC69h2_mwrmCZF9mRJ4SLLEqVQ5Pm2a0jU45R7DzmUnvuvk7yh84TxsFRvxMCV93Lr6fcqYVweursz4xorMh64NL-ubVyR1fTNltMeugi_bl4/s1600/2.JPG&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj9o95Q02VtO_0nHgIC7uuCAu2aVa_XcCT18PM_za6VrSgEA4E-C3DmpHt18KJDGbqUPOLye0GMu9aonxgp7NOxpbSLBmRRSU-zgdHEsJFHeUCB5U6lksAUBtfIGObUtrb-DiCG9gWbXt_Z/s1600/3.JPG&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj9o95Q02VtO_0nHgIC7uuCAu2aVa_XcCT18PM_za6VrSgEA4E-C3DmpHt18KJDGbqUPOLye0GMu9aonxgp7NOxpbSLBmRRSU-zgdHEsJFHeUCB5U6lksAUBtfIGObUtrb-DiCG9gWbXt_Z/s1600/3.JPG&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhQggJJfPqHWscXz3cvnOy-AYcQO6Aksg7p3LeWqk_U1uXkTMntCUBiZJAXDP7wWv-RGdYdx182kFNQl5YF32LV6mPVLzlFZ1oUBFSKjfbZKfxFTWfM-hEdI2e1WAP0YFFD30V1iUa86FiY/s1600/4.JPG&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhQggJJfPqHWscXz3cvnOy-AYcQO6Aksg7p3LeWqk_U1uXkTMntCUBiZJAXDP7wWv-RGdYdx182kFNQl5YF32LV6mPVLzlFZ1oUBFSKjfbZKfxFTWfM-hEdI2e1WAP0YFFD30V1iUa86FiY/s1600/4.JPG&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgTMk79vVEjpNwMbxpMoAwDDdb38kO4on_93INomL_x-7DifjIjkYTqEsMu-6N-ZKE2CQc2CftLs64Jvr1LhsdLWWYB8wAMDUSUfTOiP0LmElQCUyV5ryoOmF6-jTZ7zxdCopCe1fer8SWP/s1600/5.JPG&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgTMk79vVEjpNwMbxpMoAwDDdb38kO4on_93INomL_x-7DifjIjkYTqEsMu-6N-ZKE2CQc2CftLs64Jvr1LhsdLWWYB8wAMDUSUfTOiP0LmElQCUyV5ryoOmF6-jTZ7zxdCopCe1fer8SWP/s1600/5.JPG&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiV9rRQp19B2oTS5GJ3Pa_k1M_wYIMxNtE7BUQrl5Qw9ThiRRDwnqkXpsLbPcASo8ZuxpB8FdU4Ok2X2R9evU_Vr6msczzXqjLwkZW1IXg7tBVydkgAKtY2XUAmHx1m_hPoQTZlJQZJvuFg/s1600/6.JPG&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiV9rRQp19B2oTS5GJ3Pa_k1M_wYIMxNtE7BUQrl5Qw9ThiRRDwnqkXpsLbPcASo8ZuxpB8FdU4Ok2X2R9evU_Vr6msczzXqjLwkZW1IXg7tBVydkgAKtY2XUAmHx1m_hPoQTZlJQZJvuFg/s1600/6.JPG&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiomW6Hs22CDoq2eQ7SX6LKnM7DEghaWiuJHpwZmut6mgQ79bEwb4kO-wqEG9z6CArqv1FmGScSS1L3s33yWbbhaPhnxD_OT1i0-0aq8Anu5MXTx9rOlIz5EhhO7ezgMz1DuBeE6ZgCCJtH/s1600/Fig2.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em; text-indent: -18pt;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiomW6Hs22CDoq2eQ7SX6LKnM7DEghaWiuJHpwZmut6mgQ79bEwb4kO-wqEG9z6CArqv1FmGScSS1L3s33yWbbhaPhnxD_OT1i0-0aq8Anu5MXTx9rOlIz5EhhO7ezgMz1DuBeE6ZgCCJtH/s1600/Fig2.jpg&quot; r6=&quot;true&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpLast&quot; style=&quot;margin: 0cm 0cm 10pt 36pt; text-align: center; text-indent: -18pt;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 15pt; line-height: 115%;&quot;&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEii4dtSnG50ixfrwsKjD28Hm1Ii8Ld8pZVldHSCOyZo1xCD_P1nqgQtKHBAdMz8EtzpQ6-EJHzc_XiAO3-6CrOwci90kznuVJpqSeSUSmF0G3Yu8HyU70CUXXZFfx48bqdxvkpqelgBBLrv/s1600/Fig1.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEii4dtSnG50ixfrwsKjD28Hm1Ii8Ld8pZVldHSCOyZo1xCD_P1nqgQtKHBAdMz8EtzpQ6-EJHzc_XiAO3-6CrOwci90kznuVJpqSeSUSmF0G3Yu8HyU70CUXXZFfx48bqdxvkpqelgBBLrv/s1600/Fig1.jpg&quot; r6=&quot;true&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin: 0cm 0cm 10pt 36pt; mso-list: l3 level1 lfo1; tab-stops: list 36.0pt; text-indent: -18pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;color: purple; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif; margin: 0cm 0cm 10pt 36pt; text-indent: -18pt;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small; line-height: 115%;&quot;&gt;&lt;span style=&quot;-moz-font-feature-settings: normal; -moz-font-language-override: normal; font-size-adjust: none; font-stretch: normal; font-style: normal; font-variant: normal; font-weight: normal; line-height: normal;&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif; font-size: small;&quot;&gt;&lt;b&gt;&lt;u&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;line-height: 115%;&quot;&gt;Billed and unbilled usage fees&lt;/span&gt;&lt;/u&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjcgDhTX7tG9JTpDIvkqZQiMqWFrjakMzOG3SGjiRtyNRhrQjqC5S6M7y_N2xbr8my_woNCtj-SWa_If5YI_b3NFfIUuzPWCQ_EwI6a8deO17ECofpDRZj-TGvSZojDLQwQ24M9eanQZJw3/s1600/Fig3.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjcgDhTX7tG9JTpDIvkqZQiMqWFrjakMzOG3SGjiRtyNRhrQjqC5S6M7y_N2xbr8my_woNCtj-SWa_If5YI_b3NFfIUuzPWCQ_EwI6a8deO17ECofpDRZj-TGvSZojDLQwQ24M9eanQZJw3/s320/Fig3.jpg&quot; height=&quot;172&quot; r6=&quot;true&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin: 0cm 0cm 10pt 36pt; mso-list: l3 level1 lfo1; tab-stops: list 36.0pt; text-indent: -18pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;margin: 0cm 0cm 10pt 17.85pt; text-align: center;&quot;&gt;
&lt;b&gt;&lt;u&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;color: #1f497d; font-size: 23pt; line-height: 115%;&quot;&gt;&lt;/span&gt;&lt;/u&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;color: purple; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif; margin: 0cm 0cm 10pt 36pt; text-indent: -18pt;&quot;&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;b&gt;&lt;u&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;line-height: 115%;&quot;&gt;Billed and unbilled purchase and cancellation fees&lt;/span&gt;&lt;/u&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin: 0cm 0cm 10pt 18pt;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small; line-height: 115%;&quot;&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;If a purchase or cancel event occurs after the billing date but before the G/L reporting date, BRM G/L reports the revenue as unbilled.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;margin: 0cm 0cm 10pt 18pt; text-align: center;&quot;&gt;
&lt;span style=&quot;font-size: 15pt; line-height: 115%;&quot;&gt;&lt;/span&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 15pt; line-height: 115%;&quot;&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjqwLA1tnN7b829IG6Jrgw4sM4sDeLv63KjO2HbWzCWxFXRIF7erPfDnsJ3EDSy_XcxAMt9q18p-x2YfsM9jUFXYrzKEy4IPs3Idj0PkcJvqyis2tEIi3C87NmuY3Xm9f9olvUZKFn7sgZe/s1600/Fig4.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjqwLA1tnN7b829IG6Jrgw4sM4sDeLv63KjO2HbWzCWxFXRIF7erPfDnsJ3EDSy_XcxAMt9q18p-x2YfsM9jUFXYrzKEy4IPs3Idj0PkcJvqyis2tEIi3C87NmuY3Xm9f9olvUZKFn7sgZe/s320/Fig4.jpg&quot; height=&quot;183&quot; r6=&quot;true&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin: 0cm 0cm 10pt 17.85pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;color: purple; font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif; margin: 0cm 0cm 10pt 36pt; text-indent: -18pt;&quot;&gt;
&lt;span style=&quot;font-size: small;&quot;&gt;&lt;b&gt;&lt;u&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;line-height: 115%;&quot;&gt;Cycle arrears and Forward Arrears&lt;/span&gt;&lt;/u&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpFirst&quot; style=&quot;margin: 0cm 0cm 0pt 54pt; text-indent: -18pt;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small; line-height: 115%;&quot;&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;1.&lt;/span&gt;&lt;span style=&quot;-moz-font-feature-settings: normal; -moz-font-language-override: normal; font-family: &amp;quot;Times New Roman&amp;quot;; font-size-adjust: none; font-stretch: normal; font-style: normal; font-variant: normal; font-weight: normal; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small; line-height: 115%;&quot;&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;Billed cycle arrears fees &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin: 0cm 0cm 0pt 54pt; mso-add-space: auto;&quot;&gt;
&lt;span style=&quot;font-size: 15pt; line-height: 115%;&quot;&gt;&lt;/span&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 15pt; line-height: 115%;&quot;&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh8tCsNYikgMqtn6R2BzhfLDdXXZJhRLH8SqDt3ktYNfL5LlLkh6JRJJYE2cXJe-3UwPjAXK2p9_wL0BK2xUmeFgOPCadNhYoaL8UZQk4aztnDo2yn0WGqxBS1nh9jKaXKlJwqqFH4PxVX0/s1600/Fig5.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh8tCsNYikgMqtn6R2BzhfLDdXXZJhRLH8SqDt3ktYNfL5LlLkh6JRJJYE2cXJe-3UwPjAXK2p9_wL0BK2xUmeFgOPCadNhYoaL8UZQk4aztnDo2yn0WGqxBS1nh9jKaXKlJwqqFH4PxVX0/s320/Fig5.jpg&quot; height=&quot;161&quot; r6=&quot;true&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin: 0cm 0cm 0pt 54pt; mso-add-space: auto; mso-list: l1 level1 lfo5; text-indent: -18pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin: 0cm 0cm 0pt 54pt; text-indent: -18pt;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small; line-height: 115%;&quot;&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;2.&lt;/span&gt;&lt;span style=&quot;-moz-font-feature-settings: normal; -moz-font-language-override: normal; font-family: &amp;quot;Times New Roman&amp;quot;; font-size-adjust: none; font-stretch: normal; font-style: normal; font-variant: normal; font-weight: normal; line-height: normal;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small; line-height: 115%;&quot;&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;Billed and unbilled cycle forward arrears fees &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpLast&quot; style=&quot;margin: 0cm 0cm 10pt 54pt; mso-add-space: auto;&quot;&gt;
&lt;span style=&quot;font-size: 15pt; line-height: 115%;&quot;&gt;&lt;/span&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 15pt; line-height: 115%;&quot;&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhKlgNcK1MsO3xEAqp6xUOsaBu8SawgbvJuBVfrFEeh7oRjXhv4yuRcMVdAVD3BgjJeFAgkRE6pOiSvSqdqYQia77DoaS-oZB9IM2Y3dP4ccR98Db61tLOIh0OQ0PNkn24Dpvxa2dU8VlXX/s1600/Fig6.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhKlgNcK1MsO3xEAqp6xUOsaBu8SawgbvJuBVfrFEeh7oRjXhv4yuRcMVdAVD3BgjJeFAgkRE6pOiSvSqdqYQia77DoaS-oZB9IM2Y3dP4ccR98Db61tLOIh0OQ0PNkn24Dpvxa2dU8VlXX/s320/Fig6.jpg&quot; height=&quot;156&quot; r6=&quot;true&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin: 0cm 0cm 10pt 17.85pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraph&quot; style=&quot;margin: 0cm 0cm 10pt 18pt; text-align: center; text-indent: -18pt;&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjgs5tTy_RSI_QhXKoTXidjfw9ygC69GvWCIIG8hiFRQcLVQ-VsgRxTwx5inNaJMcp7Rt0ti7bj6EbO1Jydxs3N42Jx5tzLZjTR4mmaks_R87L5E_7Jwxx5OxoPlL1y9cukIkBbA2aKILv9/s1600/7.JPG&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjgs5tTy_RSI_QhXKoTXidjfw9ygC69GvWCIIG8hiFRQcLVQ-VsgRxTwx5inNaJMcp7Rt0ti7bj6EbO1Jydxs3N42Jx5tzLZjTR4mmaks_R87L5E_7Jwxx5OxoPlL1y9cukIkBbA2aKILv9/s1600/7.JPG&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgBZTxyfQmTKf0_Sb869CjNPNU5bjwOzdWjBSkl0Un82c9gHXPrctohbv_uAcdsDtok60vFHBO8tcYpKlMqs6Ji8JUd_XlUujkg-769wfWI_Rokr7na4oU3S_ZejQPpu-bCe7AGAQShP1yp/s1600/8.JPG&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgBZTxyfQmTKf0_Sb869CjNPNU5bjwOzdWjBSkl0Un82c9gHXPrctohbv_uAcdsDtok60vFHBO8tcYpKlMqs6Ji8JUd_XlUujkg-769wfWI_Rokr7na4oU3S_ZejQPpu-bCe7AGAQShP1yp/s1600/8.JPG&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiasdKgOG7aaPjWJV1rfPUx2NTMaOSoOabLRRZUrb6SEev8e-QHL6bPJlUZUEAg_s2dgvW0-2Wt9gt-Ngq2Fefe9MrNVRVBtQw1thjwZszpsDuNGAa1rHb3W1oDl60Y-NAVanmfevK1s6Gy/s1600/9.JPG&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiasdKgOG7aaPjWJV1rfPUx2NTMaOSoOabLRRZUrb6SEev8e-QHL6bPJlUZUEAg_s2dgvW0-2Wt9gt-Ngq2Fefe9MrNVRVBtQw1thjwZszpsDuNGAa1rHb3W1oDl60Y-NAVanmfevK1s6Gy/s1600/9.JPG&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjkf_Xbqn-uYjDQf8jwFHJKdm7ziTkI8NhSXh1C8hr4zPwHlWuHdip-otRNF0pqiHsblpjyrluWcWrZFya0ZXHTX1ejv-FoqHLDxkDmvfHBXIsKhcKg1G3_PKgv9ZpTT-9jvxTrxlkZukaf/s1600/10.JPG&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjkf_Xbqn-uYjDQf8jwFHJKdm7ziTkI8NhSXh1C8hr4zPwHlWuHdip-otRNF0pqiHsblpjyrluWcWrZFya0ZXHTX1ejv-FoqHLDxkDmvfHBXIsKhcKg1G3_PKgv9ZpTT-9jvxTrxlkZukaf/s1600/10.JPG&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjSqZr1hnknBFls42r63JoNKX9Ac5rw-A4y3XAr0JuOVpDr_fxzVFIoCq4MbDS-KRcK-Y_lK-4wUmzoVtEF-HztI0vqFWjlCYB-w6yo0AZnFhDgNUdZpBoq3SM7kcuh2HKuI9zsk_2X-0cj/s1600/11.JPG&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjSqZr1hnknBFls42r63JoNKX9Ac5rw-A4y3XAr0JuOVpDr_fxzVFIoCq4MbDS-KRcK-Y_lK-4wUmzoVtEF-HztI0vqFWjlCYB-w6yo0AZnFhDgNUdZpBoq3SM7kcuh2HKuI9zsk_2X-0cj/s1600/11.JPG&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin: 0cm 0cm 10pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraph&quot; style=&quot;margin: 0cm 0cm 10pt 18pt; text-align: center; text-indent: -18pt;&quot;&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;color: #1f497d; font-family: Wingdings; font-size: large; line-height: 115%;&quot;&gt;&lt;span style=&quot;-moz-font-feature-settings: normal; -moz-font-language-override: normal; font-family: &amp;quot;Times New Roman&amp;quot;; font-size-adjust: none; font-stretch: normal; font-style: normal; font-variant: normal; font-weight: normal; line-height: normal;&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: large;&quot;&gt;&lt;b&gt;&lt;u&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;color: #1f497d; line-height: 115%;&quot;&gt;&lt;span style=&quot;font-family: Calibri;&quot;&gt;Sample Ledger Report&lt;/span&gt;&lt;/span&gt;&lt;/u&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhDykOmGR9YK_LvW1aKCNRo2GN6R_xR48GyOw0veOOsm9_DgGIZFFloqFhdd7F8pyYplmRFd2m3J5lFTiA2XMkGdseFItfXy4EBfoQ_03fX21hc7ecgiScRkZDReK1qxoMboPe8xQPQ1lpB/s1600/Fig7.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhDykOmGR9YK_LvW1aKCNRo2GN6R_xR48GyOw0veOOsm9_DgGIZFFloqFhdd7F8pyYplmRFd2m3J5lFTiA2XMkGdseFItfXy4EBfoQ_03fX21hc7ecgiScRkZDReK1qxoMboPe8xQPQ1lpB/s1600/Fig7.jpg&quot; r6=&quot;true&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;margin: 0cm 0cm 10pt; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;margin: 0cm 0cm 10pt 18pt; text-align: center;&quot;&gt;
&lt;b&gt;&lt;u&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;color: #1f497d; font-size: 23pt; line-height: 115%;&quot;&gt;&lt;/span&gt;&lt;/u&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraph&quot; style=&quot;margin: 0cm 0cm 10pt 18pt; text-align: center; text-indent: -18pt;&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgCNjYsPiFovmA9rM5ifKPlgT1g7yrkQFcJCsvWCcNnawRxTQaenUzKYhiZqOz20gQGohfr2YpkEJswq0_RSiCaqWQVt8uCciUgcoYitg3PL5m0e1oO7-5IULDIeLM0P3ht9lkhr2P_QJVD/s1600/12.JPG&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgCNjYsPiFovmA9rM5ifKPlgT1g7yrkQFcJCsvWCcNnawRxTQaenUzKYhiZqOz20gQGohfr2YpkEJswq0_RSiCaqWQVt8uCciUgcoYitg3PL5m0e1oO7-5IULDIeLM0P3ht9lkhr2P_QJVD/s1600/12.JPG&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgB9WStLrpobxEacr1zGxVZ2ZRdgUQ4HVB56nNdMOIoFXVNQUroAT37ZvJuvuHKaF9J79EzqryalZ3tUD9ksx2OF0iX2S18lX7KzjzsBigwpyLU5xMYL04enMntMtifsqVKO3WvftO9vsie/s1600/13.JPG&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgB9WStLrpobxEacr1zGxVZ2ZRdgUQ4HVB56nNdMOIoFXVNQUroAT37ZvJuvuHKaF9J79EzqryalZ3tUD9ksx2OF0iX2S18lX7KzjzsBigwpyLU5xMYL04enMntMtifsqVKO3WvftO9vsie/s1600/13.JPG&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhZdoa8fINMgrx2Fiy58sBfzTgkH9V_BceqJWZwV9iIJN6tuSSmUK_6hQddaVTI_lBnk0s3o4j8CLGf3nH6NT8j7DF017XcPVjJ82gphd8qDzcQ3FudqwqR2qMRGl8fTnhhQ557UZ6tcDEB/s1600/14.JPG&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhZdoa8fINMgrx2Fiy58sBfzTgkH9V_BceqJWZwV9iIJN6tuSSmUK_6hQddaVTI_lBnk0s3o4j8CLGf3nH6NT8j7DF017XcPVjJ82gphd8qDzcQ3FudqwqR2qMRGl8fTnhhQ557UZ6tcDEB/s1600/14.JPG&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjYEEXt-2WyLyY5oneSUiiSNwpWlJ4bVl9BW4OWGHxtiO_9Mm9DBPHoR_qq_ej34fSYKZjLHa8motaaurdTXxLOCkfcLPkAKhz4StPO8T2KoTr3TPXWlCaDZvJzIecXT5GqQwF_oouRWZ-M/s1600/15.JPG&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjYEEXt-2WyLyY5oneSUiiSNwpWlJ4bVl9BW4OWGHxtiO_9Mm9DBPHoR_qq_ej34fSYKZjLHa8motaaurdTXxLOCkfcLPkAKhz4StPO8T2KoTr3TPXWlCaDZvJzIecXT5GqQwF_oouRWZ-M/s1600/15.JPG&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhmN-zjjBaYFj-QSHStgHPeixtjF8FJppBkYRf0981qydNv1ofEnCasCZBmEzVuC3sy_IxH58V2ajxCJK41QokPV1jLbRsshfezNWuNfCuMh2m20-52WP2kToFhSNh8LAGLFsg4AYFZqmy4/s1600/16.JPG&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhmN-zjjBaYFj-QSHStgHPeixtjF8FJppBkYRf0981qydNv1ofEnCasCZBmEzVuC3sy_IxH58V2ajxCJK41QokPV1jLbRsshfezNWuNfCuMh2m20-52WP2kToFhSNh8LAGLFsg4AYFZqmy4/s1600/16.JPG&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj3TdxH8SkyiWfiVsRrYmaBAqpbDyXZXuxq9eVUFAhW0yLQRx5_x6zNI1QB99YGNHEY2p8N31-ercqW_gJ2PHKfeYRAxme86hSioRObVUsl2nt1YikjNRhLqX1PZ1-4JuRWSQ3gh_J_WVfT/s1600/17.JPG&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj3TdxH8SkyiWfiVsRrYmaBAqpbDyXZXuxq9eVUFAhW0yLQRx5_x6zNI1QB99YGNHEY2p8N31-ercqW_gJ2PHKfeYRAxme86hSioRObVUsl2nt1YikjNRhLqX1PZ1-4JuRWSQ3gh_J_WVfT/s1600/17.JPG&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpLast&quot; style=&quot;margin: 0cm 0cm 10pt 36pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://billingandrevenuemanagement.blogspot.com/feeds/3909344349890341212/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2011/03/brm-gl-general-ledger.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/3909344349890341212'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/3909344349890341212'/><link rel='alternate' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2011/03/brm-gl-general-ledger.html' title='BRM - GL (General Ledger)'/><author><name>Sachid</name><uri>http://www.blogger.com/profile/11822259414693161812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='27' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi3UalPnC1ZfHS6sIfVj6G1Rcme1JLvWa4eyGbwuQAYcDMmr9x5yx2uedvWVYMeFvDi1V50jZtph7LvUiNUKKxlio2_HnGARW876om1AkeiMrgZy6XL-agr5sbw2dwmivM/s97/sketched_small.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg54F9VAS90edaM3VyeHOI1HB0zL72brIBjkOY08ABQnvWKYS3JiNuZieQqzFMuKHcofZ9Ghg549ld5zqzR9qCZl307F4LNVpw7uN21s6hcZqbDmFsL4Uk9kaCavX2qSDd1Dy11o0QXnEn0/s72-c/1.JPG" height="72" width="72"/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8317612857393390481.post-7995739413917816452</id><published>2011-03-23T06:29:00.000-07:00</published><updated>2012-02-27T04:35:01.146-08:00</updated><title type='text'>DD Objects/Fields queries in BRM</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
This is a simple but very useful search to find the table name for a storable class in BRM. It is many times a difficult job specially in highly customized environments. Execute the following query by connecting to the BRM database :&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;SQL&amp;gt; select &lt;span style=&quot;color: black;&quot;&gt;dof&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;.&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;SM_ITEM_NAME &lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;from&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: olive;&quot;&gt;&lt;span style=&quot;color: olive;&quot;&gt;dd_objects_t&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;do,&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: olive;&quot;&gt;&lt;span style=&quot;color: olive;&quot;&gt;dd_objects_fields_t&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt; dof&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;where&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;do.&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;OBJ_ID0&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;=&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;dof&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;.&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;OBJ_ID0 &lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;and&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;do.NAME&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;like&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: red;&quot;&gt;&lt;span style=&quot;color: red;&quot;&gt;&#39;&amp;lt;CLASSNAME&amp;gt;&#39; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;and &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;dof&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;.&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;SM_ITEM_NAME &lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;not&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;like&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: red;&quot;&gt;&lt;span style=&quot;color: red;&quot;&gt;&#39;:%&#39;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;and&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt; dof&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;.&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;SM_ITEM_NAME &lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;not&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;like&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: red;&quot;&gt;&lt;span style=&quot;color: red;&quot;&gt;&#39;au_%&#39;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: red; font-family: Georgia;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;br /&gt;
&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: black; font-family: &#39;Helvetica Neue&#39;, Arial, Helvetica, sans-serif;&quot;&gt;&lt;strong&gt;Replace the &amp;lt;CLASSNAME&amp;gt; with the exact class for which you want to search the table, e.g.&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: purple;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: purple;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;SQL&amp;gt; &lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;select&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt; dof&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;.&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;SM_ITEM_NAME&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;from&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: olive;&quot;&gt;&lt;span style=&quot;color: olive;&quot;&gt;dd_objects_t&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;do,&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: olive;&quot;&gt;&lt;span style=&quot;color: olive;&quot;&gt;dd_objects_fields_t&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt; dof &lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;where&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;do.&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;OBJ_ID0&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;=&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;dof&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;.&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;OBJ_ID0 &lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;and&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;do.NAME&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;like&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: red;&quot;&gt;&lt;span style=&quot;color: red;&quot;&gt;&#39;/service&#39; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;and &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;dof&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;.&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;SM_ITEM_NAME &lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;not&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;like&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: red;&quot;&gt;&lt;span style=&quot;color: red;&quot;&gt;&#39;:%&#39;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;and&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt; dof&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;.&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;SM_ITEM_NAME &lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;not&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;like&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: red;&quot;&gt;&lt;span style=&quot;color: red;&quot;&gt;&#39;au_%&#39;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: red;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: black; font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;&lt;strong&gt;&lt;u&gt;Similarly, we can search the storable class name from the table name. Use the following query :&lt;/u&gt;&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;SQL&amp;gt; &lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;select&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt; dof&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;.&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;SM_ITEM_NAME&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;,do.name&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&amp;nbsp;from&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: olive;&quot;&gt;&lt;span style=&quot;color: olive;&quot;&gt;dd_objects_t&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;do,&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: olive;&quot;&gt;&lt;span style=&quot;color: olive;&quot;&gt;dd_objects_fields_t&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt; dof &lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;where do.&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;OBJ_ID0&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;=&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;dof&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;.&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;OBJ_ID0 &lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;and &lt;/span&gt;&lt;/span&gt;dof&lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;.&lt;/span&gt;&lt;/span&gt;SM_ITEM_NAME &lt;span style=&quot;color: blue;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;like&lt;/span&gt;&lt;/span&gt; &lt;span style=&quot;color: red;&quot;&gt;&lt;span style=&quot;color: red;&quot;&gt;&#39;account_t&#39;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;&lt;b&gt;&lt;u&gt;Following query can be used to find the storable classes where a BRM field is used:&lt;/u&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;select do.name from dd_objects_t do,dd_objects_fields_t dof&amp;nbsp;where dof.field_name =&#39;&amp;lt;FIELD_NAME&amp;gt;&#39;&amp;nbsp;and do.obj_id0=dof.obj_id0;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;e.g.,&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Georgia, &#39;Times New Roman&#39;, serif;&quot;&gt;select do.name from dd_objects_t do,dd_objects_fields_t dof&amp;nbsp;where dof.field_name =&#39;PIN_FLD_ITEM_NO&#39;&amp;nbsp;and do.obj_id0=dof.obj_id0;&lt;/span&gt;
&lt;br /&gt;
&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://billingandrevenuemanagement.blogspot.com/feeds/7995739413917816452/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2011/03/searching-table-name-for-storable-class.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/7995739413917816452'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/7995739413917816452'/><link rel='alternate' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2011/03/searching-table-name-for-storable-class.html' title='DD Objects/Fields queries in BRM'/><author><name>Sachid</name><uri>http://www.blogger.com/profile/11822259414693161812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='27' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi3UalPnC1ZfHS6sIfVj6G1Rcme1JLvWa4eyGbwuQAYcDMmr9x5yx2uedvWVYMeFvDi1V50jZtph7LvUiNUKKxlio2_HnGARW876om1AkeiMrgZy6XL-agr5sbw2dwmivM/s97/sketched_small.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8317612857393390481.post-2911313152796674474</id><published>2011-03-10T05:25:00.000-08:00</published><updated>2011-03-10T05:26:11.696-08:00</updated><title type='text'>Adding new element in a storable class</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;To add a new element in a storable class, you need to use PCM_OP_WRITE_FLDS with the PCM_OPFLG_ADD_ENTRY as flag. Provide the element in the input flist with the new element id and execute PCM_OP_WRITE_FLDS with the flist. e.g., using testnap&lt;br /&gt;
&lt;br /&gt;
testnap&amp;gt;r &amp;lt;&amp;lt; xx 1&lt;br /&gt;
0 PIN_FLD_POID&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; POID [0] 0.0.0.1 /some_class 1111&lt;br /&gt;
0 NEW_ARRAY_NAME ARRAY [10]&lt;br /&gt;
1&amp;nbsp;&amp;nbsp; ARRAY_FIELD1&amp;nbsp;&amp;nbsp; STR [0] &quot;VALUE1&quot;&lt;br /&gt;
1&amp;nbsp;&amp;nbsp; ARRAY_FIELD2 &amp;nbsp; STR [0] &quot;VALUE2&quot;&lt;br /&gt;
...&lt;br /&gt;
...&lt;br /&gt;
...&lt;br /&gt;
xx&lt;br /&gt;
testnap&amp;gt;xop PCM_OP_WRITE_FLDS 32 1&lt;br /&gt;
0 PIN_FLD_POID&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; POID [0] 0.0.0.1 /some_class 1111&lt;br /&gt;
&lt;br /&gt;
For your reference, the value of PCM_OPFLG_ADD_ENTRY is 0x20 (hexadecimal) which is equal to 32 in decimal. &lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://billingandrevenuemanagement.blogspot.com/feeds/2911313152796674474/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2011/03/adding-new-element-in-storable-class.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/2911313152796674474'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/2911313152796674474'/><link rel='alternate' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2011/03/adding-new-element-in-storable-class.html' title='Adding new element in a storable class'/><author><name>Sachid</name><uri>http://www.blogger.com/profile/11822259414693161812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='27' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi3UalPnC1ZfHS6sIfVj6G1Rcme1JLvWa4eyGbwuQAYcDMmr9x5yx2uedvWVYMeFvDi1V50jZtph7LvUiNUKKxlio2_HnGARW876om1AkeiMrgZy6XL-agr5sbw2dwmivM/s97/sketched_small.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8317612857393390481.post-7194270317773568518</id><published>2011-03-02T08:40:00.000-08:00</published><updated>2011-03-02T20:18:49.304-08:00</updated><title type='text'>Billing Applications vs Billing Opcodes</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;span style=&quot;font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif;&quot;&gt;&lt;u&gt;Here is a rare mapping between the Billing Applications and Billing Opcodes :&lt;/u&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;table border=&quot;0&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; style=&quot;border-collapse: collapse; width: 530px;&quot;&gt;&lt;colgroup&gt;&lt;col style=&quot;width: 191pt;&quot; width=&quot;254&quot;&gt;&lt;/col&gt;&lt;col style=&quot;width: 289pt;&quot; width=&quot;385&quot;&gt;&lt;/col&gt;&lt;/colgroup&gt;&lt;tbody&gt;
&lt;tr height=&quot;32&quot; style=&quot;height: 24pt;&quot;&gt;&lt;td class=&quot;xl65&quot; dir=&quot;ltr&quot; height=&quot;32&quot; style=&quot;background-color: transparent; border: 1pt solid rgb(204, 51, 0); height: 24pt; width: 191pt;&quot; width=&quot;254&quot;&gt;&lt;u&gt;&lt;span style=&quot;color: #4f6228; font-family: Arial; font-size: large;&quot;&gt;&lt;b&gt;Billing Applications&lt;/b&gt;&lt;/span&gt;&lt;/u&gt;&lt;/td&gt;&lt;td class=&quot;xl65&quot; dir=&quot;ltr&quot; style=&quot;background-color: transparent; border-color: rgb(204, 51, 0); border-style: solid solid solid none; border-width: 1pt 1pt 1pt medium; width: 289pt;&quot; width=&quot;385&quot;&gt;&lt;u&gt;&lt;span style=&quot;color: #4f6228; font-family: Arial; font-size: large;&quot;&gt;&lt;b&gt;Billing Opcodes&lt;/b&gt;&lt;/span&gt;&lt;/u&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;25&quot; style=&quot;height: 18.75pt;&quot;&gt;&lt;td class=&quot;xl66&quot; dir=&quot;ltr&quot; height=&quot;25&quot; style=&quot;background-color: transparent; border-color: rgb(204, 51, 0); border-style: none solid solid; border-width: medium 1pt 1pt; height: 18.75pt; width: 191pt;&quot; width=&quot;254&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #000078;&quot;&gt;&lt;span style=&quot;font-family: Arial;&quot;&gt;pin_deferred_act&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;&lt;td class=&quot;xl70&quot; dir=&quot;ltr&quot; style=&quot;background-color: transparent; border-color: rgb(204, 51, 0); border-style: none solid solid none; border-width: medium 1pt 1pt medium; width: 289pt;&quot; width=&quot;385&quot;&gt;&lt;span style=&quot;font-family: Arial;&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #000078;&quot;&gt;PCM_OP_ACT_SCHEDULE_EXECUTE&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;25&quot; style=&quot;height: 18.75pt;&quot;&gt;&lt;td class=&quot;xl66&quot; dir=&quot;ltr&quot; height=&quot;25&quot; style=&quot;background-color: transparent; border-color: rgb(204, 51, 0); border-style: none solid solid; border-width: medium 1pt 1pt; height: 18.75pt; width: 191pt;&quot; width=&quot;254&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;&lt;span style=&quot;color: #000078;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Arial;&quot;&gt;pin_bill_accts&amp;nbsp;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td class=&quot;xl70&quot; dir=&quot;ltr&quot; style=&quot;background-color: transparent; border-color: rgb(204, 51, 0); border-style: none solid solid none; border-width: medium 1pt 1pt medium; width: 289pt;&quot; width=&quot;385&quot;&gt;&lt;span style=&quot;color: #000078; font-family: Arial;&quot;&gt;&lt;b&gt;PCM_OP_BILL_MAKE_BILL&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;21&quot; style=&quot;height: 15.75pt;&quot;&gt;&lt;td class=&quot;xl67&quot; dir=&quot;ltr&quot; height=&quot;64&quot; rowspan=&quot;3&quot; style=&quot;background-color: transparent; border-color: rgb(204, 51, 0); border-style: none solid solid; border-width: medium 1pt 1pt; height: 48pt; width: 191pt;&quot; width=&quot;254&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;&lt;span style=&quot;color: #000078;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Arial;&quot;&gt;pin_cycle_fees&amp;nbsp;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td class=&quot;xl71&quot; dir=&quot;ltr&quot; style=&quot;background-color: transparent; border-color: rgb(204, 51, 0) rgb(204, 51, 0) rgb(240, 240, 240); border-style: none solid none none; border-width: medium 1pt medium medium; width: 289pt;&quot; width=&quot;385&quot;&gt;&lt;span style=&quot;color: #000078; font-family: Arial;&quot;&gt;&lt;b&gt;PCM_OP_SUBSCRIPTION_CYCLE_FORWARD&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;21&quot; style=&quot;height: 15.75pt;&quot;&gt;&lt;td class=&quot;xl72&quot; dir=&quot;ltr&quot; height=&quot;21&quot; style=&quot;background-color: transparent; border-color: rgb(240, 240, 240) rgb(204, 51, 0); border-style: none solid none none; border-width: medium 1pt medium medium; height: 15.75pt; width: 289pt;&quot; width=&quot;385&quot;&gt;&lt;span style=&quot;color: #000078; font-family: Arial;&quot;&gt;&lt;b&gt;PCM_OP_&lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;color: #000078; font-family: Arial;&quot;&gt;&lt;b&gt;SUBSCRIPTION&lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;color: #000078; font-family: Arial;&quot;&gt;&lt;b&gt;_PURCHASE_FEES&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;22&quot; style=&quot;height: 16.5pt;&quot;&gt;&lt;td class=&quot;xl73&quot; dir=&quot;ltr&quot; height=&quot;22&quot; style=&quot;background-color: transparent; border-color: rgb(240, 240, 240) rgb(204, 51, 0) rgb(204, 51, 0); border-style: none solid solid none; border-width: medium 1pt 1pt medium; height: 16.5pt; width: 289pt;&quot; width=&quot;385&quot;&gt;&lt;span style=&quot;color: #000078; font-family: Arial;&quot;&gt;&lt;b&gt;PCM_OP_&lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;color: #000078; font-family: Arial;&quot;&gt;&lt;b&gt;SUBSCRIPTION&lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;color: #000078; font-family: Arial;&quot;&gt;&lt;b&gt;_CANCEL_PRODUCT&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;21&quot; style=&quot;height: 15.75pt;&quot;&gt;&lt;td class=&quot;xl67&quot; dir=&quot;ltr&quot; height=&quot;62&quot; rowspan=&quot;3&quot; style=&quot;background-color: transparent; border-color: rgb(204, 51, 0); border-style: none solid solid; border-width: medium 1pt 1pt; height: 46.5pt; width: 191pt;&quot; width=&quot;254&quot;&gt;&lt;span style=&quot;color: #000078; font-family: Arial; font-size: large;&quot;&gt;&lt;b&gt;pin_collect&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;&lt;td class=&quot;xl71&quot; dir=&quot;ltr&quot; style=&quot;background-color: transparent; border-color: rgb(204, 51, 0) rgb(204, 51, 0) rgb(240, 240, 240); border-style: none solid none none; border-width: medium 1pt medium medium; width: 289pt;&quot; width=&quot;385&quot;&gt;&lt;span style=&quot;color: #000078; font-family: Arial;&quot;&gt;&lt;b&gt;PCM_OP_PYMT_COLLECT&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;20&quot; style=&quot;height: 15pt;&quot;&gt;&lt;td class=&quot;xl74&quot; dir=&quot;ltr&quot; height=&quot;20&quot; style=&quot;background-color: transparent; border-color: rgb(240, 240, 240) rgb(204, 51, 0); border-style: none solid none none; border-width: medium 1pt medium medium; height: 15pt; width: 289pt;&quot; width=&quot;385&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Arial;&quot;&gt;PCM_OP_PYMT_CHARGE_CC&amp;nbsp;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;21&quot; style=&quot;height: 15.75pt;&quot;&gt;&lt;td class=&quot;xl75&quot; dir=&quot;ltr&quot; height=&quot;21&quot; style=&quot;background-color: transparent; border-color: rgb(240, 240, 240) rgb(204, 51, 0) rgb(204, 51, 0); border-style: none solid solid none; border-width: medium 1pt 1pt medium; height: 15.75pt; width: 289pt;&quot; width=&quot;385&quot;&gt;&lt;span style=&quot;color: blue; font-family: Arial; font-size: x-small;&quot;&gt;&lt;b&gt;PCM_OP_PYMT_CHARGE_DD&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;21&quot; style=&quot;height: 15.75pt;&quot;&gt;&lt;td class=&quot;xl67&quot; dir=&quot;ltr&quot; height=&quot;62&quot; rowspan=&quot;3&quot; style=&quot;background-color: transparent; border-color: rgb(204, 51, 0); border-style: none solid solid; border-width: medium 1pt 1pt; height: 46.5pt; width: 191pt;&quot; width=&quot;254&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;&lt;span style=&quot;color: #000078;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Arial;&quot;&gt;pin_refund&amp;nbsp;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td class=&quot;xl71&quot; dir=&quot;ltr&quot; style=&quot;background-color: transparent; border-color: rgb(204, 51, 0) rgb(204, 51, 0) rgb(240, 240, 240); border-style: none solid none none; border-width: medium 1pt medium medium; width: 289pt;&quot; width=&quot;385&quot;&gt;&lt;span style=&quot;color: #000078; font-family: Arial;&quot;&gt;&lt;b&gt;PCM_OP_PYMT_COLLECT&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;20&quot; style=&quot;height: 15pt;&quot;&gt;&lt;td class=&quot;xl74&quot; dir=&quot;ltr&quot; height=&quot;20&quot; style=&quot;background-color: transparent; border-color: rgb(240, 240, 240) rgb(204, 51, 0); border-style: none solid none none; border-width: medium 1pt medium medium; height: 15pt; width: 289pt;&quot; width=&quot;385&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Arial;&quot;&gt;PCM_OP_PYMT_CHARGE_CC&amp;nbsp;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;21&quot; style=&quot;height: 15.75pt;&quot;&gt;&lt;td class=&quot;xl75&quot; dir=&quot;ltr&quot; height=&quot;21&quot; style=&quot;background-color: transparent; border-color: rgb(240, 240, 240) rgb(204, 51, 0) rgb(204, 51, 0); border-style: none solid solid none; border-width: medium 1pt 1pt medium; height: 15.75pt; width: 289pt;&quot; width=&quot;385&quot;&gt;&lt;span style=&quot;color: blue; font-family: Arial; font-size: x-small;&quot;&gt;&lt;b&gt;PCM_OP_&lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Arial;&quot;&gt;PYMT&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: blue; font-family: Arial; font-size: x-small;&quot;&gt;&lt;b&gt;_CHARGE_DD&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;21&quot; style=&quot;height: 15.75pt;&quot;&gt;&lt;td class=&quot;xl67&quot; dir=&quot;ltr&quot; height=&quot;62&quot; rowspan=&quot;3&quot; style=&quot;background-color: transparent; border-color: rgb(204, 51, 0); border-style: none solid solid; border-width: medium 1pt 1pt; height: 46.5pt; width: 191pt;&quot; width=&quot;254&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;&lt;span style=&quot;color: #000078;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Arial;&quot;&gt;pin_deposit&amp;nbsp;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;td class=&quot;xl71&quot; dir=&quot;ltr&quot; style=&quot;background-color: transparent; border-color: rgb(204, 51, 0) rgb(204, 51, 0) rgb(240, 240, 240); border-style: none solid none none; border-width: medium 1pt medium medium; width: 289pt;&quot; width=&quot;385&quot;&gt;&lt;span style=&quot;color: #000078; font-family: Arial;&quot;&gt;&lt;b&gt;PCM_OP_PYMT_COLLECT&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;20&quot; style=&quot;height: 15pt;&quot;&gt;&lt;td class=&quot;xl74&quot; dir=&quot;ltr&quot; height=&quot;20&quot; style=&quot;background-color: transparent; border-color: rgb(240, 240, 240) rgb(204, 51, 0); border-style: none solid none none; border-width: medium 1pt medium medium; height: 15pt; width: 289pt;&quot; width=&quot;385&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Arial;&quot;&gt;PCM_OP_&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Arial;&quot;&gt;PYMT&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Arial;&quot;&gt;_CHARGE_CC&amp;nbsp;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;21&quot; style=&quot;height: 15.75pt;&quot;&gt;&lt;td class=&quot;xl75&quot; dir=&quot;ltr&quot; height=&quot;21&quot; style=&quot;background-color: transparent; border-color: rgb(240, 240, 240) rgb(204, 51, 0) rgb(204, 51, 0); border-style: none solid solid none; border-width: medium 1pt 1pt medium; height: 15.75pt; width: 289pt;&quot; width=&quot;385&quot;&gt;&lt;span style=&quot;color: blue; font-family: Arial; font-size: x-small;&quot;&gt;&lt;b&gt;PCM_OP_&lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: Arial;&quot;&gt;PYMT&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: blue; font-family: Arial; font-size: x-small;&quot;&gt;&lt;b&gt;_CHARGE_DD&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;21&quot; style=&quot;height: 15.75pt;&quot;&gt;&lt;td class=&quot;xl67&quot; dir=&quot;ltr&quot; height=&quot;63&quot; rowspan=&quot;3&quot; style=&quot;background-color: transparent; border-color: rgb(204, 51, 0); border-style: none solid solid; border-width: medium 1pt 1pt; height: 47.25pt; width: 191pt;&quot; width=&quot;254&quot;&gt;&lt;span style=&quot;color: #000078; font-family: Arial; font-size: large;&quot;&gt;&lt;b&gt;pin_inv_accts&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;&lt;td class=&quot;xl71&quot; dir=&quot;ltr&quot; style=&quot;background-color: transparent; border-color: rgb(204, 51, 0) rgb(204, 51, 0) rgb(240, 240, 240); border-style: none solid none none; border-width: medium 1pt medium medium; width: 289pt;&quot; width=&quot;385&quot;&gt;&lt;span style=&quot;color: #000078; font-family: Arial;&quot;&gt;&lt;b&gt;PCM_OP_INV_MAKE_INVOICE&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;21&quot; style=&quot;height: 15.75pt;&quot;&gt;&lt;td class=&quot;xl72&quot; dir=&quot;ltr&quot; height=&quot;21&quot; style=&quot;background-color: transparent; border-color: rgb(240, 240, 240) rgb(204, 51, 0); border-style: none solid none none; border-width: medium 1pt medium medium; height: 15.75pt; width: 289pt;&quot; width=&quot;385&quot;&gt;&lt;span style=&quot;color: #000078; font-family: Arial;&quot;&gt;&lt;b&gt;PCM_OP_INV_VIEW_INVOICE&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr height=&quot;21&quot; style=&quot;height: 15.75pt;&quot;&gt;&lt;td class=&quot;xl75&quot; dir=&quot;ltr&quot; height=&quot;21&quot; style=&quot;background-color: transparent; border-color: rgb(240, 240, 240) rgb(204, 51, 0) rgb(204, 51, 0); border-style: none solid solid none; border-width: medium 1pt 1pt medium; height: 15.75pt; width: 289pt;&quot; width=&quot;385&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;font-family: Arial;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;&amp;nbsp;PCM_OP_INV_POL_FORMAT_VIEW_INVOICE&lt;/span&gt;&lt;span class=&quot;font7&quot; style=&quot;color: #000078;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;
&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://billingandrevenuemanagement.blogspot.com/feeds/7194270317773568518/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2011/03/billing-applications-vs-billing-opcodes.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/7194270317773568518'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/7194270317773568518'/><link rel='alternate' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2011/03/billing-applications-vs-billing-opcodes.html' title='Billing Applications vs Billing Opcodes'/><author><name>Sachid</name><uri>http://www.blogger.com/profile/11822259414693161812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='27' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi3UalPnC1ZfHS6sIfVj6G1Rcme1JLvWa4eyGbwuQAYcDMmr9x5yx2uedvWVYMeFvDi1V50jZtph7LvUiNUKKxlio2_HnGARW876om1AkeiMrgZy6XL-agr5sbw2dwmivM/s97/sketched_small.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8317612857393390481.post-1389298961624821056</id><published>2011-02-24T11:55:00.000-08:00</published><updated>2011-02-24T11:55:20.778-08:00</updated><title type='text'>Partial (Short and Long) Accounting Cycles !</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;When the accounting cycle date is changed in the middle of an accounting cycle, the new date does not take effect until after the current accounting cycle is over. This results in a gap of time between the end of the old accounting cycle and the start of the new accounting cycle. &lt;/span&gt;&lt;a href=&quot;&quot; name=&quot;wp522118&quot;&gt;&lt;/a&gt;&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;For example, for a 30-day month, if the current accounting cycle ends on the 15th and the new cycle starts on the 1st, there is a gap of 15 days between the end of the old cycle and the start of the new cycle. &lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;&lt;b&gt;Short Accounting Cycle&lt;/b&gt; &lt;/span&gt;&lt;br /&gt;
By default, the BRM system treats extra days,between the old and new accounting cycle, of 15 days as a short, but complete accounting cycle. At the end of that &lt;span style=&quot;font-style: italic;&quot;&gt;short cycle&lt;/span&gt;, the accounting cycle resumes its normal monthly cycle. &lt;br /&gt;
&lt;a href=&quot;&quot; name=&quot;wp522119&quot;&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjAbEJbowSv9ahg961y_6_udTfg2uyw3uk4bF9bb9ifrJNF_Jjk9WYfTMHOs99IyYFN_U0tkkWavpo0z_rHioepM_BA_S7iVYqQRCsDi4aWXcqvGLZtLKCirRmZGZEkNIeEItoSYI3vTdgX/s1600/short_cycle.gif&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; l6=&quot;true&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjAbEJbowSv9ahg961y_6_udTfg2uyw3uk4bF9bb9ifrJNF_Jjk9WYfTMHOs99IyYFN_U0tkkWavpo0z_rHioepM_BA_S7iVYqQRCsDi4aWXcqvGLZtLKCirRmZGZEkNIeEItoSYI3vTdgX/s1600/short_cycle.gif&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;a href=&quot;&quot; name=&quot;wp522123&quot;&gt;&lt;/a&gt;&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div align=&quot;left&quot;&gt;&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;a href=&quot;&quot; name=&quot;wp522124&quot;&gt;&lt;/a&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;&lt;strong&gt;Long Accounting Cycle&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;If the short cycle is less than 15 days, a &lt;em&gt;long cycle&lt;/em&gt; is created instead. In that case, the extra days are added to the next one-month accounting cycle. This results in a long cycle with the start date of the old cycle and the end date of the new cycle. &lt;/span&gt;&lt;br /&gt;
&lt;a href=&quot;&quot; name=&quot;wp522125&quot;&gt;&lt;/a&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgRiGK4DyB2c0ol03DyycVhBhMHYZ5iPUTO4vc4o7zC5nOCazeah_31nv7uEm44KVuaCosw1VI9j4bERYAa8s74B1nkBju4_Kg9e0-_v6ujEoxIz6Im49VWrYTH1sfiK-WX6UshpjSsY9iR/s1600/long_cycle.gif&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; l6=&quot;true&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgRiGK4DyB2c0ol03DyycVhBhMHYZ5iPUTO4vc4o7zC5nOCazeah_31nv7uEm44KVuaCosw1VI9j4bERYAa8s74B1nkBju4_Kg9e0-_v6ujEoxIz6Im49VWrYTH1sfiK-WX6UshpjSsY9iR/s1600/long_cycle.gif&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div align=&quot;left&quot;&gt;&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div align=&quot;left&quot;&gt;&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;Monthly charges are prorated for accounting cycles less than or greater than one month. &lt;/span&gt;&lt;/div&gt;&lt;a href=&quot;&quot; name=&quot;wp522131&quot;&gt;&lt;/a&gt;&lt;h3&gt;&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;&lt;u&gt;Short and long cycles with new accounts &lt;/u&gt;&lt;/span&gt;&lt;/h3&gt;&lt;a href=&quot;&quot; name=&quot;wp522132&quot;&gt;&lt;/a&gt;&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;A short or long cycle can also occur when a customer registers and the billing DOM is different from the day of month when they register. For example, your company might require that all customers be billed on the first day of the month. If a customer registers on January 26, by default the first bill is created on March 1. To bill the customer on February 1, you need to change the default partial billing cycle to short. &lt;/span&gt;&lt;br /&gt;
&lt;a href=&quot;&quot; name=&quot;wp522133&quot;&gt;&lt;/a&gt;&lt;h3&gt;&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;&lt;u&gt;How BRM calculates long billing cycles &lt;/u&gt;&lt;/span&gt;&lt;/h3&gt;&lt;a href=&quot;&quot; name=&quot;wp522134&quot;&gt;&lt;/a&gt;&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;By default, BRM uses the following formula to calculate long billing cycles: &lt;/span&gt;&lt;br /&gt;
&lt;a href=&quot;&quot; name=&quot;wp522135&quot;&gt;&lt;/a&gt;&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;Use a short cycle unless one of the following is true: &lt;/span&gt;&lt;br /&gt;
&lt;ul&gt;&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;&lt;/span&gt;
&lt;li&gt;&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;Future billing day of month &amp;gt; current billing day of month&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; AND&lt;br /&gt;
(Future billing day of month - current billing day of month) &amp;lt; 15 &lt;/span&gt;&lt;/li&gt;
&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;&lt;/span&gt;
&lt;li&gt;&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;Future billing day of month &amp;lt; current billing day of month&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; AND&lt;br /&gt;
(Current billing day of month - future billing day of month) &amp;gt; 15 &lt;/span&gt;&lt;/li&gt;
&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;&lt;/span&gt;&lt;/ul&gt;&lt;a href=&quot;&quot; name=&quot;wp522138&quot;&gt;&lt;/a&gt;&lt;h4&gt;&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;Examples: &lt;/span&gt;&lt;/h4&gt;&lt;ul&gt;&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;&lt;/span&gt;
&lt;li&gt;&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;If the current billing DOM is 1 and the future billing DOM is 10: &lt;/span&gt;&lt;/li&gt;
&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;&lt;/span&gt;&lt;/ul&gt;&lt;ul&gt;&lt;a href=&quot;&quot; name=&quot;wp522140&quot;&gt;&lt;/a&gt;&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;10 &amp;gt; 1
10 - 1 = 9
Use a long cycle. &lt;/span&gt;

&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhUPZrR2EKLkcinsJiqlCJMGj2G1Ca6TBryPbRYjJG8j5hsrAcEiuoyNaN23gl6V2OMVz9Ucjg_i2I7DmEu1NUC-B9CWX7Vdl1-Dd5TxvtrAoY8BnEIh8jA7toQAcDcUNpvxvE6jWgJvgBb/s1600/ex1.gif&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; l6=&quot;true&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhUPZrR2EKLkcinsJiqlCJMGj2G1Ca6TBryPbRYjJG8j5hsrAcEiuoyNaN23gl6V2OMVz9Ucjg_i2I7DmEu1NUC-B9CWX7Vdl1-Dd5TxvtrAoY8BnEIh8jA7toQAcDcUNpvxvE6jWgJvgBb/s1600/ex1.gif&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align=&quot;left&quot;&gt;&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;&lt;/span&gt;&lt;/ul&gt;&lt;ul&gt;&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;&lt;/span&gt;
&lt;li&gt;&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;If the current billing DOM is 1 and the future billing DOM is 20: &lt;/span&gt;&lt;/li&gt;
&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;&lt;/span&gt;&lt;/ul&gt;&lt;ul&gt;&lt;a href=&quot;&quot; name=&quot;wp522146&quot;&gt;&lt;/a&gt;&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;20 &amp;gt; 1
20 - 1 = 19
Use a short cycle. &lt;/span&gt;
&lt;a href=&quot;&quot; name=&quot;wp522150&quot;&gt;&lt;/a&gt;&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;&lt;/span&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjI4rM0jA73c4EVfD1AFZlHXwCLFIAmjxWbX4YVMtSoszH1RhJJljKiIOwbIiqwq1_mdbrw4c9fmkA-eo-9b07CMBMlsBcwyybJWKhdDYjETCCJAAnub9u-mGmrvKSzR8GL-MVyG3l7PUU5/s1600/ex2.gif&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; l6=&quot;true&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjI4rM0jA73c4EVfD1AFZlHXwCLFIAmjxWbX4YVMtSoszH1RhJJljKiIOwbIiqwq1_mdbrw4c9fmkA-eo-9b07CMBMlsBcwyybJWKhdDYjETCCJAAnub9u-mGmrvKSzR8GL-MVyG3l7PUU5/s1600/ex2.gif&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align=&quot;left&quot;&gt;&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;/div&gt;&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;&lt;/span&gt;&lt;/ul&gt;&lt;ul&gt;&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;&lt;/span&gt;
&lt;li&gt;&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;If the current billing DOM is 10 and the future billing DOM is 1: &lt;/span&gt;&lt;/li&gt;
&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;&lt;/span&gt;&lt;/ul&gt;&lt;ul&gt;&lt;a href=&quot;&quot; name=&quot;wp522152&quot;&gt;&lt;/a&gt;&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;1 &amp;lt; 10
10 - 1 = 9
Use a short cycle. &lt;/span&gt;
&lt;a href=&quot;&quot; name=&quot;wp522156&quot;&gt;&lt;/a&gt;&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;&lt;/span&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhX4Qx3xC7C1taPlj5GV60Tth-YyW8f389A5t81QWOmDX8so_QcLRFBHgcpNJclnLVcCivRADdCUf5X9XTJEHyk1v2lEFUDXvdFWGi-Z6JvJEFqUZUMwAnREieAJev6p_qbGMumDgiR_Vk7/s1600/ex3.gif&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; l6=&quot;true&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhX4Qx3xC7C1taPlj5GV60Tth-YyW8f389A5t81QWOmDX8so_QcLRFBHgcpNJclnLVcCivRADdCUf5X9XTJEHyk1v2lEFUDXvdFWGi-Z6JvJEFqUZUMwAnREieAJev6p_qbGMumDgiR_Vk7/s1600/ex3.gif&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align=&quot;left&quot;&gt;&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;/div&gt;&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;&lt;/span&gt;&lt;/ul&gt;&lt;ul&gt;&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;&lt;/span&gt;
&lt;li&gt;&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;If the current billing DOM is 20 and the future billing DOM is 1: &lt;/span&gt;&lt;/li&gt;
&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;&lt;/span&gt;&lt;/ul&gt;&lt;ul&gt;&lt;a href=&quot;&quot; name=&quot;wp522158&quot;&gt;&lt;/a&gt;&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;1 &amp;lt; 20
20 - 1 = 19
Use a long cycle. &lt;/span&gt;
&lt;a href=&quot;&quot; name=&quot;wp522162&quot;&gt;&lt;/a&gt;&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;&lt;/span&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhlntFQKjIa9rO_v91vABhImJLYsxKiFfbODUyfacm6M8pJ-UtG0aQiG3ex0xPe_IGk2yDRXxIUch03JoqLbx4kgVDLfTakXBniNStcw87wu3R88CeCzr33ZLMg0BVmJy9Hjchnx5T8wIdY/s1600/ex4.gif&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; l6=&quot;true&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhlntFQKjIa9rO_v91vABhImJLYsxKiFfbODUyfacm6M8pJ-UtG0aQiG3ex0xPe_IGk2yDRXxIUch03JoqLbx4kgVDLfTakXBniNStcw87wu3R88CeCzr33ZLMg0BVmJy9Hjchnx5T8wIdY/s1600/ex4.gif&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align=&quot;left&quot;&gt;&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;/div&gt;&lt;/ul&gt;&lt;/span&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://billingandrevenuemanagement.blogspot.com/feeds/1389298961624821056/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2011/02/partial-short-and-long-accounting.html#comment-form' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/1389298961624821056'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/1389298961624821056'/><link rel='alternate' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2011/02/partial-short-and-long-accounting.html' title='Partial (Short and Long) Accounting Cycles !'/><author><name>Sachid</name><uri>http://www.blogger.com/profile/11822259414693161812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='27' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi3UalPnC1ZfHS6sIfVj6G1Rcme1JLvWa4eyGbwuQAYcDMmr9x5yx2uedvWVYMeFvDi1V50jZtph7LvUiNUKKxlio2_HnGARW876om1AkeiMrgZy6XL-agr5sbw2dwmivM/s97/sketched_small.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjAbEJbowSv9ahg961y_6_udTfg2uyw3uk4bF9bb9ifrJNF_Jjk9WYfTMHOs99IyYFN_U0tkkWavpo0z_rHioepM_BA_S7iVYqQRCsDi4aWXcqvGLZtLKCirRmZGZEkNIeEItoSYI3vTdgX/s72-c/short_cycle.gif" height="72" width="72"/><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8317612857393390481.post-816110751387271802</id><published>2011-02-24T02:45:00.000-08:00</published><updated>2014-11-19T04:18:37.648-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="BRM pipeline"/><category scheme="http://www.blogger.com/atom/ns#" term="Oracle BRM  new service"/><category scheme="http://www.blogger.com/atom/ns#" term="Oracle BRM architect"/><category scheme="http://www.blogger.com/atom/ns#" term="Oracle BRM documentation"/><category scheme="http://www.blogger.com/atom/ns#" term="Oracle BRM expert"/><category scheme="http://www.blogger.com/atom/ns#" term="Oracle BRM pipeline"/><category scheme="http://www.blogger.com/atom/ns#" term="Oracle BRM RODOD implementation"/><category scheme="http://www.blogger.com/atom/ns#" term="Oracle BRM service CDMA"/><category scheme="http://www.blogger.com/atom/ns#" term="service implmentation"/><title type='text'>Implementing a new service (CDMA) in BRM</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEigfglxzi6UL5QOjQXILJ0VzCxWcgtepByqBcYu_kJC9c40_jyDV7QSCwgJw2-UvOqhpXiShJQvajXrgpOOevBxUn3uCYnPksrizn2cvoqr9Lu4ehpj0nPmhMxulQatbcbFXTpCNVEDLIOs/s1600/1.JPG&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEigfglxzi6UL5QOjQXILJ0VzCxWcgtepByqBcYu_kJC9c40_jyDV7QSCwgJw2-UvOqhpXiShJQvajXrgpOOevBxUn3uCYnPksrizn2cvoqr9Lu4ehpj0nPmhMxulQatbcbFXTpCNVEDLIOs/s1600/1.JPG&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhqln6RYdp_eB_Ao8MqQDPTF2hCJQf5Vir2YLO22yB-hc_n7RoAz0kKCnjasx3hvsRA9gY2Juqf7_SqN2Lr5yfsAGRZX7AvgVGHGC91u1XIih2CoWVzPaeK15FfZLgfqhUVzQNG0AMOWWCy/s1600/2.JPG&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhqln6RYdp_eB_Ao8MqQDPTF2hCJQf5Vir2YLO22yB-hc_n7RoAz0kKCnjasx3hvsRA9gY2Juqf7_SqN2Lr5yfsAGRZX7AvgVGHGC91u1XIih2CoWVzPaeK15FfZLgfqhUVzQNG0AMOWWCy/s1600/2.JPG&quot; /&gt;&lt;/a&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh08UX3O50T9HZ1Pw6PXpMrmuBhN-wlagoyzUMcMpZCwloAOC-SUThlwkbhUAu0bbkHWttlEANo2XnaD1BACT4wOp-uNX2s0OR1dOVvjSp5KHNoLG8sIdmAUArpgTZCff7PiBjJdyfsFeor/s1600/3.JPG&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh08UX3O50T9HZ1Pw6PXpMrmuBhN-wlagoyzUMcMpZCwloAOC-SUThlwkbhUAu0bbkHWttlEANo2XnaD1BACT4wOp-uNX2s0OR1dOVvjSp5KHNoLG8sIdmAUArpgTZCff7PiBjJdyfsFeor/s1600/3.JPG&quot; /&gt;&lt;/a&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhnyE-qtBgOUmtQTBG_WesQ1yq7nzqmu-YeysDhNoZselCcGskbq7-83PF6oF4eP9eE53Yca-Km9ivYunSh5dllgjaTXf0bgqWPCR4a90wQvdqk5yII-KRjQSEZPG0Rxi15jmXNjHKY3Hq1/s1600/4.JPG&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhnyE-qtBgOUmtQTBG_WesQ1yq7nzqmu-YeysDhNoZselCcGskbq7-83PF6oF4eP9eE53Yca-Km9ivYunSh5dllgjaTXf0bgqWPCR4a90wQvdqk5yII-KRjQSEZPG0Rxi15jmXNjHKY3Hq1/s1600/4.JPG&quot; /&gt;&lt;/a&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgNvwp0RzAUWQG9I7Aa4VioXgZNeYHnDUc3lof0XoLvesYzTsLGpGFjXan9dKUVbhoLg0We1TEHpteEr-ohDvV-joOSkI_8ZVdG-eJV2MiqdBLvqhhMsoD8uK9Y5co3w7ekax1BNMpHyLXQ/s1600/5.JPG&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgNvwp0RzAUWQG9I7Aa4VioXgZNeYHnDUc3lof0XoLvesYzTsLGpGFjXan9dKUVbhoLg0We1TEHpteEr-ohDvV-joOSkI_8ZVdG-eJV2MiqdBLvqhhMsoD8uK9Y5co3w7ekax1BNMpHyLXQ/s1600/5.JPG&quot; /&gt;&lt;/a&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgkS1yhYdHpfVvykMMM0lJgAvcI3o2h5btAgnOtKAPurxrt1xxsxDPxzR3phMEVdGSrthfHvsYaLNIemS57Fl1TXwF-pEk0a93kwsUwciAWlZH7VNv8VHHJ7eR5EIkmjbwQn2nRxEGs8H9S/s1600/6.JPG&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgkS1yhYdHpfVvykMMM0lJgAvcI3o2h5btAgnOtKAPurxrt1xxsxDPxzR3phMEVdGSrthfHvsYaLNIemS57Fl1TXwF-pEk0a93kwsUwciAWlZH7VNv8VHHJ7eR5EIkmjbwQn2nRxEGs8H9S/s1600/6.JPG&quot; /&gt;&lt;/a&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi1XLwIhNUigcNbvu7QYkuvB8qoAnXESHuP17qzhu8ic6G3M2NCsng8d6ITLwFnKHe4dF1rN2EKwAQvuYZ-ukLv0uziFSZNLUcPLz0RUQXZxeL-79aZad64YllKwGzwiuAPHd5A_JtogQ87/s1600/7.JPG&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi1XLwIhNUigcNbvu7QYkuvB8qoAnXESHuP17qzhu8ic6G3M2NCsng8d6ITLwFnKHe4dF1rN2EKwAQvuYZ-ukLv0uziFSZNLUcPLz0RUQXZxeL-79aZad64YllKwGzwiuAPHd5A_JtogQ87/s1600/7.JPG&quot; /&gt;&lt;/a&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgzrPFK0wzyN1QW1ZxvY-Q2EZjfM2ZHeuQWdqDo0nsCLswoCl5R_FF_tXCslnK46e5E7zefapwSWVndPdaMzYtNv29H7QEiLUN2mxhtdTZCll87G22EMY-jQGBPV8jDXp76QKorTKOmMVVH/s1600/8.JPG&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgzrPFK0wzyN1QW1ZxvY-Q2EZjfM2ZHeuQWdqDo0nsCLswoCl5R_FF_tXCslnK46e5E7zefapwSWVndPdaMzYtNv29H7QEiLUN2mxhtdTZCll87G22EMY-jQGBPV8jDXp76QKorTKOmMVVH/s1600/8.JPG&quot; /&gt;&lt;/a&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEitfsjWbpHilyuSZVm8adiWQmDIMHm96R6rGYo9BCC95IoHk4IodOrnyGFxtqFQ76p3-Ca72eg-uwdJK-tJiqe9I5dEUP1rjHzDDSf_5at6dLT2v0FtYAi35wSa-BJiVFxXDZFWE2GzAxUo/s1600/9.JPG&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEitfsjWbpHilyuSZVm8adiWQmDIMHm96R6rGYo9BCC95IoHk4IodOrnyGFxtqFQ76p3-Ca72eg-uwdJK-tJiqe9I5dEUP1rjHzDDSf_5at6dLT2v0FtYAi35wSa-BJiVFxXDZFWE2GzAxUo/s1600/9.JPG&quot; /&gt;&lt;/a&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh9IjzGda16F2cw_UY4AGViAyI89KJPTXkiTg9SWbYNGYt91uxFxd2hGOlCUsLxwoGH3exT-UwabsWYlH9MITZXdgpM9zNsJygsXCMh5Ulr-1qdNrEV6qwZHC_3sNG23FM8LIUAoi-TPhcM/s1600/10.JPG&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh9IjzGda16F2cw_UY4AGViAyI89KJPTXkiTg9SWbYNGYt91uxFxd2hGOlCUsLxwoGH3exT-UwabsWYlH9MITZXdgpM9zNsJygsXCMh5Ulr-1qdNrEV6qwZHC_3sNG23FM8LIUAoi-TPhcM/s1600/10.JPG&quot; /&gt;&lt;/a&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjt4vUW-nlT0CFoLvzsEq_e7TRlKYqeE_hLGf0nNnD5ZLh9heMn2v123R3XzJHY5I-e6u7-4niVorPmda2RiqmJmy86BLUX7UakgJ8dQbhAgOMa_7I4o68GqpzokbVI6B1z7Jh22VDz0dLx/s1600/11.JPG&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjt4vUW-nlT0CFoLvzsEq_e7TRlKYqeE_hLGf0nNnD5ZLh9heMn2v123R3XzJHY5I-e6u7-4niVorPmda2RiqmJmy86BLUX7UakgJ8dQbhAgOMa_7I4o68GqpzokbVI6B1z7Jh22VDz0dLx/s1600/11.JPG&quot; /&gt;&lt;/a&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEizNZrzQQXmqRRVfClMC-d-VtzS7jChbtBeiL4weGP7rtf2OTakk-s9amlJqLD89RfN8vEPke9OBidtyYxJkkALF8_kg-1CCus0ZI1ZwEeJvki1gCnZbgvdVNECpq3uEAx2K4POVcPuydaD/s1600/12.JPG&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEizNZrzQQXmqRRVfClMC-d-VtzS7jChbtBeiL4weGP7rtf2OTakk-s9amlJqLD89RfN8vEPke9OBidtyYxJkkALF8_kg-1CCus0ZI1ZwEeJvki1gCnZbgvdVNECpq3uEAx2K4POVcPuydaD/s1600/12.JPG&quot; /&gt;&lt;/a&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://billingandrevenuemanagement.blogspot.com/feeds/816110751387271802/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2011/02/implementing-new-service-in-brm.html#comment-form' title='9 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/816110751387271802'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/816110751387271802'/><link rel='alternate' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2011/02/implementing-new-service-in-brm.html' title='Implementing a new service (CDMA) in BRM'/><author><name>Sachid</name><uri>http://www.blogger.com/profile/11822259414693161812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='27' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi3UalPnC1ZfHS6sIfVj6G1Rcme1JLvWa4eyGbwuQAYcDMmr9x5yx2uedvWVYMeFvDi1V50jZtph7LvUiNUKKxlio2_HnGARW876om1AkeiMrgZy6XL-agr5sbw2dwmivM/s97/sketched_small.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEigfglxzi6UL5QOjQXILJ0VzCxWcgtepByqBcYu_kJC9c40_jyDV7QSCwgJw2-UvOqhpXiShJQvajXrgpOOevBxUn3uCYnPksrizn2cvoqr9Lu4ehpj0nPmhMxulQatbcbFXTpCNVEDLIOs/s72-c/1.JPG" height="72" width="72"/><thr:total>9</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8317612857393390481.post-2927723739269570422</id><published>2011-02-23T23:49:00.000-08:00</published><updated>2011-02-23T23:49:48.519-08:00</updated><title type='text'>Invoice Number(Bill no) Formating</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;strong&gt;&lt;u&gt;&lt;span style=&quot;font-family: Georgia, &amp;quot;Times New Roman&amp;quot;, serif;&quot;&gt;Here I&#39;m presenting few guidelines to customize the invoice number format.&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
The out of the box format for the invoice number is :&lt;br /&gt;
&lt;span style=&quot;color: purple;&quot;&gt;&lt;u&gt;Default Invoice&amp;nbsp;:&lt;/u&gt; B1-BILLNO, e.g. B1-1234&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
We will take the case to customized Invoice number in the following format :&lt;br /&gt;
&lt;span style=&quot;color: purple;&quot;&gt;&lt;u&gt;Customized Invoice Number :&lt;/u&gt; [ACCOUNT_POID]-BILLNO, e.g. 0000098976-1234&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: purple;&quot;&gt;Where account_poid&amp;nbsp;= 98976&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;u&gt;For implementing the above change, we need to do the following steps :&lt;/u&gt;&lt;br /&gt;
1]. &lt;u&gt;&lt;strong&gt;Customize the policy opcode :&lt;/strong&gt;&lt;/u&gt; PCM_OP_BILL_POL_SPEC_BILLNO opcode needs modification to read sequence id(poid) from account object POID and replace B1 from default invoice number with the sequence id.&lt;br /&gt;
&amp;nbsp; To customize the PCM_OP_BILL_POL_SPEC_BILLNO, need to edit &lt;em&gt;fm_bill_pol_spec_billno()&lt;/em&gt;&amp;nbsp; function of &lt;em&gt;fm_bill_pol_spec_billno.c&lt;/em&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;&quot;&gt;fm_bill_pol_spec_billno(&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;&quot;&gt;{&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /*****************************************&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; * Set the BILL_NO field according to poid&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; *****************************************/&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; vp = PIN_FLIST_FLD_GET(b_flistp,PIN_FLD_BILL_NO,1,ebufp);&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if((vp == (void *)NULL || (strlen((char *)vp) &amp;lt;= 0)) { // START OF IF BLOCK&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;............ &lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ............ &lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; poid_db = PIN_POID_GET_DB(pdp); &lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; poid_id = PIN_POID_GET_ID(pdp); &lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; business_param_invoice_sequence_id_lt = psiu_bparams_get_int(ctxp, PSIU_BPARAMS_INVOICING_PARAMS,PSIU_BPARAMS_LENGHT_OF_SEQUENCE_ID,ebufp); &lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf(%s is the bill no&quot;, billno);&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sprintf(billno,&quot;%llu&quot;,poid_id);&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /*start sequence */&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PIN_ERR_LOG_MSG(PIN_ERR_LEVEL_DEBUG,&quot;--billno and poid--&quot;);&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PIN_ERR_LOG_MSG(PIN_ERR_LEVEL_DEBUG,billno);&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PIN_ERR_LOG_MSG(PIN_ERR_LEVEL_DEBUG,poid_id);&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PIN_FLIST_FLD_SET(b_flistp,PIN_FLD_BILL_NO,(void *)billno,ebufp);&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;&quot;&gt;&amp;nbsp;&amp;nbsp; }//END OF IF BLOCK&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;&quot;&gt;&amp;nbsp;&amp;nbsp; *out_flistpp = b_flistp;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace;&quot;&gt;}&lt;/span&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://billingandrevenuemanagement.blogspot.com/feeds/2927723739269570422/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2011/02/invoice-numberbill-no-formating.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/2927723739269570422'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8317612857393390481/posts/default/2927723739269570422'/><link rel='alternate' type='text/html' href='http://billingandrevenuemanagement.blogspot.com/2011/02/invoice-numberbill-no-formating.html' title='Invoice Number(Bill no) Formating'/><author><name>Sachid</name><uri>http://www.blogger.com/profile/11822259414693161812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='27' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi3UalPnC1ZfHS6sIfVj6G1Rcme1JLvWa4eyGbwuQAYcDMmr9x5yx2uedvWVYMeFvDi1V50jZtph7LvUiNUKKxlio2_HnGARW876om1AkeiMrgZy6XL-agr5sbw2dwmivM/s97/sketched_small.jpg'/></author><thr:total>2</thr:total></entry></feed>