Projects:Attribute set instance review
Contents
|
Introduction
The usage of attribute set instances within Openbravo ERP will be reviewed in order to simplify its usage and avoid confusions.
- Project status: Released in Openbravo ERP 2.50 MP12.
- Developers:
- Pablo Sarobe <psa at openbravo dot com>
- Rafa Roda Palacios <rro at openbravo dot com>
- Issue: 0011513
- Project branch: https://code.openbravo.com/erp/devel/pi-attriset/
Functional Specification
Scope
This project will review the whole cycle of usage of attribute set instances:
- Attribute set instance definition.
- Attribute set instance usage.
- Attribute set instance reporting.
User roles & profiles
Procurement manager: the person who controls the purchasing of goods (materials).
Warehousing manager: the person who controls the warehouses ins and outs as well as the valuation of their stock.
Production manager: the person who controls the manufacturing of products as well as the cost associated to their production.
Sales manager: the person who controls the sells of products.
Business process definition
Attribute set instance definition
- The production manager sets up the attributes and attribute values in Master Data Management || Product Setup || Attribute, create a new record:
- Name = Flavor
- Navigate to Attribute Value tab and create 3 records:
- Name = Strawberry
- Name = Chocolate
- Name = Vanilla
- Create a new Attribute:
- Name = Number of scoops
- Navigate to Attribute Value tab and create 3 records:
- Name = One
- Name = Two
- Name = Three
- Create a new Attribute:
- Name = Size
- Navigate to Attribute Value tab and create 3 records:
- Name = Small
- Name = Medium
- Name = Large
- In Master Data Management || Product Setup || Attribute Set, create a new record:
- Name = Size
- Navigate to Assigned Attribute tab and create a new record:
- Name = Size
- Create a new Attribute Set record:
- Name = Flavor
- Navigate to Assigned Attribute tab and create a new record:
- Name = Flavor
- Create a new Attribute Set record:
- Name = Flavor and scoops
- Navigate to Assigned Attribute tab and create 2 records:
- Name = Flavor
- Name = Scoops
- He creates 3 new product categories in Master Data Management || Product Setup || Product Category:
- Name = Ceramics
- Name = Ingredients
- Name = Packaging
- Name = Ice Creams
- He then sets up the raw materials and components in Master Data Management || Product:
- Name = Cup
- Product Category = Ceramics
- UOM = Unit
- Stocked = Y
- Production = Y
- Bill of Materials = N
- Purchase = Y
- Sales = N
- Attribute Set = Size
- Attribute Set Value = null
- In Price tab:
- Price List Version = Purchase 2006
- List Price = 1
- Standard Price = 0.7
- Price Limit = 0.5
- Creates a new component:
- Name = Box
- Product Category = Packaging
- UOM = Unit
- Stocked = Y
- Production = N
- Bill of Materials = N
- Purchase = Y
- Sales = N
- Attribute Set = Size
- Attribute Set Value = null
- In Price tab:
- Price List Version = Purchase 2006
- List Price = 0.5
- Standard Price = 0.4
- Price Limit = 0.3
- Creates a new raw material:
- Name = Milk
- Product Category = Ingredients
- UOM = Litre
- Stocked = Y
- Production = Y
- Bill of Materials = N
- Purchase = Y
- Sales = N
- In Price tab:
- Price List Version = Purchase 2006
- List Price = 1.5
- Standard Price = 1.2
- Price Limit = 1
- Creates a new raw material:
- Name = Vanilla
- Product Category = Ingredients
- UOM = Bag
- Stocked = Y
- Production = Y
- Bill of Materials = N
- Purchase = Y
- Sales = N
- In Price tab:
- Price List Version = Purchase 2006
- List Price = 5
- Standard Price = 4
- Price Limit = 4
- Then creates a final product:
- Name = Little Vanilla Ice Cream
- Product Category = Ice Creams
- UOM = Unit
- Stocked = Y
- Production = Y
- Bill of Materials = N
- Purchase = N
- Sales = Y
- Attribute Set = Flavor and scoops
- Attribute Set Value: Flavor = Vanilla; Scoops = One
- In Price tab:
- Price List Version = Sales 2006
- List Price = 1
- Standard Price = 1
- Price Limit = 1
- Create a new final product:
- Name = Pack of 3 Little Vanilla Ice Creams
- Product Category = Ice Creams
- UOM = Unit
- Stocked = Y
- Production = N
- Bill of Materials = Y
- Purchase = N
- Sales = Y
- Attribute Set = Flavor
- Attribute Set Value: Flavor = Vanilla
- In Bill of Materials tab:
- BOM Product = Box; BOM Quantity = 1 (Unit)
- BOM Product = Little Vanilla Ice Cream; BOM Quantity = 3 (Unit)
- Navigate back to the Product header and click on Verify BOM button.
- In Price tab:
- Price List Version = Sales 2006
- List Price = 8
- Standard Price = 7
- Price Limit = 6
- The production manager sets up a new activity for the production inside Production Management || Setup || Activity:
- Name = Manufacture
- He then creates a new process plan in Production Management || Transactions || Process Plan:
- Name = Little Vanilla Ice Cream
- Process Unit = Little Vanilla Ice Cream
- Conversion Rate = 1
- Inside Version tab:
- Starting Date = 01-01-2010
- Ending Date = 01-01-2011
- Inside Operation tab:
- Name = Manufacture Little Vanilla Ice Cream
- Activity = Manufacture
- Inside I/O Products:
- Product = Vanilla; Production Type = Product use (P-); Quantity = 0.2
- Product = Milk; Production Type = Product use (P-); Quantity = 1.2
- Product = Cup; Production Type = Product use (P-); Quantity = 1
- Product = Little Vanilla Ice Cream; Production Type = Product use (P+); Quantity = 1
- Navigates back to Product = Little Vanilla Ice Cream and assigns it Process Plan = Little Vanilla Ice Cream
Attribute set instance usage
- The production manager requires some raw materials to start the production of ice creams so he creates a requisition in Procurement Management || Transactions || Requisition:
- Business Partner = null
- Price List = null
- Adding in Lines what he needs:
- He needs small cups:
- Need by date = 01-06-2010
- Product = Cup
- Attribute Set Value = Small
- Quantity = 100 (Units)
- He needs small boxes:
- Need by date = 01-06-2010
- Product = Box
- Attribute Set Value = Small
- Quantity = 150 (Units)
- He needs vanilla:
- Need by date = 01-06-2010
- Product = Vanilla
- Quantity = 30 (Bags)
- He needs milk:
- Need by date = 01-06-2010
- Product = Milk
- Quantity = 200 (Litres)
- He needs small cups:
- The production manager goes back to the requisition header and Completes it.
- The purchasing manager accepts the purchase of cups and boxes navigating to Procurement Management || Transactions || Requisition To Order:
- Selects Cup and Box lines and click on Add button.
- Then clicks on Create button and in the pop-up window selects:
- Vendor = Mc Giver Supplies
- A purchase order is automatically created and completed with the attributes selected for cups and boxes.
- He then accepts the purchase of vanilla and milk selecting the former requisition in Procurement Management || Transactions || Manage Requisitions:
- Click on Create Purchase Order button.
- Business Partner = Neil Riley Productions
- Price List = Purchase
- A purchase order is automatically created and completed with the attributes selected for vanilla and milk.
- The warehousing manager receives the cups and boxes navigating to Procurement Management || Transactions || Goods Receipt:
- Creates a new goods receipt header for McGiver Supplies.
- Clicks on Create Lines From button, selects the former Purchase Order, selects a storage bin (warehouse position) and clicks on OK button.
- Lines of the order are copied into the goods receipt lines with their attribute set value.
- He completes this receipt of cups and boxes.
- Stock in the warehouse for cups and boxes is automatically updated. This can be checked at Warehouse Management || Analysis Tools || Stock Report using date 01-01-2010.
- The warehouse manager then creates a purchase invoice from the former goods receipt clicking on Generate Invoice from Receipt button.
- The reception of vanilla and milk is done using Procurement Management || Transactions || Pending Goods Receipts.
- Select products vanilla and milk, a reception date and a storage bin then click on Process button.
- A new goods receipt is created and completed for Neil Riley Productions with milk and vanilla lines.
- Stock in the warehouse for vanilla and milk is automatically updated. This can be checked at Warehouse Management || Analysis Tools || Stock Report using date 01-01-2011.
- The purchasing manager sees the created purchase invoice for McGiver Supplies.
- He checks its lines and Completes it.
- He then creates a Purchase Invoice header for Neil Riley Productions and clicks on Create Lines From button:
- He selects the former Goods Receipt then selects milk and vanilla lines and click on Ok button.
- He checks that the lines have been properly created, goes back to purchase invoice header and completes it.
- The production manager has now all the raw materials that he needs for manufacturing Small Vanilla Ice Creams in Production Management || Transactions || Work Requirement:
- He creates a new work requirement header:
- Proces Plan = Little Vanilla Ice Cream
- Quantity = 100
- Starting Date = 01-07-2010
- He then clicks on Process Work Requirement button and checks that Operation and Product tabs have been properly filled.
- He creates a new work requirement header:
- The manufacturing tacking will happen in Production Management || Transactions:
- He creates a new work effort header with:
- Movement Date = 01-07-2010
- Starting Time = 10:00:00
- Ending Time = 17:00:00
- In Production Run tab:
- WR Phase = Manufacture
- Completed Quantity = 100
- He then clicks on Create Standards button.
- Going back to the work effort header he clicks on Validate Work Effort button.
- He creates a new work effort header with:
- Stock in the warehouse for cups, milk, vanilla and little vanilla ice creams is automatically updated. This can be checked at Warehouse Management || Analysis Tools || Stock Report using date 01-01-2011.
- For producing packs of 3 little vanilla ice creams he then performs a BOM Production in Warehouse Management || Transactions || Bill of Materials Production || BOM Production.
- Name = Production of 20 Pack of 3 Little Vanilla Ice Creams
- Movement Date = 01-09-2010
- In the Production Plan he adds:
- Product = Pack 3 Little Vanilla Ice Cream
- Production Quantity = 20
- Navigates back to the header and clicks on Create/Post Production button.
- Inside Production Plan > I/O Products he checks that the following records has been created:
- Product: Pack 3 Little Vanilla Ice Cream; Attribute Set Value = Vanilla; Movement Quantity = 20
- Product: Box; Attribute Set Value = Small; Movement Quantity = -20
- Product: Little Vanilla Ice Cream; Attribute Set Value = Vanilla_One; Movement Quantity = -60
- Navigates back to the header and clicks again on Create/Post Production button.
- Stock in the warehouse for boxes, little vanilla ice creams and pack of 3 little vanilla ice creams is automatically updated. This can be checked at Warehouse Management || Analysis Tools || Stock Report using date 01-01-2011.
- The sales manager has now enough stock of produced products to start launching sales orders in Sales Management || Transactions || Sales Order:
- He creates a Standard Order for business partner Millman.
- Adding in Lines:
- Product = Little Vanilla Ice Cream
- Ordered Quantity = 12
- Going back to the sales order header he completes it.
- Adding in Lines:
- He then creates a Warehouse Order for business partner Sailor.
- Adding in Lines:
- Product = Pack of 3 Little Vanilla Ice Cream
- Ordered Quantity = 5
- Going back to the sales order header he completes it and a goods shipment is automatically created.
- Adding in Lines:
- He creates a Standard Order for business partner Millman.
- The warehousing manager creates a new goods shipment header for Business Partner = Millman in Sales Management || Transactions || Goods Shipment.
- He clicks on Create Lines From button, selects the previous sales order, selects a storage bin (warehouse position), selects the 12 Little Vanilla Ice Cream and presses on OK button.
- He navigates to Lines and changes the Movement Quantity from 12 to 10.
- Going back to the goods shipment header he completes it.
- He will send the rest of the order using Sales Management || Transactions || Create Shipments from Orders:
- Selects the order for Millman anc clicks on Process button.
- A goods shipment is correctly created for 2 Little Vanilla Ice Cream with the correct attribute set value.
- He then checks the lines and attribute set value of the warehouse order that led to the automatic creation of a goods shipment for customer Sailor.
Attribute set instance reporting
- Warehouse Management || Analysis Tools || Stock Report displays the stock available of each product, providing separate lines for each attribute and grouped by product category.
- Warehouse Management || Analysis Tools || Warehouse Control Report displays the movements of products with their attribute grouped by movement date.
- Warehouse Management || Analysis Tools || Product Movements Report displays the movements of products with their attribute grouped by movement type.
- Warehouse Management || Analysis Tools || Production Report displays the produced products with their attribute.
User stories
Attribute set instance definition
John, the production manager of an ice cream company, sets up the production information of his products:
- Defines the product categories.
- Defines the product attributes and attribute sets.
- Defines the raw materials and components.
- Defines the end products.
- Defines the production flows.
When defining products and setting their attributes, he would like to choose whether:
- The attribute set of a product, if any, is required to be defined in all the transactions.
- The attribute set value defined for a product, if any, is defaulted for each transaction.
When defining production flows, for products which attribute set instance value is defaulted, he expects this value to be set automatically.
Attribute set instance usage
John, the production manager, requires some raw materials and components for launching the production:
- He fills some material requisitions, specifying their attribute set values if required.
- He does not care about the the vendors and price lists.
Sarah, the purchasing manager, accepts the raw materials and components required by John:
- She chooses the best vendor for these raw materials and components.
- She does not care about attribute set values, assuming that these have been properly set up by John.
- If she creates some new sales orders from scratch and add lines with products which attribute set instance value is defaulted, she expects this value to be set automatically in the order line.
- She wants the purchase reports to take into account attribute set values.
Jenna, the warehousing manager, is in charge of supervising what enters or leaves the warehouse. In the purchasing flow, she:
- Receives the purchase orders as they are, placing the materials into the corresponding warehouse.
- If she creates a goods receipt from scratch and add lines with products which attribute set instance value is defaulted, she expects this value to be set in automatically the goods receipt line.
- She wants the warehouse reports to take into account attribute set values.
Once he has all the raw materials and components, John, the production manager, launches several production flows:
- He just selects the final products that he wants to obtain.
- He does not have to care about attribute set values if:
- These have been correctly set up in the production flows setup
- or the products involved have their attribute set value defined as default.
- He wants the production reports to take into account attribute set values.
Mary, the sales manager, sets up some sales orders for the customers:
- She selects products but does not have to care about attribute set values if they have been given a default value.
- If this attribute set value is not defaulted for the product chosen and the customer has not specified it (for instance, the customer asked for shirts but does not care their color), it will be warehousing manager's job to decide the corresponding attribute value.
In the sales flow, Jenna, the warehousing manager:
- Receives the sales orders as they are, taking the products from the corresponding warehouse.
- If she creates a goods shipment from scratch and add lines with products which attribute set instance value is defaulted, she expects this value to be set in automatically the goods shipment line.
- She wants the warehouse reports to take into account attribute set values.
Functional Requirements Based on Business Processes
Attribute set instance definition
Num | Requirement | Importance | Status |
1.1 | Drop-down field called Attribute Set Value will be moved under Attribute Set field (see Product window mockup). | Must have | Complete |
1.2 | Attribute Set Value field has to display only when Attribute Set field has some value. | Must have | Complete |
Num | Requirement | Importance | Status |
1.3 | A new non-mandatory drop-down field called Use Attribute Set Value As is required in the Product window, just in the right side of Attribute Set Value field (see Product window mockup). | Must have | Complete |
1.4 | Use Attribute Set Value As field has to display only when Attribute Set Value field has some value. | Must have | Complete |
1.5 | Use Attribute Set Value As drop-down field has 3 values:
| Must have | Complete |
1.6 | Use Attribute Set Value As drop-down field is not mandatory but if some value is given to the Attribute Set Value field, it will be required to give a value to Use Attribute Set Value As field. | Must have | Complete |
Num | Requirement | Importance | Status |
1.7 | A new check-box field named Require At Least One Value will be created in the Attribute Set window, in the right side of Active check-box field (see Attribute Set window mockup). | Must have | Complete |
1.8 | Default value for check-box field Require At Least One Value will be Y (ticked). | Must have | Complete |
Attribute set instance usage
Num | Requirement | Importance | Status |
2.1 | Transactions with an attribute set value field have to show this field based on the Attribute Set drop-down field value:
This means that:
Transactions that are affected are:
| Must have | Complete |
2.2 | Transactions with an attribute set value field have to show this field based on the Use Attribute Set Value As drop-down field value:
This means that:
This behavior has to be back-ended by triggers in order to ensure that no attribute set value is inserted when Use Attribute Set Value As drop-down field value is Specification. Transactions that are affected are:
| Must have | Complete |
2.3 | Attribute Set Value selector (pop-up window for choosing the attribute set value for products with attribute set) displays an error no allowing to choose an attribute set value when Use Attribute Set Value As field value is Specification. | Must have | Complete |
2.4 | Transactions which require an attribute set value to be completed have to base this check in:
This means that:
Transactions that are affected are:
| Must have | Complete |
Num | Requirement | Importance | Status |
2.5 | Transactions which have an attribute set value field have to base their default value in the Use Attribute Set Value As drop-down field value.
This means that:
Windows that are affected are:
| Must have | Complete |
User Interface Mockups
Product window
Attribute Set window
Open discussion items
Closed discussion items
Issues detected
Related to attribute sets
- Create Lines From Goods Receipt: does not select the Attribute Set Values set in the Order/Invoice selected.
- BOM Production: if a BOM materials (used) has two attribute sets, they are not correctly put when clicking on Create/Post Production button for the first time.
- Removing an attribute set value is not usable:
- If there is some value in an attribute set value field, you open the attribute set value selector, blank the value and click on OK.
- Even if the value is not visible, it remains there.
- For removing it completely you have to re-open the you open the attribute set value selector and click on Cancel.
- In Product tab, you have to first save the Attribute Set in order to be able to select an Attribute Set Value.
- Create Standards: When clicking on Create Standards in Work Effort > Production Run, I/O Products defined in the Work Requirement selected (that come from the Process Plan) are copied/calculated. Neither in Work Requirement nor in Process Plan attribute set values are selected for the products. But Create Standards process require attribute set values to be inserted in Work Effort > Production Run > Product tab. This causes that attribute set value selected is somehow random.
- It would be nice that if some attribute set value is defined in the product header it is taken.
- A better solution would be adding an attribute set value in both process plan and work requirement windows.
- In Warehouse control report:
- Serial No. description is cut.
Other issues
- Pending Goods Receipts does not take into account storage bin selected in order to chose the goods receipt header warehouse
- In Warehouse control report:
- Links movement type links to 404 page error.
- Purchase order report breaks if we give a Starting Date.
- Requisition header: Currency drop-down field should be set only if Price List is selected, otherwise not.
- BOM Production window:
- When clicking first time Create/Post Production button, the Records Created check-box is ticked and is editable: this field should always be read-only.
- Clicking twice in Create/Post Production button, this button should disappear since clicking it for the third time gives an error.
- Work Requirement: when pressing once Process Work Requirement button, Processed check-box is ticked and this button should disappear.
- Work Effort > Production Run: when Create Standards 0once, Processed check-box is ticked and button should disappear.
- Work effort: Validate Work Effort button should disappear once Processed check-box is ticked.
- Callout selecting quantity from warehouse in goods receipts/shipments: SL_InOutLine_Product: String fromOrder = SLInoutLineProductData.fromOrder() ? The XSQL is strange.
- https://code.openbravo.com/erp/devel/pi/rev/076cc6b74befa977a3d56b2364a7bbf416febb3d Odd error message code.
Technical Documentation
Attribute set instance definition
Functional requirements 1.1 and 1.2
- In Application Dictionary, inside M_Product table:
- Set M_AttributeSet_ID column as Stored in Session.
- In Application Dictionary, inside Product window, Product tab:
- Set Attribute Set Value field under Attribute Set field.
- Add a display logic to Attribute Set Value field for being shown only when Attribute Set field value is not null.
Functional requirements 1.3, 1.4, 1.5 and 1.6
- In M_PRODUCT table:
- Add a column named ATTRSETVALUETYPE for storing values of a closed list.
- Add a check constraint named M_PRODUCT_ATSETVALTYPE_CHK for ensuring that ATTRSETVALUETYPE column is NOT NULL when M_ATTRIBUTESETINSTANCE_ID is NOT NULL.
- In Application Dictionary, create a new Reference of type List:
- Name = Use Attribute Set Value As
- Values:
- Default = D
- Overwrite Specification = O
- Specification = F
- In Application Dictionary, inside M_Product table:
- Set M_AttributeSetInstance_ID column as Stored in Session.
- Add ATTRSETVALUETYPE column.
- Set its type to List and select Reference Search Key = Use Attribute Set Value As
- In Application Dictionary, inside Product window, Product tab:
- Add a new field named Use Attribute Set Value As.
- Set it in the right side, in the same line as Attribute Set Value field.
- Add a display logic for being shown only when Attribute Set Value field value is not null.
Functional requirements 1.7 and 1.8
- In M_ATTRIBUTESET table:
- Add a column named ISONEATTRSETVALREQUIRED for storing values of a check-box field.
- Add a check constraint named M_ATTRIBUTESET_ISATSETVAL_CHK for ensuring that ISONEATTRSETVALREQUIRED column values are Y or N.
- In Application Dictionary, inside M_Attributeset table:
- Add ISONEATTRSETVALREQUIRED column.
- In Application Dictionary, inside Attribute Set window, Attribute Set tab:
- Add a new field named Require At Least One Value.
- Set it in the right side, in the same line as Active field.
Attribute set instance usage
Functional requirements 2.1 and 2.2: Finding windows, tabs and tables affected is done via:
SELECT w.name AS WINDOW, t.name AS TAB, TA.TABLENAME AS TABLENAME FROM ad_field f, ad_tab t, ad_window w, AD_TABLE TA WHERE UPPER(f.name) = 'ATTRIBUTE SET VALUE' AND t.ad_tab_id = f.ad_tab_id AND TA.AD_TABLE_ID = T.AD_TABLE_ID AND w.ad_window_id = t.ad_window_id AND f.isdisplayed = 'Y' AND W.ISACTIVE= 'Y' AND T.ISACTIVE='Y' ORDER BY TA.TABLENAME, W.NAME, T.NAME
Attribute Set Value fields will be added a display logic based on 2 auxiliary inputs.
- First auxiliary input name is ATTRIBUTESET with code:
@SQL=SELECT M_ATTRIBUTESET_ID FROM M_PRODUCT WHERE M_PRODUCT_ID=@M_Product_ID@
- Second auxiliary input name is ATTRSETVALUETYPE with code:
@SQL=SELECT ATTRSETVALUETYPE FROM M_PRODUCT WHERE M_PRODUCT_ID=@M_Product_ID@
Then M_Product_ID column of the corresponding table is Stored in Session
Then the field Attribute Set Value takes the Display Logic:
(@ATTRIBUTESET@!''&@ATTRSETVALUETYPE@!'F')|(@M_AttributeSetInstance_ID@!''&@M_AttributeSetInstance_ID@!'0')
Corresponding callouts triggered when changing the product value are also added:
String strAttrSet, strAttrSetValueType; strAttrSet = strAttrSetValueType = ""; final Product product = OBDal.getInstance().get(Product.class, strMProductID); if (product != null) { AttributeSet attributeset = product.getAttributeSet(); if (attributeset != null) strAttrSet = product.getAttributeSet().toString(); strAttrSetValueType = product.getUseAttributeSetValueAs(); } resultado.append("new Array(\"inpattributeset\", \"" + FormatUtilities.replaceJS(strAttrSet) + "\"),\n"); resultado.append("new Array(\"inpattrsetvaluetype\", \"" + FormatUtilities.replaceJS(strAttrSetValueType) + "\"),\n");
Triggers are modified like:
v_AttrSetValueType M_Product.AttrSetValueType%TYPE; ... IF (INSERTING OR UPDATING) THEN --Does not allow to change the attribute set value -- for products which attribute set value type is Fixed IF (:NEW.M_PRODUCT_ID IS NOT NULL AND COALESCE(:new.M_AttributeSetInstance_ID,'0')!='0') THEN SELECT ATTRSETVALUETYPE INTO v_AttrSetValueType FROM M_PRODUCT WHERE M_PRODUCT_ID=:NEW.M_PRODUCT_ID; IF (v_AttrSetValueType='F') THEN RAISE_APPLICATION_ERROR(-20000, '@AttrSetValueFixed@'); END IF; END IF; END IF;
Functional requirement 2.3: Modify the Attribute Set Value selector in order not permit selecting a value when the Use Attribute Set Value As field is Specification.
Functional requirement 2.4:
When making the attribute set value check, evaluate the value of AttrSetValueType column of the M_Product table in the following procedures (processes) and triggers:
AND (P.ATTRSETVALUETYPE IS NULL OR P.ATTRSETVALUETYPE <> 'F') AND (SELECT ISONEATTRSETVALREQUIRED FROM M_ATTRIBUTESET WHERE M_ATTRIBUTESET_ID = P.M_ATTRIBUTESET_ID) = 'Y'
- M_INVENTORY_POST procedure
- M_MOVEMENT_POST procedure
- M_PRODUCTION_RUN procedure
- M_INTERNAL_CONSUMPTION_POST procedure
- MA_WORKEFFORT_VALIDATE procedure
- M_INOUT_POST procedure
- M_TRANSACTION_TRG trigger
- In transactions where Product selector is used, modify the callout triggered when selecting a product to take the default value, if any.
- In transactions where Product Complete selector is used, this component will be modified in order to show default value (if any) when With Stock option is not ticked.
Development Status
Attribute set instance definition
Type of file | Path | Change made | Comments | Status |
Database files |
| Resolves Functional Requirements 1.1 and 1.2 | Complete |
Type of file | Path | Change made | Comments | Status |
Database files |
| Resolves Functional Requirements 1.3, 1.4 and 1.5 | Complete | |
Database files | Added check-constraint and onCreateDefault to Use Attribute Set Value As field. | Resolves Functional Requirement 1.6 | Complete |
Type of file | Path | Change made | Comments | Status |
Database files |
| Resolves Functional Requirements 1.7 and 1.8 | Complete |
Attribute set instance usage
Type of file | Path | Change made | Comments | Status |
Selector and callout files |
|
| Resolves Functional Requirement 2.5 | Complete |