After some work, here are my functions, called when I click the Run checkmark of my process:
function InsertGroupMember(five, context, result) {
// make sure we selected member or group
if (five.field.ParentTable === 'StudyGroups' && !five.field.MemberKey) {
return five.createError("You must select a member before running this process.");
}
if (five.field.ParentTable === 'Members' && !five.field.StudyGroupKey) {
return five.createError("You must select a study group before running this process.");
}
let parms = {
ParentTable: five.field.ParentTable,
StudyGroupKey: five.field.StudyGroupKey ? `'${five.field.StudyGroupKey}'` : 'NULL',
MemberKey: five.field.MemberKey ? `'${five.field.MemberKey}'` : 'NULL',
IsLeader: five.field.isLeader ? 1 : 0,
IsCoordinator: five.field.isCoordinator ? 1 : 0,
IsCoLeader: five.field.isCoLeader ? 1 : 0,
IsAssistant: five.field.isAssistant ? 1 : 0,
IsSunshine: five.field.isSunshine ? 1 : 0,
PaidDate: five.field.GroupPaidDate ? `'${five.field.GroupPaidDate}'` : 'NULL',
CheckNumber: five.field.CheckNumber ? `'${five.field.CheckNumber}'` : 'NULL'
}
five.executeFunction('InsertGroupMemberServer', parms, null, '', '', function (result) {
if (result.serverResponse.errorCode === 'ErrErrorOk') {
return five.selectAction(five.variable.ActiveForm, five.variable.ActiveKey);
// five.refreshTable(myTable);
// five.reload();
// return;
}
const functionMessage = result.serverResponse.results;
if (functionMessage !== '') {
return five.createError("Insert failed: " + functionMessage);
_five.showMessage(functionMessage);
}
});
// return five.success(result);
}
function InsertGroupMemberServer(five, context, result) {
// variables:
// ParentTable: five.field.ParentTable,
// StudyGroupKey: five.field.StudyGroupKey ? `'${five.field.StudyGroupKey}'` : 'NULL',
// MemberKey: five.field.MemberKey ? `'${five.field.MemberKey}'` : 'NULL',
// IsLeader: five.field.isLeader ? 1 : 0,
// IsCoordinator: five.field.isCoordinator ? 1 : 0,
// IsCoLeader: five.field.isCoLeader ? 1 : 0,
// IsAssistant: five.field.isAssistant ? 1 : 0,
// IsSunshine: five.field.isSunshine ? 1 : 0,
// PaidDate: five.field.GroupPaidDate ? `'${five.field.GroupPaidDate}'` : 'NULL',
// CheckNumber: five.field.CheckNumber ? `'${five.field.CheckNumber}'` : 'NULL'
const newKey = five.uuid();
let sql = `Insert into ${context.ParentTable} ( StudyGroupMembersKey, StudyGroupKey, MemberKey, IsLeader, IsCoordinator,
IsCoLeader, IsAssistant, IsSunshine, GroupPaidDate, CheckNumber )
Values('${newKey}', ${context.StudyGroupKey}, ${context.MemberKey}, ${context.IsLeader}, ${context.IsCoordinator},
${context.IsCoLeader}, ${context.IsAssistant}, ${context.IsSunshine}, ${context.PaidDate}, ${context.CheckNumber} )`;
result = five.executeQuery(sql, 0)
// five.log(sql);
return five.success(result);
}
Now all I get is a spinning circle. The record never gets inserted. Can you advise what I did wrong?
UPDATE: Even if I comment out the executeQuery line, and uncomment the five.log line, I still get an endlessly spinning wheel. Here is the sql:
Insert into StudyGroups ( StudyGroupMembersKey, StudyGroupKey, MemberKey, IsLeader, IsCoordinator, IsCoLeader, IsAssistant, IsSunshine, GroupPaidDate, CheckNumber )
Values('052a973e-69f4-4907-a6b5-49c59ad2f889', '38eb45d7-6892-4842-a9db-263a96655dce', '864aad21-f3e7-4b46-94b7-20eb53321b05', 0, 0, 0, 1, 1, '2025-06-26', '567' )
Thanks…