データベース設計文書
なんか問題がある?心配しないで、答えは全部ここにいる。
全サイト検索

承認関数

承認フィールドの関数

シートに承認プロセスが設定されている場合、次の関数を使用して承認の関連情報を返すことができます。

現在、承認に関する関数は、大きく分けて2種類あります:

1. 全体の承認プロセスに関連する

関数 解説
APPROVAL.COUNT() 返された承認階層の総数
APPROVAL.STATUS() 承認の状況を返す。

N: New、承認プロセスがまだ始まっていない、若しくはキャンセルされた

P: Processing、承認プロセスを開始し、承認が完了するのを待ちます。

REJ: Rejected、いかなる段階でも承認を拒否

F: Finish,すべての承認者が同意した場合、完成を意味する

APPROVAL.SUBMITDATE() 承認開始の日時を返し、日付フィールドに適用します。 (フロントエンドの再計算はブラウザの時間帯を使用し、バックエンドの再計算は会社の時間帯を使用します)
APPROVAL.SUBMITTER() 承認を開始したユーザーメールを返す、ユーザーフィールドに適用します。
APPROVAL.SUBMITTERNAME() 承認を開始したユーザー名を返す。
APPROVAL.FINISHDATE() 承認が終了した日時を返す。 承認の「終了」は、承認者全員が同意した、または誰かが承認を拒否したことを意味し、日付フィールドに適用することができる。(フロントエンドの再計算ではブラウザの時間帯を使用し、バックエンドの再計算では会社の時間帯を使用します)

2. 特定の承認階層に関連する

関数 解説
APPROVAL.CURRENTSTEPINDEX 次の階層の索引値。 0から始まり、0はまだ承認が始まっていないことを意味し、承認が始まると1となり、段階1を表す。この値は、総階層数に達するまで、階層をクリアするたびに1ずつ加算されます。 また、承認が終了した場合(全階層が承認した場合/1つの階層が拒否した場合/承認をキャンセルした場合)には0に戻される。
APPROVAL.STEP([stepIndex]) インデックス値で階層を指定する。 APPROVAL.STEP([stepIndex])は、以下のすべての式の前に付ける必要があります。stepIndexはオプションのパラメータで、これがない場合、次の階層を表すstepIndexとしてAPPROVAL.CURRENTSTEPINDEXが使われることを意味します。

APPROVAL.STEP(-1) : 前の階層

APPROVAL.STEP() : 次の階層 (APPROVAL.STEP(APPROVAL.CURRENTSTEPINDEX) に相当する。)

APPROVAL.STEP(0) : エラー、使用できません

APPROVAL.STEP(1) : 第一階層

APPROVAL.STEP(2) : 第二階層

APPROVAL.STEP([stepIndex]).NAME() この階層の名前を返す。
APPROVAL.STEP([stepIndex]).STATUS() この階層の状態を返す。

N: New、この段階はまだ同意も拒否もされておらず、承認中の段階である

REJ: Rejected、この段階が一人の場合、承認者が承認を拒否したことを意味し、この段階が複数人の場合、少なくとも一人の承認者が承認を拒否したことを意味します

F: Finish、この段階が一人の場合、承認者が承認を同意したことを意味し、この段階が複数人の場合、少なくとも一人の承認者が承認を同意したことを意味します

Finish この段階が終わって、次の段階のサインに移るということ。

APPROVAL.STEP([stepIndex]).RESP([email]) この階層からの返事を返す。emailパラメータはオプションで、メールボックスの文字列かユーザーフィールドのどちらかで、複数の人が承認したときに誰かからの返事を得るために使用します。

単一承認者:

(メールパラメータは不要)

N: Not yet、この段階はまだ同意も拒否もされておらず、承認中の段階である。

A: Accepted、承認者は承認することに同意する

A_D: Accept by deputy、承認者の代理は承認することに同意する

REJ: Rejected、承認者は承認することに拒否する

REJ_D: Reject by deputy、承認者の代理は承認することに拒否する

複数承認者:

メールパラメータなし:

N: Not yet、同意した承認者が最低同意人数より少ない

A: Accepted、同意した承認者は最低同意人数以上

REJ: Rejected、承認を拒否する人がいる

メールパラメータあり:

unSigned: 当承認者はまだ同意や拒否していない

signed: 承認者は承認することに同意する

signed_by_deputy: 承認者の代理は承認することに同意する

rejected: 承認者は承認することに拒否する

rejected_by_deputy: 承認者の代理は承認することに拒否する

APPROVAL.STEP([stepIndex]).ISMULTI() この段階が複数承認者であるかどうかをブール値で返します。値は、true または false である
APPROVAL.STEP([stepIndex]).THRESHOLD() この段階での最低同意者数を返る。 この段階が単一承認者の場合、または最低同意者が設定されていない場合、値は-1である
APPROVAL.STEP([stepIndex]).USERS() この階段の全承認者を返す。値の例:松本|田中|濱田。この関数は、ユーザーの複数選択フィールドに適用することができます(現在、複数選択フィールドは数式の適用をサポートしていないため、手動でf属性を設定する必要があります)。
APPROVAL.STEP([stepIndex]).ACTIONDATE([email]) この段階が承認者によって同意または拒否された日時を返す。

この数式は、日付フィールドに適用することができます。(NOWTZやTODAYTZと同じ機能で、フロントエンドの再計算はブラウザの時間帯を使用し、バックエンドの再計算は会社の時間帯を使用します)

emailはオプションのパラメータで、emailの文字列またはユーザーフィールドです。複数の人が承認したときに、ある承認者の同意または拒否の日時を取得するために使用します。

単一承認者:

(emailパラメータは必要ありません)

承認者の同意または拒否の日時を返す

複数承認者:

メールパラメータなし:

拒否されたの日時、または同意された日時で、目標人数を達成した(同意された承認者の数が最低同意者数数以上)日時を返します。

メールパラメータあり:

承認者の同意または拒否の日時を返す。

(注:古いデータに対する結果は、emailパラメータを指定しない結果と同じになります。)

APPROVAL.STEP([stepIndex]).SIGNEDUSERS() この段階で承認に同意した人を返す。 この段階が単一承認者の場合、空白値が返されるため、この関数は複数承認者の場合にのみ適用される。

値の例: 松本|田中|濱田。 この数式は、ユーザーの複数選択フィールドに適用することが可能(現在、複数選択フィールドは数式の適用をサポートしていないため、手動でf属性を設定する必要があります)。

APPROVAL.STEP([stepIndex]).SIGNEDCOUNT() この段階で承認に同意した人数を返します。 この段階が単一承認者の場合、-1を返すので、この式は複数承認者の場合にのみ適用される。
APPROVAL.STEP([stepIndex]).SIG([email]) この段階の承認者の電子サインを base64 画像の URL 文字列として返すか、サインが存在しない場合は空白値を返す。 この関数は、画像フィールドに適用することができます。emailはオプションのパラメータで、メールボックス文字列またはユーザーフィールドのいずれかであり、複数承認者の際にある人から電子署名を取得するために使用されます。注意:この数式の[email]パラメーターは" "引用符で囲む必要があります。

単一承認者:

(メールパラメータは不要)

承認者のデジタルサインを返る

複数承認者:

メールパラメータが必要,承認者のデジタルサインを返る

APPROVAL.STEP([stepIndex]).SIGIMG([email], [width], [height]) APPROVAL.STEP([stepIndex]).SIG([email])と同様に、この段階の承認者のデジタルサインを返す。ただし、この関数の値はbbcode [image]で、widthとheightは画像の幅と高さを設定するオプションのパラメータで、設定しない場合はデフォルトの幅は300px、高さは150pxとなります。bbcode 式を使用すると、結果をテキストで表示することができます。 注意:この数式の[email]パラメーターは" "引用符で囲む必要があります。

単一承認者で、長さ600px、幅300pxのサインを表示したい場合は、APPROVAL.STEP([stepIndex])SIGIMG(null, 600, 300)と記述します(nullは引用符で囲む必要はない)

APPROVAL.STEP([stepIndex]).COMMENT([email]) この段階で承認者が承認に同意または拒否する際の理由を返す。まだ承認を同意または拒否していない場合、あるいは、ある選択が行われたが、その理由がない場合は、空白値を返す。

単一承認者:

(メールパラメータは不要)

承認者の理由を返す

複数承認者:

メールパラメータが必要、ある承認者の理由を返す

APPROVAL.STEP([stepIndex]).COMMENTDATE([email]) この段階の承認者が承認に同意または拒否する理由を書き込んだ日時を返す。 承認者がまだ承認を同意または拒否していない場合、または両方行ったが理由を残していない場合は、空白値を返す。

この数式は、日付フィールドに適用することができます。(NOWTZやTODAYTZと同じ機能で、フロントエンドの再計算はブラウザの時間帯を使用し、バックエンドの再計算は会社の時間帯を使用します)

単一承認者:

(メールパラメータは不要)

承認者が理由を書き込んだ日時を返す。

複数承認者:

メールパラメータが必要、ある承認者が理由を書き込んだ日時を返す

(注:古いデータに対する結果は空白値を返す。)

数式の再計算

データベースにデータを入力すると、入力した式に従ってデータが計算され、一度保存するとこの値は保存され、変更されることはありません

つまり、デザインモードで数式を変更しても、すでに保存されているデータが新しい数式に従って再計算されることはありません。

その理由は、以前に古い数式から計算したデータはまだ有効であり、計算式を更新したからといって自動的に変更されることはないはずだからです。

例えば、ある税金の申告書があり、最近税率が上がったので計算式を変更した場合、以前保存されていた税金の情報は、そのまま古い税率で計算されるはずです。

ただし、場合によっては、古いデータをすべて最新の数式で再計算する必要があるかもしれません。フォームページのデザインモードで再計算したい数式のフィールドをクリックすると、左の関数で以下の2つのオプションがあります。 すべてのデータを新しい数式で更新するか、すべてのデータをすべての新しい数式で更新できるようにするか(複数の数式を更新した場合)です。

デザインモードで数式を修正または追加する場合は、数式で再計算する前に、まずデザインを保存してください!

また、数式や数式中の変数を頻繁に変更する場合は、毎日で数式を再計算するプログラムを作成することもできます

一番上に戻る 目次

無料でRagicを始める

Googleアカウントに登録