Save a search to retrieve the list of items whose ‘PMAP’ field value is either not set or has not been changed today.

function itemSearch(itemName) {
            try {
                let inventoryitemSearchObj = search.create({
                    type: "inventoryitem",
                    filters:
                    [
                        ["type","anyof","InvtPart"], 
                        "AND", 
                        ["name","is", itemName], 
                        "AND", 
                        ["max(formuladate: case when {systemnotes.field} ='PMAP' then {systemnotes.date} end)","before","today"], 
                        "OR", 
                        ["max(formuladate: case when {systemnotes.field} ='PMAP' then {systemnotes.date} else null end)","isempty",""]
                     ],
                    columns:
                        [
                            search.createColumn({
                                name: "internalid",
                                summary: "GROUP",
                                label: "Internal ID"
                            }),
                            search.createColumn({
                                name: "formuladate",
                                summary: "MAX",
                                formula: "case when {systemnotes.field} ='PMAP' then {systemnotes.date} end",
                                label: "Formula (Date)"
                            })
                        ]
                });
                let searchResultCount = inventoryitemSearchObj.runPaged().count;
                let internalId = "";
                if (searchResultCount > 0) {
                    inventoryitemSearchObj.run().each(function (result) {
                        internalId = result.getValue({ name: "internalid", summary: "GROUP", label: "Internal ID" })
                    });
                }
                return internalId;
            }
            catch (e) {
                log.debug("error@itemSearch", e)
                return ""
            }

        }

Leave a comment

Your email address will not be published. Required fields are marked *