admin
2025-01-22 7e31442f0e9b07764e9c6a9680d3d4aeba5fe1de
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
Quintiq file version 2.0
#parent: #root
StaticMethod CreateUpdate (
  UnitOfMeasure_MP owner,
  UnitOfMeasure_MP targetuom,
  Real factor,
  Product_MP product,
  Boolean isenabled
) as ConversionFactor
{
  Description: 'Create / update  new conversion factor'
  TextBody:
  [*
    cf := select( owner,
                  AsSourceUnitOfMeasure,
                  cf,
                  ( cf.TargetUnitOfMeasure() = targetuom
                    or cf.TargetUnitOfMeasure() = owner )
                  and cf.Product_MP() = product
                  );
    
    if( isnull( cf ) )
    {
      cf := owner.BaseConversionFactor( relnew,
                                        SourceUnitOfMeasureName := owner.Name(),
                                        TargetUnitOfMeasureName := targetuom.Name(),
                                        ProductID := guard( product.ID(), '' ) );
    }
    
    cf.Update( factor, targetuom, product, isenabled, false);
    
    return cf;
  *]
}