diff --git a/entity/VisitPlanEntry_entity/entityfields/visitrecommendation_id/valueProcess.js b/entity/VisitPlanEntry_entity/entityfields/visitrecommendation_id/valueProcess.js index ae46228cf2b97b28333d001e095c9609b43fee70..dbfee2528ec4bfc6ac624c6e0751f4b2f983bb2a 100644 --- a/entity/VisitPlanEntry_entity/entityfields/visitrecommendation_id/valueProcess.js +++ b/entity/VisitPlanEntry_entity/entityfields/visitrecommendation_id/valueProcess.js @@ -3,5 +3,5 @@ import("system.neon"); import("system.result"); import("system.vars"); -if (vars.get("$sys.operatingstate") == neon.OPERATINGSTATE_NEW && vars.get("$this.value")== null) +if (vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW && vars.get("$this.value")== null) result.string(vars.get("$param.VisitrecommendationId_param")); \ No newline at end of file diff --git a/entity/VisitRecommendation_entity/entityfields/priority/valueProcess.js b/entity/VisitRecommendation_entity/entityfields/priority/valueProcess.js index 13ce2e0a28b5e8752e5cc9343e55b9d2c0479f75..cbdf0752457c49ae5a0da79ccefde5d978056b3c 100644 --- a/entity/VisitRecommendation_entity/entityfields/priority/valueProcess.js +++ b/entity/VisitRecommendation_entity/entityfields/priority/valueProcess.js @@ -4,7 +4,7 @@ import("system.vars"); import("KeywordRegistry_basic"); import("system.result"); -if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW) +if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW && vars.get("$this.value") == null) result.string($KeywordRegistry.visitRecommendationPriority$medium()); \ No newline at end of file diff --git a/entity/VisitRecommendation_entity/entityfields/responsible/valueProcess.js b/entity/VisitRecommendation_entity/entityfields/responsible/valueProcess.js index 1b25b343bc110c951c7da05d01eb360c5faee64b..f5a6569b2823a8bf027f16e51ebda3a2c25d383d 100644 --- a/entity/VisitRecommendation_entity/entityfields/responsible/valueProcess.js +++ b/entity/VisitRecommendation_entity/entityfields/responsible/valueProcess.js @@ -3,5 +3,5 @@ import("system.vars"); import("Employee_lib"); import("system.result"); -if (vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW && (vars.get("$this.value") == null || vars.get("$this.value") == undefined)) +if (vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW && vars.get("$this.value") == null) result.string(EmployeeUtils.getCurrentContactId()) \ No newline at end of file diff --git a/entity/VisitRecommendation_entity/recordcontainers/jdito/contentProcess.js b/entity/VisitRecommendation_entity/recordcontainers/jdito/contentProcess.js index 56bfedc1d072a7ae4bc1fd18318424d952507e62..2bce193407bfbbe17778c2bec0d8bc8ffb2b8c42 100644 --- a/entity/VisitRecommendation_entity/recordcontainers/jdito/contentProcess.js +++ b/entity/VisitRecommendation_entity/recordcontainers/jdito/contentProcess.js @@ -54,9 +54,7 @@ if(idValues == true) recommendationSQLData = recommendationSQLData.table(); for( let i = 0; i < recommendationSQLData.length; i++) -{ - tmpData = []; - +{ if(recommendationSQLData[i][2]) var prio = recommendationSQLData[i][2]; else if(recommendationSQLData[i][3]) @@ -64,49 +62,29 @@ for( let i = 0; i < recommendationSQLData.length; i++) else prio = $KeywordRegistry.visitRecommendationPriority$low(); - tmpData[0] = recommendationSQLData[i][0]; //UID.value - tmpData[1] = ContactUtils.getFullTitleByContactId(recommendationSQLData[i][1]); //ORGANISATION_NAME.value - tmpData[2] = recommendationSQLData[i][6]; //STREET.value - tmpData[3] = recommendationSQLData[i][7]; //COUNTRY.value - tmpData[4] = recommendationSQLData[i][8]; //ZIP.value - tmpData[5] = recommendationSQLData[i][9]; //CITY.value - tmpData[6] = prio; //PRIORITY.value - tmpData[7] = recommendationSQLData[i][4]; //PRIORITY_SOURCE.value - tmpData[8] = KeywordUtils.getViewValue($KeywordRegistry.visitRecommendationPriority(), prio) //PRIORITY.displayValue - tmpData[9] = recommendationSQLData[i][3]; //DUE_DATE.value - tmpData[10] = recommendationSQLData[i][5]; //INFO.value - tmpData[11] = recommendationSQLData[i][1]; //CONTACT_ID.value - tmpData[12] = KeywordUtils.getViewValue($KeywordRegistry.visitRecommendationPrioSource(), recommendationSQLData[i][4]) //PRIORITY_SOURCE.displayValue - tmpData[13] = ContactUtils.getFullTitleByContactId(recommendationSQLData[i][10], false); //USER_NEW.displayvalue - tmpData[14] = recommendationSQLData[i][10]; //USER_NEW.value - tmpData[15] = ContactUtils.getFullTitleByContactId(recommendationSQLData[i][11], false); //CONTACT_PERSON_ID.displayvalue - tmpData[16] = recommendationSQLData[i][11]; //CONTACT_PERSON_ID.value - tmpData[17] = ContactUtils.getFullTitleByContactId(recommendationSQLData[i][12], false); //RESPONSIBLE.displayvalue - tmpData[18] = recommendationSQLData[i][12]; //RESPONSIBLE.value - -// if(recommendationSQLData[i][13] == "1") -// { -// var visitEntries = newSelect(["ORGANISATION_CONTACT_ID", "CONTACT_ID", "ENTRYDATE"]).from("VISITPLANENTRY").where("VISITPLANENTRY.VISITRECOMMENDATION_ID", tmpData[0]).arrayRow(); -// -// var act = newSelect("ACTIVITY.ACTIVITYID") -// .from("ACTIVITY") -// .join("ACTIVITYLINK", "ACTIVITY.ACTIVITYID = ACTIVITYLINK.ACTIVITY_ID") -// .where("ACTIVITY.CATEGORY", "VISIT") -// .and("ACTIVITY.ENTRYDATE", visitEntries[2]) -// .and("ACTIVITYLINK.OBJECT_ROWID", [visitEntries[1], visitEntries[0]]) -// .cell(); -// -// var entryWeek = datetime.toDate(visitEntries[2], "w"); -// var currentWeek = datetime.toDate(vars.get("$sys.date"), "w") -// if(!act && (entryWeek < currentWeek)) -// { -// recommendationData.push(tmpData); -// } -// } -// else -// recommendationData.push(tmpData); + tmpData = [ + recommendationSQLData[i][0], //UID.value + ContactUtils.getFullTitleByContactId(recommendationSQLData[i][1]), //ORGANISATION_NAME.value + recommendationSQLData[i][6], //STREET.value + recommendationSQLData[i][7], //COUNTRY.value + recommendationSQLData[i][8], //ZIP.value + recommendationSQLData[i][9], //CITY.value + prio, //PRIORITY.value + recommendationSQLData[i][4], //PRIORITY_SOURCE.value + KeywordUtils.getViewValue($KeywordRegistry.visitRecommendationPriority(), prio), //PRIORITY.displayValue + recommendationSQLData[i][3], //DUE_DATE.value + recommendationSQLData[i][5], //INFO.value + recommendationSQLData[i][1], //CONTACT_ID.value + KeywordUtils.getViewValue($KeywordRegistry.visitRecommendationPrioSource(), recommendationSQLData[i][4]), //PRIORITY_SOURCE.displayValue + ContactUtils.getFullTitleByContactId(recommendationSQLData[i][10], false), //USER_NEW.displayvalue + recommendationSQLData[i][10], //USER_NEW.value + ContactUtils.getFullTitleByContactId(recommendationSQLData[i][11], false), //CONTACT_PERSON_ID.displayvalue + recommendationSQLData[i][11], //CONTACT_PERSON_ID.value + ContactUtils.getFullTitleByContactId(recommendationSQLData[i][12], false), //RESPONSIBLE.displayvalue + recommendationSQLData[i][12] //RESPONSIBLE.value + ]; - recommendationData.push(tmpData); + recommendationData.push(tmpData); } //===========Visitfrequency============ @@ -153,27 +131,6 @@ if(idValues == false) for (var i = 0; i < visitFrequencyData.length; i++) { - tmpData = []; - tmpData[0] = visitFrequencyData[i][1]; //UID.value - tmpData[1] = visitFrequencyData[i][9]; //ORGANISATION_NAME.value - tmpData[2] = visitFrequencyData[i][3]; //STREET.value - tmpData[3] = visitFrequencyData[i][4]; //COUNTRY.value - tmpData[4] = visitFrequencyData[i][5]; //ZIP.value - tmpData[5] = visitFrequencyData[i][6]; //CITY.value - tmpData[6] = ""; //PRIORITY.value - tmpData[7] = $KeywordRegistry.visitRecommendationPrioSource$visitFrequency(); //PRIORITY_SOURCE.value - tmpData[8] = ""; //PRIORITY.displayValue - tmpData[9] = ""; //DUE_DATE.value - tmpData[10] = ""; //INFO.value - tmpData[11] = visitFrequencyData[i][1]; //CONTACT_ID.value - tmpData[12] = KeywordUtils.getViewValue($KeywordRegistry.visitRecommendationPrioSource(), $KeywordRegistry.visitRecommendationPrioSource$visitFrequency()); //PRIORITY_SOURCE.displayValue - tmpData[13] = ""; //USER_NEW.displayValue - tmpData[14] = ""; //USER_NEW.value - tmpData[15] = ContactUtils.getFullTitleByContactId(visitFrequencyData[i][1], false); //CONTACT_PERSON_ID.displayValue - tmpData[16] = visitFrequencyData[i][1]; //CONTACT_PERSON_ID.value - tmpData[17] = ""; //RESPONSIBLE.displayValue - tmpData[18] = ""; //RESPONSIBLE.value - var dueDate = ""; var lastVisitDate = ""; var today = datetime.date(); @@ -202,14 +159,33 @@ if(idValues == false) break; } } - tmpData[6] = getPrioByDueDate(dueDate); //PRIORITY.value - tmpData[8] = KeywordUtils.getViewValue($KeywordRegistry.visitRecommendationPriority(), tmpData[6]) //PRIORITY.displayValue - tmpData[9] = dueDate; //DUE_DATE.value + + tmpData = [ + visitFrequencyData[i][1], //UID.value + visitFrequencyData[i][9], //ORGANISATION_NAME.value + visitFrequencyData[i][3], //STREET.value + visitFrequencyData[i][4], //COUNTRY.value + visitFrequencyData[i][5], //ZIP.value + visitFrequencyData[i][6], //CITY.value + getPrioByDueDate(dueDate), //PRIORITY.value + $KeywordRegistry.visitRecommendationPrioSource$visitFrequency(), //PRIORITY_SOURCE.value + KeywordUtils.getViewValue($KeywordRegistry.visitRecommendationPriority(), getPrioByDueDate(dueDate)), //PRIORITY.displayValue + dueDate, //DUE_DATE.value + "", //INFO.value + visitFrequencyData[i][1], //CONTACT_ID.value + KeywordUtils.getViewValue($KeywordRegistry.visitRecommendationPrioSource(), $KeywordRegistry.visitRecommendationPrioSource$visitFrequency()), //PRIORITY_SOURCE.displayValue + "", //USER_NEW.displayValue + "", //USER_NEW.value + ContactUtils.getFullTitleByContactId(visitFrequencyData[i][1], false), //CONTACT_PERSON_ID.displayValue + visitFrequencyData[i][1], //CONTACT_PERSON_ID.value + "", //RESPONSIBLE.displayValue + "" //RESPONSIBLE.value + ]; var manualRec = newSelect("STATUS") .from("VISITRECOMMENDATION") - .where("VISITRECOMMENDATION.CONTACT_ID", visitFrequencyData[i][1]) - .or("VISITRECOMMENDATION.CONTACT_PERSON_ID", visitFrequencyData[i][1]) + .where("VISITRECOMMENDATION.CONTACT_ID", tmpData[0]) + .or("VISITRECOMMENDATION.CONTACT_PERSON_ID", tmpData[0]) .cell() if(manualRec == "VISITSTATUSREPORTCREATED ") @@ -217,9 +193,6 @@ if(idValues == false) } } -//sort Array by priority; highest priority first -//ArrayUtils.sort2d(recommendationData, 7, true) - var filter = vars.get("$local.filter"); //TODO: this is a workaround that filters the records manually, it should be possible to filter the users with a tools.* method var filterFields = ["", "", "STREET", "COUNTRY" , "ZIP", "CITY", "PRIORITY", "PRIORITY_SOURCE", "", "DUE_DATE", "INFO", "CONTACT_ID" @@ -261,6 +234,9 @@ var filterFns = { } }; recommendationData = JditoFilterUtils.filterRecords(filterFields, recommendationData, filter.filter, filterFns); + +//sort Array by priority; highest priority first +ArrayUtils.sort2d(recommendationData, 6, true); result.object(recommendationData); function getPrioByDueDate(pDueDate)