Commit fa2b5689 authored by Cédric Le Ninivin's avatar Cédric Le Ninivin

erp5_mrp_quality_assurance: Allow product substitution in traceability

parent 1a6de7aa
"""
The structure of the dict should be scanned_value: ["Ref1", "Ref2"] where Ref1 and Ref2 are the references it can substitue
"""
return {}
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="PythonScript" module="Products.PythonScripts.PythonScript"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_bind_names</string> </key>
<value>
<object>
<klass>
<global name="_reconstructor" module="copy_reg"/>
</klass>
<tuple>
<global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
<global name="object" module="__builtin__"/>
<none/>
</tuple>
<state>
<dictionary>
<item>
<key> <string>_asgns</string> </key>
<value>
<dictionary>
<item>
<key> <string>name_container</string> </key>
<value> <string>container</string> </value>
</item>
<item>
<key> <string>name_context</string> </key>
<value> <string>context</string> </value>
</item>
<item>
<key> <string>name_m_self</string> </key>
<value> <string>script</string> </value>
</item>
<item>
<key> <string>name_subpath</string> </key>
<value> <string>traverse_subpath</string> </value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key> <string>_params</string> </key>
<value> <string>input_keys</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>ManufacturingExecution_getTraceabilitySubstitutionDict</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
...@@ -17,8 +17,17 @@ data_dict = context.Base_generateValideTraceabilityDataDict(traceability_data) ...@@ -17,8 +17,17 @@ data_dict = context.Base_generateValideTraceabilityDataDict(traceability_data)
unprocess_data_list = [] unprocess_data_list = []
processed_data_list = [] processed_data_list = []
already_used_dict = {} already_used_dict = {}
substition_dict = context.ManufacturingExecution_getTraceabilitySubstitutionDict(data_dict.keys())
for product_reference, serial_number_list in data_dict.iteritems(): for product_reference, serial_number_list in data_dict.iteritems():
if product_reference not in traceability_input_dict and product_reference in substition_dict:
initial_product_reference = product_reference
substition_list = substition_dict[product_reference]
product_reference = substition_list.pop(0)
while product_reference not in traceability_input_dict and substition_list:
product_reference = substition_list.pop(0)
if product_reference not in traceability_input_dict:
product_reference = initial_product_reference
if product_reference in traceability_input_dict: if product_reference in traceability_input_dict:
traceability_input_list = traceability_input_dict[product_reference] traceability_input_list = traceability_input_dict[product_reference]
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment