new 2
new 2
-- -------------------------------------------------------------------------------
--
-- Copyright © 2022 by Spectades BV
--
-- Filename : QBUZZ_external_wsjobo.txt
--
-- Description : Extensible Framework JavaScript WSJOBO - New Tab on WSJOBO
-
-- Product : EAM Release : 12.0
--
-- Author :MCT
--
-- CHANGE HISTORY
--
-- 0001 21-09-2022 - MCT - WSJOBO - New Tab on WSJOBO
-- 0002 03-10-2022 - MCT - Issues Fixed
-- 0003 04-10-2022 - MCT - Work Order Control
-- 0004 31-10-2022 - SPC-288 When monthly invoicing is not checked, an extra
'control popup' is necessary in both the languages.
-- 0005 01-11-2022 - SPC-290 protect the "Add new Part" block when "Part Not Exist"
checkbox is unchecked, and vice-versa.
-- 0006 24-11-2022 - SPC-295 Added Supplier description virtual field on Record
view tab.
-- 0007 03-04-2023 - SPC-325 When supplier is '50406' then udfchar40 is not
required else protected.
-- 0008 12-04-2023 - SPC-327 VLOOT-MAN usergroup is not allowed to make changes to
all the tabs but Supplier Can.
-- 0009 15-05-2023 - SPC-340 Location field hidden for every status.
-- 0010 19-05-2023 - SPC-342 Copy record on "work order supplier" -> incident
no and other fields should be clear.
-- 0011 19-05-2023 - SPC-343 udfchar40 field clear and protected for every supplier
except supplier '50406'.
-- 0012 02-06-2023 - Activity Label changed and currency field disabled.
-- 0013 06-06-2023 - Locale handled when getting max line number
-- 0014 22-08-2023 - SPC-416 reverted back (SPC-343 udfchar40 field clear and
protected for every supplier except supplier '50406')
-- 0015 23-08-2023 - reveted back previous changes
-- 0016 13-03-2024 - SPC-485 Security for N-Parts in new tab on WSJOBO.
-- 0017 15-03-2024 - SPC-488 Bug fixed: virtual dropdown field in U1 Tab.
-- 0018 15-03-2024 - SPC-488 Bug fixed: All fields are protected with status 'C' in
the U1 Tab.
-- 0019 16-05-2024 - SPC-485 Error raised only when catalog ref no is updated.
-- 0020 21-05-2024 - SPC-485 Bug fixed only when record and tab changes.
-- 0021 06-06-2024 - SPC-523 Enable the Price field for manual entry and make it
mandatory (value must be greater than 0).
-- -------------------------------------------------------------------------------
*/
Ext.define('EAM.custom.external_wsjobo', {
extend: 'EAM.custom.AbstractExtensibleFramework',
getSelectors: function () {
thisContext = this;
return {
CURRENT_TAB_NAME: "HDR",
USER_FUNCTION_NAME: "WSJOBO",
SYSTEM_FUNCTION_NAME: "WSJOBO",
COMPONENT_INFO_TYPE: "DATA_ONLY"
};
var vrecords =
response.responseData.pageData.grid.GRIDRESULT.GRID.DATA[0].commonchk;
}
}
} else {
protectHdrField(formPanel, "");
}
} catch (e) {
EAM.Utils.debugMessage('Error in After Render : ' + e);
}
}
},
'[extensibleFramework] [tabName=HDR]': {
afterrender: function (a, b) {
try {
if (start === 'start') {
EAM.Utils.debugMessage("afterrender function called HDR
!");
var formPanel = this.getFormPanel();
var headerStatus =
formPanel.getFldValue("workorderstatus");
var userGroup = getUserGroup();
EAM.Utils.debugMessage("User group is " + userGroup);
var vLoc1 = formPanel.getFld("udfchar19");
vLoc1DescFld = Ext.create('Ext.form.TextField', {
//fieldLabel: '',
margin: '5 0 0 5',
width: 350,
renderTo: vLoc1.id,
readOnly: true,
itemId: 'vLoc1DescFld'
//name: 'desc',
//id: 'desc'
});
if ((userGroup === "SUPPLIER" && headerStatus ===
"CAL")) {
protectAllFields('HDR', formPanel);
return;
} else {
protectHdrField(formPanel, "");
}
}
} catch (e) {
EAM.Utils.debugMessage('Error in After Render : ' + e);
}
},
aftersaverecord: function (a, b, c) {
try {
EAM.Utils.debugMessage("aftersaverecord function
called !");
var formPanel = this.getFormPanel();
var headerStatus =
formPanel.getFldValue("workorderstatus");
vworkorderstatus =
formPanel.getFldValue("workorderstatus");
var vUdfchar19 = formPanel.getFldValue("udfchar19");
EAM.Utils.debugMessage("supplier value is :" + vUdfchar19);
if (vUdfchar19 == '50406') {
var fields = {};
fields = {
'udfchar40': 'optional',
};
} else {
formPanel.setFldValue("udfchar40", "", true);
var fields = {};
fields = {
'udfchar40': 'protected',
};
}
EAM.Builder.setFieldState(fields,
formPanel.getForm().getFields());
var userGroup = getUserGroup();
//clearPackageReturnFields();
//maintainFormPanelState(formPanel);
setPackageReturnFields(formPanel);
if ((userGroup === "SUPPLIER" && headerStatus === "CAL")) {
protectAllFields('HDR', formPanel);
return;
} else {
protectHdrField(formPanel, "");
}
} catch (e) {
EAM.Utils.debugMessage('Error in After Render : ' + e);
}
},
beforesaverecord: function (a, b, c) {
try {
EAM.Utils.debugMessage("beforesaverecord function
called !");
var formPanel = this.getFormPanel();
setPackageReturnFields(formPanel);
} catch (e) {
EAM.Utils.debugMessage('Error in beforesaverecord : ' + e);
}
},
afterrecordchange: function (a, b) {
EAM.Utils.debugMessage("afterrecordchange function called
HDR!");
var formPanel = this.getFormPanel();
var headerStatus = formPanel.getFldValue("workorderstatus");
vworkorderstatus = formPanel.getFldValue("workorderstatus");
var userGroup = getUserGroup();
var vUdfchar19 = formPanel.getFldValue("udfchar19");
/*if(vSupp==""){
clearPackageReturnFields();
}*/
if (vCopyClicked == true) {
clearFldCopyRec(formPanel);
}
vCopyClicked = false;
setPackageReturnFields(formPanel);
var vUdfchar19 = formPanel.getFldValue("udfchar19");
EAM.Utils.debugMessage("supplier value is :" + vUdfchar19);
if (vUdfchar19 == '50406') {
var fields = {};
fields = {
'udfchar40': 'optional',
};
} else {
formPanel.setFldValue("udfchar40", "", true);
var fields = {};
fields = {
'udfchar40': 'protected',
};
}
EAM.Builder.setFieldState(fields,
formPanel.getForm().getFields());
},
afterdestroyrecord: function (a, b, c) {
try {
EAM.Utils.debugMessage('afterdestroyrecord event called');
var formPanel = this.getFormPanel();
clearPackageReturnFields();
} catch (err) {
EAM.Utils.debugMessage("afterdestroyrecord err :" + err);
}
}
},
'[extensibleFramework] uxtabpanel[itemId=tabContent]': {
aftertabchange: function (field, event) {
},
beforetabchange: function (field, event) {
}
},
'[extensibleFramework] [tabName=HDR] lovfield[name=udfchar19]': {
beforetriggerclick: function (field, event) {
var formPanel = this.getFormPanel();
EAM.Utils.debugMessage("beforetriggerclick of udfchar19
called !");
hdr_overridereqbylov(field);
},
customonblur: function () {
var formPanel = this.getFormPanel();
setPackageReturnFields(formPanel);
var vUdfchar19 = formPanel.getFldValue("udfchar19");
EAM.Utils.debugMessage("supplier value is :" + vUdfchar19);
if (vUdfchar19 == '50406') {
var fields = {};
fields = {
'udfchar40': 'optional',
};
} else {
formPanel.setFldValue("udfchar40", "", true);
EAM.Utils.debugMessage("UserDefineField 40 is Empty!!");
var fields = {};
fields = {
'udfchar40': 'protected',
};
}
EAM.Builder.setFieldState(fields,
formPanel.getForm().getFields());
}
},
'[extensibleFramework] [tabName=U1] lovfield[name=wspf_10_ou_parts]': {
beforetriggerclick: function (field, event) {
var formPanel = this.getFormPanel();
EAM.Utils.debugMessage("beforetriggerclick of wspf_10_ou_parts
called !");
overridelovfield(formPanel, field);
maintainFormPanelState(formPanel);
},
customonblur: function (a, b) {
var formPanel = this.getFormPanel();
vCatPriceAttributeChanges(formPanel);
maintainFormPanelState(formPanel);
}
},
'[extensibleFramework] [tabName=U1] lovfield[name=wspf_10_ou_partuom]':
{
beforetriggerclick: function (field, event) {
var formPanel = this.getFormPanel();
EAM.Utils.debugMessage("beforetriggerclick of
wspf_10_ou_partuom called !");
overrideBaselovfield(field);
maintainFormPanelState(formPanel);
}
},
'[extensibleFramework] [tabName=U1] lovfield[name=wspf_10_ou_toh]': {
beforetriggerclick: function (field, event) {
var formPanel = this.getFormPanel();
EAM.Utils.debugMessage("beforetriggerclick of wspf_10_ou_toh
called !");
overridelovfield(formPanel, field);
maintainFormPanelState(formPanel);
}
},
'[extensibleFramework] [tabName=HDR] lovfield[name=equipment]': {
customonblur: function () {
EAM.Utils.debugMessage("custom onblur called for equipment");
var formPanel = this.getFormPanel();
protectFields(formPanel);
},
beforetriggerclick: function (field, event) {
var formPanel = this.getFormPanel();
EAM.Utils.debugMessage("beforetriggerclick of equipment
called !");
start = "second";
}
},
'[extensibleFramework] [tabName=HDR] lovfield[name=organization]': {
customonblur: function () {
EAM.Utils.debugMessage("custom onblur called for
organization");
var formPanel = this.getFormPanel();
var vUdfchar19 = formPanel.getFldValue("udfchar19");
EAM.Utils.debugMessage("supplier value is :" + vUdfchar19);
if (vUdfchar19 == '50406') {
var fields = {};
fields = {
'udfchar40': 'optional',
};
} else {
formPanel.setFldValue("udfchar40", "", true);
var fields = {};
fields = {
'udfchar40': 'protected',
};
}
EAM.Builder.setFieldState(fields,
formPanel.getForm().getFields());
}
},
'[extensibleFramework] [tabName=U1][isTabView=true]': {
afterrender: function (a, b) {
try {
EAM.Utils.debugMessage("afterrender function called !");
setDropDowns(formPanel, "wspf_10_ou_act");
setActivityStore(formPanel);
gActivityValue = formPanel.getFldValue("wspf_10_ou_act");
handleVirtualActFld(formPanel);
} catch (e) {
EAM.Utils.debugMessage('Error in After Render : ' + e);
}
},
afterloadrecord: function (a, b, c) {
EAM.Utils.debugMessage("afterloadrecord function called !");
var formPanel = this.getFormPanel();
var headerStatus =
formPanel.screen._listView.activeRecord.data.workorderstatus;
setActivityStore(formPanel);
gActivityValue = formPanel.getFldValue("wspf_10_ou_act");
var userGroup = getUserGroup();
vCatalogueReferenceOld =
formPanel.getFldValue('wspf_10_ou_catalogue');
maintainFormPanelState(formPanel);
},
afterrecordchange: function (a, b) {
EAM.Utils.debugMessage("afterrecordchange function called
U1!");
var formPanel = this.getFormPanel();
var headerStatus =
formPanel.screen._listView.activeRecord.data.workorderstatus;
console.log('headerStatus', headerStatus);
gActivityValue = formPanel.getFldValue("wspf_10_ou_act");
var userGroup = getUserGroup();
if ((userGroup === "SUPPLIER" && headerStatus === "CAL")) {
console.log('Enter Block - 0');
protectAllFields(userFunctionTab, formPanel);
//return;
} else {
console.log('Enter Block - 1');
protectHdrField(formPanel, "");
}
} else {
resetButtons(a.tabName, formPanel);
setU1DefaultValues(formPanel, "");
var vparts = formPanel.getFld("wspf_10_ou_others").checked;
addNewPartFieldAttribute(formPanel, vparts);
}
},
afterreset: function (a) {
EAM.Utils.debugMessage("afterrender function called !");
var formPanel = this.getFormPanel();
var formPanel = this.getFormPanel();
setActivityStore(formPanel);
gActivityValue = formPanel.getFldValue("wspf_10_ou_act");
var headerStatus =
formPanel.screen._listView.activeRecord.data.workorderstatus;
var userGroup = getUserGroup();
},
aftersaverecord: function (a, b, c, d) {
if (d.pageData.success == true) {
EAM.Utils.debugMessage("aftersaverecord function
called !");
var formPanel = this.getFormPanel();
var formPanel = this.getFormPanel();
setActivityStore(formPanel);
gActivityValue = formPanel.getFldValue("wspf_10_ou_act");
var headerStatus =
formPanel.screen._listView.activeRecord.data.workorderstatus;
var userGroup = getUserGroup();
if ((userGroup === "SUPPLIER" && headerStatus === "CAL")) {
protectAllFields(userFunctionTab, formPanel);
//return;
} else {
protectHdrField(formPanel, "");
}
},
before_eam_beforesaverecord: function (a, b, c) {
if (a.userFunction === "WSJOBO" && a.tabName === "U1") {
}
}
},
'[extensibleFramework] [tabName=U1] checkbox[name=wspf_10_ou_others]':
{
change: function () {
EAM.Utils.debugMessage("change function called");
var formPanel = this.getFormPanel();
var vparts = formPanel.getFld("wspf_10_ou_others").checked;
EAM.Utils.debugMessage("Part Not Exist is " + vparts);
addNewPartFieldAttribute(formPanel, vparts);
}
},
'[extensibleFramework] [tabName=ACT]': {
afterrender: function (a, b) {
try {
EAM.Utils.debugMessage("afterrender function called !");
} catch (e) {
EAM.Utils.debugMessage('Error in After Render : ' + e);
}
},
afterloadrecord: function (a, b, c) {
EAM.Utils.debugMessage("afterloadrecord function called !");
var formPanel = this.getFormPanel();
var headerStatus =
formPanel.screen._listView.activeRecord.data.workorderstatus;
var userGroup = getUserGroup();
},
afterrecordchange: function (a, b) {
EAM.Utils.debugMessage("afterrender function called !");
var formPanel = this.getFormPanel();
var headerStatus =
formPanel.screen._listView.activeRecord.data.workorderstatus;
var userGroup = getUserGroup();
},
afternewrecord: function (a) {
EAM.Utils.debugMessage("afterrender function called !");
var formPanel = this.getFormPanel();
var formPanel = this.getFormPanel();
var headerStatus =
formPanel.screen._listView.activeRecord.data.workorderstatus;
var userGroup = getUserGroup();
},
afterreset: function (a) {
EAM.Utils.debugMessage("afterrender function called !");
var formPanel = this.getFormPanel();
var formPanel = this.getFormPanel();
var headerStatus =
formPanel.screen._listView.activeRecord.data.workorderstatus;
var userGroup = getUserGroup();
} catch (e) {
EAM.Utils.debugMessage('Error in After Render : ' + e);
}
},
afterloadrecord: function (a, b, c) {
EAM.Utils.debugMessage("afterloadrecord function called !");
var formPanel = this.getFormPanel();
var headerStatus =
formPanel.screen._listView.activeRecord.data.workorderstatus;
var userGroup = getUserGroup();
},
afterrecordchange: function (a, b) {
EAM.Utils.debugMessage("afterrender function called !");
var formPanel = this.getFormPanel();
var headerStatus =
formPanel.screen._listView.activeRecord.data.workorderstatus;
var userGroup = getUserGroup();
},
afternewrecord: function (a) {
EAM.Utils.debugMessage("afterrender function called !");
var formPanel = this.getFormPanel();
var formPanel = this.getFormPanel();
var headerStatus =
formPanel.screen._listView.activeRecord.data.workorderstatus;
var userGroup = getUserGroup();
},
afterreset: function (a) {
EAM.Utils.debugMessage("afterrender function called !");
var formPanel = this.getFormPanel();
var formPanel = this.getFormPanel();
var headerStatus =
formPanel.screen._listView.activeRecord.data.workorderstatus;
var userGroup = getUserGroup();
} catch (e) {
EAM.Utils.debugMessage('Error in After Render : ' + e);
}
},
afterloadrecord: function (a, b, c) {
EAM.Utils.debugMessage("afterloadrecord function called !");
var formPanel = this.getFormPanel();
var headerStatus =
formPanel.screen._listView.activeRecord.data.workorderstatus;
var userGroup = getUserGroup();
},
afterrecordchange: function (a, b) {
EAM.Utils.debugMessage("afterrender function called !");
var formPanel = this.getFormPanel();
var headerStatus =
formPanel.screen._listView.activeRecord.data.workorderstatus;
var userGroup = getUserGroup();
},
afternewrecord: function (a) {
EAM.Utils.debugMessage("afterrender function called !");
var formPanel = this.getFormPanel();
var formPanel = this.getFormPanel();
var headerStatus =
formPanel.screen._listView.activeRecord.data.workorderstatus;
var userGroup = getUserGroup();
},
afterreset: function (a) {
EAM.Utils.debugMessage("afterrender function called !");
var formPanel = this.getFormPanel();
var formPanel = this.getFormPanel();
var headerStatus =
formPanel.screen._listView.activeRecord.data.workorderstatus;
var userGroup = getUserGroup();
// clearFldCopyRec(formPanel);
vCopyClicked = true;
} catch (err) {
EAM.Utils.debugMessage("copy record button click err :" +
err);
}
}
},
'[extensibleFramework] [tabName=HDR] uxcombobox[name=workordertype]': {
select: function (a, b) {
try {
EAM.Utils.debugMessage('workordertype is select!!');
var formPanel = this.getFormPanel();
var vworkOrdertype =
formPanel.getFldValue("workordertype");
EAM.Utils.debugMessage("workordertype select value " +
vworkOrdertype);
protectFields(formPanel);
} catch (err) {
EAM.Utils.debugMessage('workordertype select error' + err);
}
}
},
}
}
});
function setDropDowns(formPanel, fieldName) {
console.log("createDropDowns() Called!!!");
var vFld = formPanel.getFld(fieldName);
// var vFldParentContainer = vFld.up('container');
var vFldParentContainer = vFld.up('container'),
contitemscount = vFldParentContainer.items.length;
var vFldIndx = 0;
for (var i = 0; i < vFldParentContainer.items.length; i++) {
var item = vFldParentContainer.items.items[i];
vFldIndx++;
if (item.name == "wspf_10_ou_line") {
break;
}
}
var requestData = {
GRID_NAME: "LVSUPACT",
GRID_TYPE: "LOV",
REQUEST_TYPE: "LOV.HEAD_DATA.STORED",
LOV_ALIAS_NAME_1: "parameter.eventnum",
LOV_ALIAS_VALUE_1: formPanel.getFldValue("wspf_10_ou_wo"),
LOV_ALIAS_TYPE_1: "text",
LOV_ALIAS_NAME_2: "parameter.language",
LOV_ALIAS_VALUE_2: EAM.AppData.getLanguage(),
CURRENT_TAB_NAME: userFunctionTab,
USER_FUNCTION_NAME: userFunction,
SYSTEM_FUNCTION_NAME: "BSUDSC",
COMPONENT_INFO_TYPE: "DATA_ONLY"
};
dropDownStore = Ext.create('Ext.data.Store', {
fields: ['abbr', 'name'],
data: vdata
});
var LABEL_DT = "Activiteit"
var LABEL_EN = "Activity"
var vLabel = getFieldLabel(LABEL_DT, LABEL_EN);
myDropDown = Ext.create('Ext.form.ComboBox', {
fieldLabel: vLabel,
id: 'myDropDown',
name: 'custstatus',
store: dropDownStore,
queryMode: 'local',
displayField: 'name',
valueField: 'abbr',
typeAhead: 1,
typeAheadDelay: 250,
assertValue: function () {
};
function protectFields(formPanel) {
try {
EAM.Utils.debugMessage("protectField function called !");
gStatusValue = formPanel.getFldValue("workorderstatus");
if (gStatusValue === "AL") {
h = {
"udfchar22": "required"
};
EAM.Builder.setFieldState(h, formPanel.getForm().getFields());
} else {
h = {
"udfchar22": "protected"
};
EAM.Builder.setFieldState(h, formPanel.getForm().getFields());
}
} else {
h = {
"udfchar19": "protected"
};
EAM.Builder.setFieldState(h, formPanel.getForm().getFields());
}
} catch (err) {
EAM.Utils.debugMessage("Error in protectField function is " + err);
}
};
gStatusValue = formPanel.getFldValue("workorderstatus");
if (gStatusValue === "AL") {
h = {
"udfchar22": "required"
};
EAM.Builder.setFieldState(h, formPanel.getForm().getFields());
} else {
h = {
"udfchar22": "protected"
};
EAM.Builder.setFieldState(h, formPanel.getForm().getFields());
}
var userGroup = getUserGroup();
if (userGroup === "SUPPLIER") {
h = {
"udfchar19": "protected"
};
EAM.Builder.setFieldState(h, formPanel.getForm().getFields());
} else if (gStatusValue === "W") {
h = {
"udfchar19": "optional"
};
EAM.Builder.setFieldState(h, formPanel.getForm().getFields());
} else {
h = {
"udfchar19": "protected"
};
EAM.Builder.setFieldState(h, formPanel.getForm().getFields());
}
var vPageMode = formPanel.getFldValue("pagemode");
if (vPageMode === "view") {
h = {
"equipment": "protected",
"department": "protected",
"workordertype": "protected",
"problemcode": "protected",
"priority": "protected"
};
EAM.Builder.setFieldState(h, formPanel.getForm().getFields());
}
} catch (err) {
EAM.Utils.debugMessage("Error in protectHdrField function is " + err);
}
};
function getUserGroup() {
var requestData = {
GRID_NAME: "QUUGRP",
GRID_TYPE: "LOV",
REQUEST_TYPE: "LOV.HEAD_DATA.STORED",
LOV_ALIAS_NAME_1: "parameter.usrcode",
LOV_ALIAS_VALUE_1: EAM.AppData.getUser(),
LOV_ALIAS_TYPE_1: "text",
CURRENT_TAB_NAME: "HDR",
USER_FUNCTION_NAME: "QUUGRP",
SYSTEM_FUNCTION_NAME: "BSUDSC",
COMPONENT_INFO_TYPE: "DATA_ONLY"
};
maintainFormPanelState(formPanel);
};
function getSequenceNo(vWoCode, woOrganization, woType) {
try {
var vRequest = {
SYSTEM_FUNCTION_NAME: "BSUDSC",
USER_FUNCTION_NAME: userFunction,
CURRENT_TAB_NAME: userFunctionTab,
workordernum: vWoCode,
organization: woOrganization,
workorderrtype: woType,
GRID_NAME: userFunction + '_' + userFunctionTab,
ADDON_SORT_ELEMENT_ALIAS_NAME: 'wspf_10_ou_line',
ADDON_SORT_ELEMENT_TYPE: 'DESC',
COMPONENT_INFO_TYPE: 'DATA_ONLY',
};
var response = EAM.Ajax.request({
url: "BSUDSC.TAB.xmlhttp",
params: vRequest
});
var vSeq = "";
var vrecords = response.responseData.pageData.grid.GRIDRESULT.GRID.DATA;
if (vrecords.length > 0) {
vSeq = vrecords[0].wspf_10_ou_line
} else if (vrecords.length === 0) {
vSeq = 0;
}
return vSeq;
} catch (err) {
EAM.Utils.debugMessage("getSequenceNo err :" + err);
}
};
function overridelovfield(pFormPanel, pField) {
try {
EAM.Utils.debugMessage("overridelovfield function called !");
pField.extraLOVParams = null;
if (pField.name == 'wspf_10_ou_parts') {
vLovName = 'LVPARTSUP';
vInputVars = {
'parameter.workordernum': pFormPanel.getFldValue("wspf_10_ou_wo")
};
vReturnFields = {
wspf_10_ou_parts: "lvpartsupcatcode"
};
} else if (pField.name == 'wspf_10_ou_toh') {
vLovName = 'LVSUPHRS';
vInputVars = {
'parameter.language': EAM.AppData.getLanguage(),
'parameter.wonum': pFormPanel.getFldValue("wspf_10_ou_wo"),
'parameter.trde': pFormPanel.getFldValue("wspf_10_ou_trade")
};
vReturnFields = {
wspf_10_ou_toh: "lvsupdescode"
};
}
if (!Ext.isEmpty(vLovName)) {
var vLookUpLOV = vValidateLOV = {
lovName: vLovName,
inputVars: vInputVars,
returnFields: vReturnFields
};
vValidateLOV.clearFields = vClearFields;
pField.lookupLOV = vLookUpLOV;
pField.validateLOV = vValidateLOV;
pField.validateOnBlur = true;
pField.validateOnChange = true;
pField.useBeforeValidateLOV = false;
pField.dataspyConfig = {
hideDataspyList: !1,
hideEditButton: !1,
hideExcelButton: !1,
noFilterRow: !1,
dataspyXType: 'dataspy'
};
}
};
function overrideBaselovfield(a) {
try {
console.log('overrideBaselovfield called');
var pFormPanel = a.formPanel;
var partfld = pFormPanel.getFld("wspf_10_ou_partuom");
var vLookUpLOV = {
lovName: 'LVUOMS',
inputVars: {
'parameter.mos': '+'
},
returnFields: {
'wspf_10_ou_partuom': 'uomcode'
}
};
a.lookupLOV = vLookUpLOV;
a.validateLOV = vLookUpLOV;
a.extraLOVParams = null;
a.isQueryCode = false;
a.fetchMoreRequestType = null;
a.validateOnBlur = true;
a.validateOnChange = true;
a.useBeforeValidateLOV = false;
a.dataspyConfig = {
hideDataspyList: !1,
hideEditButton: !1,
hideExcelButton: !1,
noFilterRow: !1,
dataspyXType: 'dataspy'
};
} catch (err) {
console.log('error in overrideBaselovfield : ' + err);
}
};
function hdr_overridereqbylov(a) {
try {
console.log('hdr_overridereqbylov called');
var pFormPanel = a.formPanel;
var vLookUpLOV = {
lovName: 'LVUDFE',
inputVars: {
'param.rentity': 'COMP',
'param.field': 'udfchar19',
'param.fieldid': 'udfchar19',
'param.associatedrentity': 'EVNT',
'param.lookuprentity': 'COMP'
},
inputFields: {
'control.org': 'organization', // 'organization',
},
returnFields: {
'udfchar19': 'userdefinedfieldvalue',
}
};
a.lookupLOV = vLookUpLOV;
a.validateLOV = vLookUpLOV;
a.extraLOVParams = null;
a.isQueryCode = false;
a.fetchMoreRequestType = null;
a.validateOnBlur = true;
a.validateOnChange = true;
a.useBeforeValidateLOV = false;
a.dataspyConfig = {
hideDataspyList: !1,
hideEditButton: !1,
hideExcelButton: !1,
noFilterRow: !1,
dataspyXType: 'dataspy'
};
} catch (err) {
EAM.Utils.debugMessage('#Error in hdr_overridereqbylov() : ' + err);
}
};
/***
*** function to maintain
*** formPanel State after adding
*** creating custom fields
***/
function maintainFormPanelState(formPanel) {
var items = formPanel.getForm().getFields().items,
i = 0,
len = items.length;
for (; i < len; i++) {
var c = items[i];
if (c.mixins && c.mixins.field && typeof c.mixins.field['initValue'] ==
'function') {
c.mixins.field.initValue.apply(c);
c.wasDirty = false;
}
}
};
function protectAllFields(tabName, formPanel) {
var a = formPanel.getForm().getFieldsAndButtons();
EAM.Utils.debugMessage("protectAllFields function called !");
if (tabName === 'ACT' || tabName === 'CLO' || tabName === 'CMT' || tabName ===
'U1' || tabName === 'HDR') {
var h = {};
}
EAM.Builder.setFieldState(h, formPanel.getForm().getFields());
if (tabName != 'HDR') {
if (formPanel.down("button[action=deleteRec]")) {
formPanel.down("button[action=deleteRec]").setDisabled(true);
}
if (formPanel.down("button[action=newRec]")) {
formPanel.down("button[action=newRec]").setDisabled(true);
}
if (formPanel.down("button[action=saveRec]")) {
formPanel.down("button[action=saveRec]").setDisabled(true);
}
if (formPanel.down("button[action=clearRec]")) {
formPanel.down("button[action=clearRec]").setDisabled(true);
}
if (Ext.ComponentQuery.query('#addeditcomments')[0]) {
Ext.ComponentQuery.query('#addeditcomments')[0].setDisabled(true);
}
if (Ext.ComponentQuery.query('#viewpmactivitycomments')[0]) {
Ext.ComponentQuery.query('#viewpmactivitycomments')
[0].setDisabled(true);
}
if (Ext.ComponentQuery.query('#adddeferredactivity')[0]) {
Ext.ComponentQuery.query('#adddeferredactivity')
[0].setDisabled(true);
}
if (Ext.ComponentQuery.query('#rellocatedirectmaterial')[0]) {
Ext.ComponentQuery.query('#rellocatedirectmaterial')
[0].setDisabled(true);
}
if (Ext.ComponentQuery.query('#createlaborreq')[0]) {
Ext.ComponentQuery.query('#createlaborreq')[0].setDisabled(true);
}
if (Ext.ComponentQuery.query('#createwarrantyclaim')[0]) {
Ext.ComponentQuery.query('#createwarrantyclaim')
[0].setDisabled(true);
}
if (Ext.ComponentQuery.query('#viewtaskinstructions')[0]) {
Ext.ComponentQuery.query('#viewtaskinstructions')
[0].setDisabled(true);
}
if (Ext.ComponentQuery.query('#adddocumotodetails')[0]) {
Ext.ComponentQuery.query('#adddocumotodetails')
[0].setDisabled(true);
}
if (Ext.ComponentQuery.query('#importactivities')[0]) {
Ext.ComponentQuery.query('#importactivities')[0].setDisabled(true);
}
if (Ext.ComponentQuery.query('#linearlocationdetails')[0]) {
Ext.ComponentQuery.query('#linearlocationdetails')
[0].setDisabled(true);
}
if (Ext.ComponentQuery.query('#submit')[0]) {
Ext.ComponentQuery.query('#submit')[0].setDisabled(true);
}
if (Ext.ComponentQuery.query('#clear')[0]) {
Ext.ComponentQuery.query('#clear')[0].setDisabled(true);
}
if (Ext.ComponentQuery.query('#deleteactivity')[0]) {
Ext.ComponentQuery.query('#deleteactivity')[0].setDisabled(true);
}
if (Ext.ComponentQuery.query('#newactivity')[0]) {
Ext.ComponentQuery.query('#newactivity')[0].setDisabled(true);
}
if (Ext.ComponentQuery.query('common_comments button[action=destroy]')
[0]) {
Ext.ComponentQuery.query('common_comments button[action=destroy]')
[0].setDisabled(true);
}
if (Ext.ComponentQuery.query('common_comments
button[action=newComment]')[0]) {
Ext.ComponentQuery.query('common_comments
button[action=newComment]')[0].setDisabled(true);
}
}
} else {
EAM.Builder.setFieldState({
'pagelayout': 'optional'
}, a)
}
};
function resetButtons(tabName, formPanel) {
var a = formPanel.getForm().getFieldsAndButtons();
if (tabName === 'ACT' || tabName === 'CLO' || tabName === 'CMT' || tabName ===
'U1') {
if (formPanel.down("button[action=deleteRec]")) {
formPanel.down("button[action=deleteRec]").setDisabled(false);
}
if (formPanel.down("button[action=newRec]")) {
formPanel.down("button[action=newRec]").setDisabled(false);
}
if (formPanel.down("button[action=saveRec]")) {
formPanel.down("button[action=saveRec]").setDisabled(false);
}
if (formPanel.down("button[action=clearRec]")) {
formPanel.down("button[action=clearRec]").setDisabled(false);
}
if (Ext.ComponentQuery.query('#addeditcomments')[0]) {
Ext.ComponentQuery.query('#addeditcomments')[0].setDisabled(false);
}
if (Ext.ComponentQuery.query('#viewpmactivitycomments')[0]) {
Ext.ComponentQuery.query('#viewpmactivitycomments')
[0].setDisabled(false);
}
if (Ext.ComponentQuery.query('#adddeferredactivity')[0]) {
Ext.ComponentQuery.query('#adddeferredactivity')[0].setDisabled(false);
}
if (Ext.ComponentQuery.query('#rellocatedirectmaterial')[0]) {
Ext.ComponentQuery.query('#rellocatedirectmaterial')
[0].setDisabled(false);
}
if (Ext.ComponentQuery.query('#createlaborreq')[0]) {
Ext.ComponentQuery.query('#createlaborreq')[0].setDisabled(false);
}
if (Ext.ComponentQuery.query('#createwarrantyclaim')[0]) {
Ext.ComponentQuery.query('#createwarrantyclaim')[0].setDisabled(false);
}
if (Ext.ComponentQuery.query('#viewtaskinstructions')[0]) {
Ext.ComponentQuery.query('#viewtaskinstructions')
[0].setDisabled(false);
}
if (Ext.ComponentQuery.query('#adddocumotodetails')[0]) {
Ext.ComponentQuery.query('#adddocumotodetails')[0].setDisabled(false);
}
if (Ext.ComponentQuery.query('#importactivities')[0]) {
Ext.ComponentQuery.query('#importactivities')[0].setDisabled(false);
}
if (Ext.ComponentQuery.query('#linearlocationdetails')[0]) {
Ext.ComponentQuery.query('#linearlocationdetails')
[0].setDisabled(false);
}
if (Ext.ComponentQuery.query('#submit')[0]) {
Ext.ComponentQuery.query('#submit')[0].setDisabled(false);
}
if (Ext.ComponentQuery.query('#clear')[0]) {
Ext.ComponentQuery.query('#clear')[0].setDisabled(false);
}
if (Ext.ComponentQuery.query('#deleteactivity')[0]) {
Ext.ComponentQuery.query('#deleteactivity')[0].setDisabled(false);
}
if (Ext.ComponentQuery.query('#newactivity')[0]) {
Ext.ComponentQuery.query('#newactivity')[0].setDisabled(false);
}
if (Ext.ComponentQuery.query('common_comments button[action=destroy]')[0])
{
Ext.ComponentQuery.query('common_comments button[action=destroy]')
[0].setDisabled(false);
}
if (Ext.ComponentQuery.query('common_comments button[action=newComment]')
[0]) {
Ext.ComponentQuery.query('common_comments button[action=newComment]')
[0].setDisabled(false);
}
}
};
"wspf_10_ou_parts": "protected",
"wspf_10_ou_date": "protected",
"wspf_10_ou_qty": "protected",
//"wspf_10_ou_curr": "protected",
"wspf_10_ou_uoi": "protected",
"wspf_10_ou_catprice": "protected",
"wspf_10_ou_date": "protected",
"wspf_10_ou_partdesc": "optional",
"wspf_10_ou_catalogue": "optional",
"wspf_10_ou_partuom": "optional",
"wspf_10_ou_partprice": "optional",
"wspf_10_ou_partqty": "optional"
};
EAM.Builder.setFieldState(vFld, formPanel.getForm().getFields());
} else {
formPanel.setFldValue("wspf_10_ou_partdesc", "");
formPanel.setFldValue("wspf_10_ou_catalogue", "");
formPanel.setFldValue("wspf_10_ou_partuom", "");
formPanel.setFldValue("wspf_10_ou_partprice", "");
formPanel.setFldValue("wspf_10_ou_partqty", "");
dropDownStore = Ext.create('Ext.data.Store', {
fields: ['abbr', 'name'],
data: vdata
});
//if (vdata.length > 0 ){
formPanel.setFldValue("myDropDown", '', true);
myDropDown.setStore(dropDownStore);
//}
} else {
//myDropDown.setValue(vdata[0].abbr);
//formPanel.setFldValue("wspf_10_ou_act", vdata[0].abbr, true);
//var actFld = formPanel.getFld("wspf_10_ou_act");
//actFld.fireEvent('customonblur', actFld,vdata[0].abbr);
} catch (e) {
EAM.Utils.debugMessage('Error in Set Store : ' + e);
}
};
/*Function to generate a popup for type Damage or Monthly Invoice Unchecked*/
function showPopup() {
var langmsg = "";
var vuserLang = EAM.AppData.getInstallParams().get("language");
if (vuserLang === "NL") {
langmsg = "Weet je zeker dat je de status wil veranderen? Er wordt dan een
automatische inkooporder gemaakt";
} else {
langmsg = "Are you sure you want to change the status? An automatic PO will
be generated";
}
EAM.Messaging.showQuestion({
msg: langmsg,
buttons: EAM.MsgBox.YESNO,
fn: function (g) {
if (g === "yes") {
//formPanel.setFldValue("workorderstatus", headerStatus, true);
var saveButton =
EAM.Utils.getMainToolbar().down("button[action=saveRec]");
saveButton.fireEvent("click", saveButton);
//vReturnVar = true;
} else {
if (g === "no") {
var resetButton = EAM.Utils.getMainToolbar().getResetButton();
resetButton.fireEvent("click", resetButton);
//vReturnVar = false;
return false;
}
}
},
scope: this
})
};
function setPackageReturnFields(formPanel) {
try {
var vorg = formPanel.getFldValue("organization");
var vfield = formPanel.getFldValue("udfchar19");
EAM.Utils.debugMessage(vfield);
if (!Ext.isEmpty(vfield)) {
var requestData = {
GRID_NAME: "LVUDFE",
GRID_TYPE: "LOV",
REQUEST_TYPE: "LOV.HEAD_DATA.STORED",
LOV_ALIAS_NAME_1: "param.rentity",
LOV_ALIAS_VALUE_1: "COMP",
LOV_ALIAS_TYPE_1: "text",
LOV_ALIAS_NAME_2: "param.field",
LOV_ALIAS_VALUE_2: vfield,
LOV_ALIAS_TYPE_2: "text",
LOV_ALIAS_NAME_3: "param.fieldid",
LOV_ALIAS_VALUE_3: "udfchar19",
LOV_ALIAS_TYPE_3: "text",
LOV_ALIAS_NAME_4: "param.associatedrentity",
LOV_ALIAS_VALUE_4: "EVNT",
LOV_ALIAS_TYPE_4: "text",
LOV_ALIAS_NAME_5: "param.lookuprentity",
LOV_ALIAS_VALUE_5: "COMP",
LOV_ALIAS_TYPE_5: "text",
LOV_ALIAS_NAME_6: "control.org",
LOV_ALIAS_VALUE_6: vorg,
LOV_ALIAS_TYPE_6: "text",
CURRENT_TAB_NAME: "HDR",
USER_FUNCTION_NAME: "WSJOBO",
//SYSTEM_FUNCTION_NAME: "EWSUSR",
COMPONENT_INFO_TYPE: "DATA_ONLY",
'filterfields': "userdefinedfieldvalue",
'filteroperator': "CONTAINS",
'filtervalue': vfield
};
function clearPackageReturnFields() {
try {
vLoc1DescFld.setValue("");
} catch (e) {
EAM.Utils.debugMessage('Error in clearPackageReturnFields : ' + e);
}
};
function clearFldCopyRec(formPanel) {
try {
EAM.Utils.debugMessage("clearFldCopyRec function called");
formPanel.setFldValue("warranty", "", true);
formPanel.setFldValue("trade", "", true);
formPanel.setFldValue("esthrs", "", true);
formPanel.setFldValue("remhrs", "", true);
formPanel.setFldValue("pplreq", "", true);
formPanel.setFldValue("udfchar06", "", true);
formPanel.setFldValue("udfchar19", "", true);
formPanel.setFldValue("udfchar22", "", true);
formPanel.setFldValue("udfchar23", "", true);
formPanel.setFldValue("udfchar24", "", true);
formPanel.setFldValue("udfdate09", "", true);
formPanel.setFldValue("udfnum09", "", true);
formPanel.setFldValue("udfchkbox02", "", true);
formPanel.setFldValue("schedgroup", "", true);
formPanel.setFldValue("reportedby", "", true);
formPanel.setFldValue("assignedto", "", true);
vLoc1DescFld.setValue("");
var vWarranty = getWarrantyOSOBJA(formPanel);
formPanel.setFldValue("warranty", vWarranty, true);
} catch (e) {
EAM.Utils.debugMessage('Error in clearFldCopyRec : ' + e);
}
};
function getWarrantyOSOBJA(formPanel) {
EAM.Utils.debugMessage('getWarrantyOSOBJA called');
var vPageData = formPanel.screen._recordview.form._record.data;
var getBackToCorrectPageCall = EAM.Ajax.request({
url: 'WSJOBS_HDR_VALIDATEEQUIPMENT',
extraParams: {
'workorderrtype': vPageData.workorderrtype,
'equipmentclassorg': vPageData.equipmentclassorg,
'workordernum': '<Auto-Generated>',
'equipmentorg': vPageData.equipmentorg,
'workorderstatus': vPageData.workorderstatus,
'equipmentdesc': vPageData.equipmentdesc,
'description': vPageData.description,
'organization': vPageData.organization,
'equipment': vPageData.equipment,
'department': vPageData.department,
'PKID': '<Auto-Generated>#' + vPageData.organization + '#',
'SYSTEM_FUNCTION_NAME': 'WSJOBS',
'USER_FUNCTION_NAME': 'WSJOBO',
'CURRENT_TAB_NAME': 'HDR'
}
});
var vWarranty = getBackToCorrectPageCall.responseData.pageData.values.warranty;
return vWarranty;
};
/*
external function to Show Field Label
*/
function getFieldLabel(LABEL_DT, LABEL_EN) {
var userLang = EAM.AppData.getInstallParams().get("language");
var vLabel = "";
if (userLang == "EN") {
vLabel = LABEL_EN;
} else {
vLabel = LABEL_DT;
}
return vLabel
};
/*Security for N-Parts in new tab on WSJOBO*/
function getSecurityNParts(formPanel, vCatalogueReference) {
try {
console.log('getSecurityNParts fn called');
// vNPartSuccess=false;
var vNParts;
var requestData = {
GRID_NAME: "OUCTRF",
GRID_TYPE: "LOV",
REQUEST_TYPE: "LOV.HEAD_DATA.STORED",
CURRENT_TAB_NAME: "HDR",
USER_FUNCTION_NAME: "WSJOBO",
SYSTEM_FUNCTION_NAME: "WSJOBO",
COMPONENT_INFO_TYPE: "DATA_ONLY",
LOV_ALIAS_NAME_1: "parameter.catref",
LOV_ALIAS_VALUE_1: vCatalogueReference,
LOV_ALIAS_TYPE_1: "text"
};
}
console.log('vNParts is' + vNParts);
return vNParts;
} catch (err) {
EAM.Utils.debugMessage('error in calling getSecurityNParts() :' + err);
}
};
function handleVirtualActFld(formPanel) {
try {
console.log("handleVirtualActFld() Called!!");
var headerStatus =
formPanel.screen._listView.activeRecord.data.workorderstatus;
if (myDropDown !== "") {
if (headerStatus == "DI" || headerStatus == "CAL" || headerStatus ==
"AG" || headerStatus == "CA" || headerStatus == "TF" || headerStatus == "C") {
console.log('headerStatus - Activity 0.1: ' + headerStatus);
myDropDown.setReadOnly(true);
} else {
console.log('headerStatus - Activity 0.2: ' + headerStatus);
myDropDown.setReadOnly(false);
}
}
} catch (e) {
console.log('handleVirtualActFld() Error: ' + e);
}
};
function vCatPriceAttributeChanges(f) {
try {
console.log("vCatPriceAttributeChanges() called!!");
var h = {};
var vParts = f.getFldValue("wspf_10_ou_parts");
var vPartsFld = f.getFld("wspf_10_ou_parts").currentAttribute;
if (vParts) {
h = {
"wspf_10_ou_catprice": "required"
};
} else {
h = {
"wspf_10_ou_catprice": "protected"
};
}
EAM.Builder.setFieldState(h, f.getForm().getFields());
} catch (err) {
console.log("vCatPriceAttributeChanges() Error: " + err);
}
}