データの変更履歴が残るようにするために、以下の様にしています。
1. Workflow の Action Email にて、変更前後の履歴をメールで送信
2. スプレッドシートの Google App Script でメールを処理して、スプレッドシートに変更履歴を追加
もっと他の方法がありましたら、教えて頂けないでしょうか。
AppSheet だけで処理できると嬉しいのですが。
(2)の処理を5分毎としているため、反映にタイムラグがあるのと、
再読み込みをしないと、反映されないのを解消したいです。
top of page
この動作を確認するには、公開後のサイトへ移動してください。
変更履歴
変更履歴
4件の回答0件の返信
いいね!
4件のコメント
コメント機能がオフになっています。
bottom of page
ありがとうございます!!
できるようになりました。
App Formula に [_THISROW_BEFORE] が使用できるのですね。
これは思いつけませんでした。
ソーステーブル内にColumnを追加し、変更以前のValueを保存するように設定されて下さい。App formula には
[_thisrow_before].[ColumnName]
(ColumnNameは適宜書き換えられてください。)
と入れることで、指定したカラムの値が変更されると、その変更前のデータ・値をSpreadsheetに保存する形です。
カラムの値自体は[_thisrow_after].[ColumnName]と同じことですので、Actionでログにデータを飛ばす際に、カラムの値をAfterの値として、新たに設置したカラムをBeforeの値として飛ばすことで各データ変更の前後を毎度記録することができます。
ご回答ありがとうございます。
「Data: add a new row to another table using values from this row」は試したのですが、[_THISROW_BEFORE], [_THISROW_AFTER]が使えません。
[_THISROW]は使えるのですが、変更後のデータしかとることができません。
お手数ですが、確認させて下さい。
[Actions] において 「Data: add a new row to another table using values from this row」を選択。
"set these columns" の "LongText"の右辺側に[_THISROWBEFOR].[ColumnName] と入れる。
このやり方で問題がありますでしょうか。
GASの必要性は全くありません。 まず、変更内容を記録するためのテーブルを準備します。
そして、データ変更が発生するテーブル(ソーステーブルとします)を対象にアクションを設定します。アクションのタイプは「Data: add a new row to another table using values from this row」。対象の行内のデータ変更の前後の値は[_thisrow_before].[ColumnName] , [_thisrow_after].[ColumnName] の関数で捕捉できますので、その値を変更記録・ログ用のテーブルに当たらに行を加えることで記録として残します。 このアクションは、Workflowを使い対象のカラムが変更された事実をWorkflow発火の条件として設定されれば、簡単に変更ログを自動で取得することができます。