View source | View content page | Page history | Printable version   

Projects:DEFINING SUB ACCT FOR BP PRODUCT/Functional Specifications

Contents

DEFINING A NEW ACCOUNT PER  BUSINESS PARTNER & PRODUCT

Purpose

The purpose of this project is to enhance OB ERP application to setup new sub-accounts for each type of Business Partner(Customer/Vendor) and Product. Nowadays the application associates the same account to every type of Business Partner and Product.

The below application path is used to get some of the defaults accounts mentioned above:

Financial Management || Accounting || Setup || Accounting Schema || Accounting Schema >> Defaults.

Accounting staff do not like the above behavior because they are used to use a different sub-accounts per each Customer or Vendor and Product in order to have accounting information detailed per each Business Partner (Customer or Vendor) or Product.

Scope

Existing Functionality

In the existing OB ERP application when we create a Product or a Business Partner depending on Business partner category, the system assigns default accounts to the newly created Business Partner(Customer or Vendor) or Product respectively.

The below steps explain the some of the default accounts only can found in the below application path.

Acccounting schema defaults.jpg

Default account for BP-Customer

     Master Data Management || Business Partner  ||  Business Partner  >>  Customer  >>  Customer Accounting 

BP Customer account.jpg

Default account for BP-Vendor

     Master Data Management || Business Partner  ||  Business Partner  >>  Vendor/Creditor  >>  Vendor Accounting 

Vendor accounting.jpg

Default account for Product

    Master Data Management || Product  ||  Product  >>  Accounting 

Default Product.jpg

New Implementation

The new requirement is to implement a new feature which will allow the user to configure the system to automatically create a separate account for every Business Partner (Customer / Vendor) and Product when these are created. This way the system will also create a clone of the account related to the corresponding category and will associate it to the newly created Business Partner and/or Product as applicable.The new sub accounts will be created for all accounts belongs to Business Partner and Product.

The below application path shows how to configure the separate account per Business Partner and Product.

General Setup || Enterprise || Organization || Organization >> Org Schema

In the below screen we can select/not select the option to create a new account for each Business Partner to be entered in the system and/or to create a new account for each Product to be entered in the system at a given point of time. In case none of the check-boxes showed below are selected, then newly created BP (Customer or Vendor) and Product will take the correspondent default accounts old way. This section details how system should work in the case both check-boxes are selected.

Org schema config.jpg

New account for BP-Customer

    Master Data Management || Business Partner  ||  Business Partner  >>  Customer  >>  Customer Accounting. 

New BP Customer.jpg

New account for BP-Vendor

    Master Data Management || Business Partner  ||  Business Partner  >>  Vendor/Creditor  >>  Vendor Accounting

New BP Vendor.jpg

New account for Product

   Master Data Management || Product  ||  Product  >>  Accounting 

New account Product.jpg

Setup

New Configuration


According to the new feature the system will allow the end user to create a new sub-account for every Business Partner category (Customer or Vendor) and Product by activating the appropriate check boxes which must be setup in the following path:
General Setup || Enterprise || Organization || Organization >> Org Schema


Org schema config.jpg


User can configure the application by following below detailed steps:

    Example:
       As per configure the above screen shot.
       Account Length=3
       Sub-Account Length=9 
       Generated Sequence number=000000
       default account number=4300
       
       The first 3 character will be picked from the default account number.
       The rest of the 6 (9-3)character will be picked from generated sequence number. 
       Result :
           430000000
      

See below screen which shows the result of the scenario explained above:

New BP Customer.jpg

In case of more than one "Org Schema" is setup within an organization, the configuration done at a higher level (organization will overwrite the configuration down at a lower level (organization).

Example:

Here "Main" organization type as "legal with accounting" and Child organization should be with type of "Generic" or "legal without accounting". Because these two types doest not deal with accounting schema.

1. Imagine we have a Matrix Organization called "Main" which has 3 dependent organization child :

In that case the Configuration done at a lower organization level (A,B and C) will be overwritten by the configuration done at a higher level (Main Organization).

Display Logic


When the user tries to configure the system to have a new sub-account for Business Partner(Customer or Vendor) and Product, the org schema has to display the logic for displaying the components on the UI. When a user selects the appropriate check box for creating a new account for Business Partner or Product or both on the Org Schema tab of Organization window, the related UI components must be displayed to allow the system to create a new sub-account based on the new fields added to the UI (Sequence Number, Account Length and Sub Account Length).

Sequence Number Generation


We need to generate a sequence number to create sub-account for Business Partner and Product respectively.

Creation of Sub-Account


The above sub account number is defined as by the first 3 characters picked from the Business Partner default account "Customer receivable" in case a user enters 3 as "Account length" value and rest of characters will be picked from the sequence number up to the value entered by the user in the field Sub-account length.
In this case 6 additional characters will be taken from the sequence number which means that the end user entered a value of 9 (9-3=6) in the field Sub-account length.

Example # 1


If case the default customer receivable account number is by example: 431865479321, the first 5 characters will be picked from that account in case a user enters 5 as "Account length" (431865), and rest of characters will be picked from the sequence number up to the value entered by the user in the field Sub-account length. In case the user enters 15, additional 10 characters will be taken from the sequence number (15-5=10); see below:

43186-0000000001

After creating the new element value for the account, then we have to fold it ( Place it properly in tree), then we have to create the valid combination for the newly created account, so that it can be displayed under Business Partner or Product accounting section.

Example # 2


Normally the length of the account number may have vary from country to country, place to place. But for understanding perspective, we are going to take only first 4 character of the correspondent default BP account number to explain more in detail.

Use cases

1. Default accounting details will be assigned to the Vendor/Customer in the existing system:

b) same scenario above applies to BP-vendor creation:

2. Default accounting details will be assigned to the Product in the existing system:

3. Newly created sub accounting details will be assigned to the Customer:

Create New Account for Business Partner: checked
Create New Account for Product:<optional> 
Sequence for Business Partner:"Sequence for BP sub account"
Sequence for Product:only needed in case create new account for product is checked.
Account Length:=  3
Sub Account Length: 9
Based on above setup the account number will be generated like below example:
Customer Receivables sub account number:430000000

Customer creation with sub account process is explained below:

4. Newly created sub accounting details will be assigned to the Vendor:

Create New Account for Business Partner: Checked 
Create New Account for Product:<optional>
Sequence for Business Partner:Sequence for sub account	 	
Sequence for Product:only needed in case create new account for product is checked.Sequence for sub account
Account Length:3
Sub Account Length: 9
The account number will be generated like below example:	
Vendor Liability sub account number:400000000


5. Newly created sub accounting details will be assigned to the Product:

Create New Account for Business Partner:<optional>  
Create New Account for Product:Checked
Sequence for Business Partner:<Select sequence>  	 	
Sequence for Product:a sequence previously created has to be selected
Account Length:3
Sub Account Length: 9
The account number will be generated like below example:
 Product Expense sub account number:600000000	
 Product Revenue sub account number:700000000
 

Master Data Management || Product || Product >> Accounting.


6. Search the newly created sub-account in Account Tree:

John has to Verify the newly created Customer receivables, Vendor liabilities, Product expense & Product revenue sub account details for Customer, Vendor and Product are appear in Financial Management || Accounting || Setup || Account Tree || Element >> Element Value

a) Customer :

b) Vendor :

(Vendor liabilities) in the search key field.

c) Product :



7. Application of new sub-account in Transaction (Sales invoice):

In case this new feature is activated by John and therefore new sub-account have been created for the new customer (see use case 3) and the new product (see use case 5) just entered in the system, those new sub-account must be used in case of posting a sales invoice for that particular customer.

For more details see steps below:

Steps to create Sales Invoice :

John has to create a sales invoice first then he needs to create a Sales order then complete a goods shipment for the sales order and then create invoice for the above created Sales order.

    Create Sales Order:
     * Go to Sales management->Transactions->Sales Order
     * Click New and select Transaction Document: Standard Order
     * Select any valid business partner.Test_Cust
     * Move to tab Lines and click New.
     * Select a product : Test_Prod 
     * Move to header and complete.
      

Steps to create a Shipment:

     * Go to Sales management->Transactions->Create shipments from orders
     * Select the sales order and click process

Steps to create Sales invoice

     * Go to Sales management->Transactions->Sales invoice
     * Click New select Transaction Document: AR Invoice
     * Select the same business partner which we used in Sales order <Test_Cust>
     
     * Click on button 'Create lines from' and verify:
         o Business partner: Test_Cust
         o In the "Order" combo box must be the sales order
         o In the "Shipment" combo box must be the good receipt
     * Select the sales order and click OK
     * Move to Lines tab and verify the respective line is added
     * Go back to Header and click Complete button
     * Click the Post button and verify the newly created customer Receivables account(430000000) is debited 
and created product Revenue account(700000000) is credited. 

8. Application of new sub-account in Transaction (Purchase Invoice):

In case this new feature is activated by John and therefore new sub-account have been created for the new customer (see use case 4) and the new product (see use case 5) just entered in the system, those new sub-account must be used in case of posting a Purchase invoice for that particular product.

John has to create Purchase Invoice in the below steps:

   Steps to create Purchase order:
   * Go to Procurement management->Transactions->Purchase Order
   * Click New and select the BP
   * Click on the BP icon and select the Test_vend
   * Move to tab Lines and click New. And select the product Test_Prod
   * Fill in Ordered quantity= 1
   * Move to header and complete. 
 Steps to create Good receipts        
   * Go to Procurement management->Transactions->Goods receipt
   * Click new and select Test_Vend A as a business partner. Save
   * Click on button 'Create lines from' and verify:
         o Business partner: Test_vend
         o In the "Order" combo box you will find the above created purchase order
   * Select the purchase order
   * Select a warehouse position
   * Select the purchase order line
   * Click OK
   * Move to Lines
   * Click on Attribute set value icon and fill the values and click OK
   * Go back to header and Complete
Steps to create Purchase invoice:
 
   * Go to Procurement management->Transactions->Purchase invoice
   * Click New and select Transaction Document= AP Invoice
   * Select the business partner : Test_Vend 
   * Click on button 'Create lines from' and verify:
         o Business partner: Test_Vend
         o In the "Order" combo box there is the purchase order
         o In the "Shipment" combo box there is the good receipt
   * Select the good receipt and click OK
   * Move to Lines and verify:
         o Product: Test_prod
         o Taxes: Select any tax option
         o The box "Purchase Order Line" is filled properly
         o The box "Shipment/Receipt Line" is filled properly
   * Go back to Header and click Complete.
   * Click the Post button and verify the newly created vendor Liability  account(400000000) is credited 
and Product Expense account(600000000) is debited.

Open Discussion Items

Overall feedback

Some minor changes done all over the document.
Please go through the document once again and realize about those type of minor changes done mainly in relation to the English terminology used and the content.

Please make sections editable shorter as in that case it is easier for me to provide feedback.

Specific feedback

Setup - New configuration

It is not clearly explained how the new sub-account number is going to be created
In the forth point you mention "Position of the account" and "position of the sub-account" field, what do you mean by that? Please relate this to the new field created "Account length" and "Sub account length"
what I mean is please better explain how the new sub-account is created in paragraph 4 when you mention "By concatenating the sequence number and the default account number as well as....."

The example is clear. Please highlight that generated sequence number is a correlative number, therefore in case a new BP is create the next new sub-account will be 43050024

Display logic

What do you mention here "position of the account" and "position of the sub-account? those are not the name of the fields showed at UI but "Account length" and "Sub account length"..please change that.

Creation of sub-account

Please just focus here on explaining how the new sub-account is created. 1st and 2nd paragraphs are not needed and the explanation you are giving it is very complicated. Forget about user the term "category account number" that is confusing.

so you should say something simple as below:

"Let's say sub-account number is 430123456 the first 3 characters will be picked from the BP default account in case a user enters 3 as "Account length" value. Rest of characters will be picked from the sequence number up to the value entered by the user in the field Sub-account length, in this case 6 additional characters will be taken from the sequence number which means the end user entered a value of 9 (9-3=6) in the field Sub-account length "

Please adjust example 1 and 2 according to my feedback above. Make it more simple and clear.

Use cases

No need to mention once again the purpose of this feature, just use cases. Pleas remove 1st sentence = "Purpose of implementing......"

Describe Use case by explaining what an end-user will have to do, by example:

1.- Default accounting details.... Peter navigates to General setup/Enterprise......and do not check "Create new account for BP" check-box. (that's enough) In case he needs to create a customer
He goes to Master data management/..../ and creates a new customer
then he goes to customer accounting and check that the BP account is the one setup by default in Accounting Schema/defaults.

same goes with vendor

and same goes with product creation (use case 2)

same logic also applicable for rest of Use cases.

Use case 3 and Use case 4, specific feedback:
make clear a sequence will have to be selected by the user in case he/she has checked new account for product check-box. make clear that the end-user can enter a value of 4 and 9 by example (those values are not mandatory)

Use case 7

You could have done this more simple just by creating a sales invoice (not need to create a sales order, then a shipment and then a sales invoice). No problem you can keep it as it is.

First sentence is not clear, I would say:

"In case this new feature is activated by the user and therefore new sub-account have been created for the new customer (see use case 3) and the new product (see use case 5) just entered in the system, those new sub-account must be used in case of posting a sales invoice for that particular customer and product.
For more details see steps below:"

one question: why do you need to change the user role? You do not need to enter/exit openbravo and change the role..all this transaction can be done at once there is no need to login once again..please remove that.

Once the sales invoice is posted a new window should pop-up in which the user could see that the new sub-account has been used instead of default so no need to go to Sales management - Transaction - sales invoice and edit the invoice..but ok, you can highlight the user can inquiry sales invoice by navigating to that path.

Use case 8

same feedback as use case 7 applies to this one.

New feedback 8th July

There are still 2 important open topics from the list below (1st and 3rd) which should be handled by the IN team:

1st - new implementation & use cases - use of the sequence number: In case there is only 1 sequence for business partner, the new customer created while using this new feature should have as customer receivable account 430000000 (OK) and the new vendor should have as vendor liability account 400000001 (NOT OK as the mock-up now shows 400000000) In case there is only 1 sequence for product, the new product created while using this new feature should have as product expense account 600000001 (OK) and as product revenue account 700000002 (not ok as now it shows 7000000001) In case above explanation is NOT right, i'm afraid I do not understand how sequence numbers work..if that is the case please confirm and explain. (Please note that I have already adjusted use cases scenarios with what I think should be the right sub-accounts based on explanation above)

2nd - set up new configuration - DONE (by Patricia) You should have clearly state wich is the "Default account number" to take into account while creating new customer/vendor and products as below:

  Example:
      As per configure the above screen shot.
      Account Length=3
      Sub-Account Length=9 
      Generated Sequence number=000000
      default account number (by default "Customer Receivable nº" account) =4300
      
      The first 3 character will be picked from the default account number.
      The rest of the 6 (9-3)character will be picked from generated sequence number. 
      Result :
          430000000


      Note: Here generated sequence number is a correlative number, so next new sub-account will be 430000001

3rd - Setup - New configuration - more than one org schema In my opinion it should be more clearly explained how a matrix organization has to be setup, in the sense of which is the organization type of each child organization.

4th - Use cases - DONE (by Patricia) You should have detail which account number should the user find per each use case, by example:

New feedback 14th July

Every BP & Product account should be taken into account not just the ones I pointed out, sorry I didn't know about it. Please by in sync here with Eduardo. Functional spec should be mofidied as appropiate in order to reflect that all account should be taken into account as well as right numbering (BP1 customer recevible 4300001 and vendor liability 400000...and rest of accounts XXXXX01).

Closed Discussion Items

Retrieved from "http://wiki.openbravo.com/wiki/Projects:DEFINING_SUB_ACCT_FOR_BP_PRODUCT/Functional_Specifications"

This page has been accessed 9,143 times. This page was last modified on 8 June 2012, at 05:27. Content is available under Creative Commons Attribution-ShareAlike 2.5 Spain License.