'intercept_max': _('Range max'), 'errorvalue': _('Uncertainty value'), }, subfield_validators={ 'intercept_min': 'uncertainties_validator', 'intercept_max': 'uncertainties_validator', 'errorvalue': 'uncertainties_validator', }, widget=RecordsWidget( label=_("Uncertainty"), description=_( "Specify the uncertainty value for a given range, e.g. for " "results in a range with minimum of 0 and maximum of 10, " "where the uncertainty value is 0.5 - a result of 6.67 will be " "reported as 6.67 +- 0.5. You can also specify the uncertainty " "value as a percentage of the result value, by adding a '%' to " "the value entered in the 'Uncertainty Value' column, e.g. for " "results in a range with minimum of 10.01 and a maximum of 100, " "where the uncertainty value is 2% - a result of 100 will be " "reported as 100 +- 2. Please ensure successive ranges are " "continuous, e.g. 0.00 - 10.00 is followed by 10.01 - 20.00, " "20.01 - 30 .00 etc."), )) # Calculate the precision from Uncertainty value # Behavior controlled by javascript # - If checked, Precision and ExponentialFormatPrecision are not displayed. # The precision will be calculated according to the uncertainty. # - If checked, Precision and ExponentialFormatPrecision will be displayed. # See browser/js/bika.lims.analysisservice.edit.js PrecisionFromUncertainty = BooleanField(
schemata='Product List', type='productList', subfields=('product', 'quantity', 'product_uid'), subfield_hidden = {'product_uid': True}, required_subfields=('product', 'quantity', 'product_uid'), subfield_sizes={'product': 50, 'quantity': 5,}, subfield_labels={'product': _('Product'), 'quantity': _('Quantity'), }, widget=RecordsWidget( label = _("Product List"), description=_("Select complete list of the components required to create this kit"), combogrid_options={ 'product': { 'colModel': [{'columnName':'product', 'width':'30', 'label':_('Title')}, {'columnName':'Description', 'width':'70', 'label':_('Description')}, {'columnName': 'product_uid', 'hidden': True}], 'url': 'getproducts', 'showOn': True, 'width': '550px' }, }, ), ), FixedPointField( 'Cost', schemata='Accounting', widget=DecimalWidget( label=_("Cost"), size=10, description=_("This is the base cost of the components required for each completed kit."), ),
catalog_name='bika_setup_catalog', base_query={'inactive_state': 'active'}, ) ) # InterimFields are defined in Calculations, Services, and Analyses. # In Analysis Services, the default values are taken from Calculation. # In Analyses, the default values are taken from the Analysis Service. # When instrument results are imported, the values in analysis are overridden # before the calculation is performed. InterimFields = InterimFieldsField( 'InterimFields', schemata='Method', widget=RecordsWidget( label=_("Additional Values"), description=_( "Values can be entered here which will override the defaults " "specified in the Calculation Interim Fields."), ) ) schema = schema.copy() + Schema(( Separate, Preservation, Container, PartitionSetup, Methods, Instruments, UseDefaultCalculation, Calculation, InterimFields, ))
searchable=True, widget=ComputedWidget( visible=False, ), ), ComputedField('CalculationUID', expression="context.getCalculation() and context.getCalculation().UID() or ''", widget=ComputedWidget( visible=False, ), ), InterimFieldsField('InterimFields', schemata='Method', widget=RecordsWidget( label=_("Calculation Interim Fields"), description=_( "Values can be entered here which will override the defaults " "specified in the Calculation Interim Fields."), ), ), DurationField('MaxTimeAllowed', schemata="Analysis", widget=DurationWidget( label=_("Maximum turn-around time"), description=_( "Maximum time allowed for completion of the analysis. " "A late analysis alert is raised when this period elapses"), ), ), FixedPointField('DuplicateVariation', schemata="Method", widget=DecimalWidget(
"context.getCalculation() and context.getCalculation().Title() or ''", searchable=True, widget=ComputedWidget(visible=False, ), ), ComputedField( 'CalculationUID', expression= "context.getCalculation() and context.getCalculation().UID() or ''", widget=ComputedWidget(visible=False, ), ), InterimFieldsField( 'InterimFields', schemata='Method', widget=RecordsWidget( label=_("Calculation Interim Fields"), description=_( "Values can be entered here which will override the defaults " "specified in the Calculation Interim Fields."), ), ), DurationField( 'MaxTimeAllowed', schemata="Analysis", widget=DurationWidget( label=_("Maximum turn-around time"), description=_( "Maximum time allowed for completion of the analysis. " "A late analysis alert is raised when this period elapses"), ), ), FixedPointField( 'DuplicateVariation',