const executeInTransactionContext = (
core,
executor: (context: any, options: any, isUndo: boolean) => void,
) => {
const Commands = GC.Spread.Sheets.Commands;
return (context: any, options: any, isUndo: boolean) => {
if (isUndo) {
Commands.undoTransaction(context, options);
return true;
}
Commands.startTransaction(context, options);
try {
业务代码(增删改查)
} catch (e) {
console.error(e);
return false;
} finally {
Commands.endTransaction(context, options);
}
};
}; |