Hi everyone,
The requirement is to create a function in the extensible framework. In the "WSPREQ" popup of work order parts, how do I enable the 'vendor' field to make it mandatory and the description include 'workordernum'
Thank you
Regards
I built this function to change the status of a field to (optional, required, protected, or hidden):Sample Call:
function fieldStatus(iField, iStatus)/* ©2018 Stratum Consulting Partners** Version 1.1 2018-12-28*/{ if (iField.length == 0) {return} vFormPanel = EAM.Utils.getScreen().getCurrentTab().getFormPanel();
EAM.Builder.setFieldState({iField:iStatus} ,vFormPanel.getForm().getFieldsAndButtons()); vCmd ='EAM.Builder.setFieldState({'+iField +':''+iStatus+''} ,vFormPanel.getForm().getFieldsAndButtons());'
eval(vCmd);}
Sample Call is:fieldStatus('udfchar02','required');
Hi Michael, thanks for you answer, the case is, the required field I need to put is from the Create Parts Requisition popup in the work order parts window.....
function fieldStatus(iField, iStatus){ if (iField.length == 0) {return}vFormPanel = EAM.Utils.getScreen().getCurrentTab().getFormPanel();EAM.Builder.setFieldState({iField:iStatus},vFormPanel.getForm().getFieldsAndButtons());vCmd ='EAM.Builder.setFieldState({'+iField+':''+iStatus+''} ,vFormPanel.getForm().getFieldsAndButtons());'eval(vCmd);}
Ext.define('EAM.custom.external_wsjobs', {extend: 'EAM.custom.AbstractExtensibleFramework',getSelectors: function() {return {
'[extensibleFramework] [tabName=PAR][isTabView=true] [name=activity]': {
blur: function(field){
var vFocus = this,vFormPanel = vFocus.getFormPanel(),vAct = vFormPanel.getFldValue('activity');var var15 = vFormPanel.getForm().findField("storecode");var var26 = var15.getValue();
if (vAct !=="")
{fieldStatus('supplier','required');field.formPanel.setFldValue('storecode', 'T');//EAM.Builder.setFieldState({'storecode':'required'},vFormPanel.getForm().getFieldsAndButtons());
}else{fieldStatus('supplier','optional');field.formPanel.setFldValue('storecode', 'F');console.log('blur,var26');
}}}
}}});
You may have to run the code in the background ...
setInterval(requireField, 1000);
function requireField(){ fieldStatus('supplier','required');}
... put this code at the top of the EF the interval 1000 runs every second.