Editable grid is displaying unknown error for date and sum function?

a!localVariables(
local!projectdata:rule!totaltimesheet(),

local!projectid,

local!updateCounter: 0,
local!employee: a!refreshVariable(

refreshOnVarChange: local!updateCounter
),
{

a!dateField(
label: "Date",
labelPosition :"JUSTIFIED",
value: ri!timeline.taskdate,
saveInto:ri!timeline.taskdate,

),
a!sectionLayout(
label: "",
contents: {

a!gridLayout(
/*label: "Grid view of an employee Details",*/
labelPosition: "ABOVE",
totalCount: count(ri!timeline),
headerCells: {
/*a!gridLayoutHeaderCell(label: "Employee Name"),*/
a!gridLayoutHeaderCell(label: "Project Name"),
a!gridLayoutHeaderCell(label: "Task Name"),

a!gridLayoutHeaderCell(label: "Description"),
a!gridLayoutHeaderCell(label: "Hours"),

a!gridLayoutHeaderCell(label: "Status"),
a!gridLayoutHeaderCell(
label: ""
)

},
columnConfigs: {
/*a!gridLayoutColumnConfig(width: "DISTRIBUTE", weight:2),*/
a!gridLayoutColumnConfig(width: "DISTRIBUTE", weight:2),
a!gridLayoutColumnConfig(width: "DISTRIBUTE", weight:2),

a!gridLayoutColumnConfig(width: "DISTRIBUTE", weight:2),

a!gridLayoutColumnConfig(width: "DISTRIBUTE", weight:2),
a!gridLayoutColumnConfig(
width: "ICON"
)

},
rows: a!forEach(
items: ri!timeline,
expression:a!gridRowLayout(

contents: {
/*a!textField(*/
/* */
/*value: loggedInUser(),*/
/*saveInto: {fv!item.employerName, a!save(ri!timeline.employerName, save!value)},*/
/*refreshAfter: "UNFOCUS",*/
/*required: true,*/
/*readOnly: true */
/* */
/* */
/*),*/

a!dropdownField(
label: "project Name ",
placeholderLabel: " ",
choiceLabels: rule!CrochetDSR_Get_ProjectName().projectname,
choiceValues: rule!CrochetDSR_Get_ProjectName().projectid,
value: fv!item.projectid,
saveInto: fv!item.projectid,
required: true
),
/*a!dropdownField(*/
/*label: "task",*/
/*placeholderLabel: " ",*/
/*choiceLabels: rule!CrochetDSR_Get_MilestoneTaskName(projectid:local!projectid).taskname,*/
/*choiceValues: rule!CrochetDSR_Get_MilestoneTaskName(projectid:local!projectid).taskname,*/
/*value: fv!item.taskname,*/
/*saveInto: fv!item.taskname,*/
/* */
/*required: true*/
/*) ,*/
a!textField(
label: "Description ",
value: fv!item.taskname,
saveInto: fv!item.taskname,
required: true
),
a!textField(
label: "Description ",
value: fv!item.description,
saveInto: fv!item.description,
required: true
),
/*a!dateField(*/
/*label: "task date ",*/
/*value: fv!item.taskdate,*/
/*saveInto: fv!item.taskdate,*/
/*required: true */
/*),*/
a!textField(
label: "Hours ",
value: fv!item.noofhours,
saveInto: fv!item.noofhours,
required: true
),

a!dropdownField(
label: "Status ",
placeholderLabel: " ",
choiceLabels: {"Done","Pending"},
choiceValues: {"Done","Pending"},
value: fv!item.Status,
saveInto: fv!item.Status,
required: true
),
a!imageField(
label: "delete " & fv!index,
images: a!documentImage(
document: a!iconIndicator(
"REMOVE"
),
altText: "Remove",
link: a!dynamicLink(
value: fv!index,
saveInto: {
a!save(
ri!timeline,
remove(
ri!timeline,
save!value
)
)
}
)

)
)


}
)
),


/*selectionvalue: ri!selectedRowIndex,*/
/*selectionsaveinto: ri!selectedRowIndex,*/
/*selectable: true,*/
selectionrequired: false,
addRowLink: a!dynamicLink(
label: "Add Timesheet",
saveInto: {
a!save(
target: ri!timeline,
value: append(
ri!timeline,
'type!{urn:com:appian:types:DSR}DSR_TimeSheetLineItem'(
employerName: loggedInUser(),

)
)
)
}
),
height: "AUTO",
spacing: "DENSE",
borderstyle: "STANDARD",
rowHeader: 1



),

a!columnsLayout(
columns: {
a!columnLayout(
contents: {}
),
a!columnLayout(
contents: {}
),
a!columnLayout(
contents: {
a!textField(
label: "Total Hours ",
labelPosition :"ADJACENT",
value: sum(ri!timeline.noofhours),
saveInto: {ri!timeline.Totalhours, a!save(ri!timeline.Totalhours, save!value)},
readOnly: true
),

}
)
}
),



a!buttonLayout(
primaryButtons: {
a!buttonWidgetSubmit(
label: "Submit",
value: ri!timeline,
/*saveInto: {a!save(ri!timeline.timesheetid,ri!pid),*/
/*ri!submitbutton,*/
/*a!writeToDataStoreEntity(*/
/*dataStoreEntity: cons!CROCHETDSR_GET_TIMESHEET,*/
/*valueToStore: ri!timeline,*/
/*)*/
/**/
/*},*/
showWhen: if(
rule!APN_isEmpty1(
ri!timeline
),
false(),
true()
),
style: "PRIMARY",
confirmHeader: {
if(
rule!APN_isEmpty1(
ri!timeline
),
"Please add at least one row",
{}
)
},
confirmMessage: {
if(
rule!APN_isEmpty1(
ri!timeline
),
"Please add at least one row",
{}
)
}
)
},
secondaryButtons: {
a!buttonWidget(
label: "Cancel",
value: true,
saveInto: ri!cancel,
submit: true,
style: "NORMAL",
validate: false
)
}


)

}


),

}

)

  Discussion posts and replies are publicly visible

Parents Reply
  • As Mike mentioned above, read-only fields don't save results - users must interact with the field in order for the save to be triggered. In this case, I'd recommend setting your save on the button so that the value is saved when the user submits the form. For example, your submit button could look like this:

    a!buttonWidget(
      label: "Submit",
      submit: true,
      style: "PRIMARY",
      saveInto: a!save(
        target: ri!DSR_Timesheet.totalhours,
        value: sum(property(ri!timeline, "noofhours", 0))
      )
    )

Children