みんなの投稿

2025/12/10 12:04

みなさまのお力をお借りしたく、投稿させていただきました。

現在、案件管理アプリを作成しています。
案件ごとに、売上日、支払予定日があり、売上予定日の1か月後、2か月後を自動計算して支払予定日に表示させたいです。
取引先ごとに支払予定日が異なるため、会社Aは1か月後、会社Bは2か月後など、会社ごとに結果で出したい月が異なります。
〇ヵ月後というのは取引先管理アプリから、何か月後に支払われるのかをルックアップ(支払サイト)で持ってきております。

例)
<レコード1>
案件名:XXXXXXX
取引先名:会社A
売上日:2025/4/30
支払サイト:1か月後
支払予定日:2025/5/31 ←ここを表示させたい

<レコード2>
案件名:ZZZZZZZ
取引先名:会社B
売上日:2025/4/30
支払サイト:2か月後
支払予定日:2025/6/30 ←ここを表示させたい

■試してみたこと:以下をベースに試してみたのですが、支払サイトが2か月後、売上予定日が2025/11/30の場合は2025/13/31、2025/12/31の場合は2026/1/31となってしまい、上手くいきません…
https://kintone-faq.cybozu.co.jp/hc/ja/articles/40851203699865-%E3%81%86%E3%82%8B%E3%81%86%E5%B9%B4%E3%82%92%E8%80%83%E6%85%AE%E3%81%97%E3%81%A6N%E3%83%B6%E6%9C%88%E5%BE%8C%E3%81%AE%E6%97%A5%E4%BB%98%E3%82%92%E8%A8%88%E7%AE%97%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95%E3%82%92%E6%95%99%E3%81%88%E3%81%A6%E3%81%8F%E3%81%A0%E3%81%95%E3%81%84
[参考からの変更箇所]
文字列(1行)フィールド
フィールド名/フィールドコード:翌月表示
計算式:IF(日付="","",
IF(月=12,年+1&"年1",年&"年"&月+1)&"月"&
IF(AND(月=1,日>=29,うるう年判定="うるう年"),"29",
IF(AND(月=1,日>=29,うるう年判定="平年"),"28",
IF(AND(OR(月=3,月=5,月=8,月=10),日=31),"30",日)))
&"日")

IF(売上日="","",
IF(月=12,年+1&"年1",年&"年"&月+支払サイト)&"月"&
IF(AND(月=1,日>=29,うるう年判定="うるう年"),"29",
IF(AND(月=1,日>=29,うるう年判定="平年"),"28",
IF(AND(OR(月=3,月=5,月=8,月=10),日=31),"30",日)))
&"日")



プラグインは使えないのですが、うるう年も考慮したものを作りたいです。なにかいい方法があれば教えていただると幸いです。よろしくお願いいたします。

4件のコメント (新着順)
ふゆき
製造業
2025/12/12 11:51

そして、取引先企業ごとに、締め日から実際に代金が支払われる日

であるならば、このアプリを考える前に(事前に)
顧客の「締め日・支払日・サイト」の調査されることをお勧めします
そして、いくつのパターンが必要なのか確認したほうがいいと思います😊

更に「顧客マスタ」支払条件マスタ を作り、
売掛金が締め日から何日後に現金化されるのかの計算をして
「案件管理アプリ」に
ルックアップ で引っ張ってくるようにしないと大変ですよ
(アプリストアで探したらありそうだけど...)




工場長 さんは「建設業」だから 300超は 想像がつくけど
(前受金とか半金半手とかあると思うので...)

自分が営業(製造業)だった頃を思い出して計算してみたら93パターンありました
これ、1つのアプリの中、デフォルトの計算式だけで書くのは
至難の業💦💦じゃないかな~ 

数パターンだったらいける🦆かもしれないけど...

ご提示のドキュメントは、"1ヶ月後"を求める計算例なので、👈🏻を”Nヶ月後”を計算するように変える必要があるのと、”13月”などと出ていることから、最終式だけでなくテンポラリの計算式も”日付”→"売上日"のフィールドコード修正が要ると思われます。

小生自身、この”うるう年考慮の日付計算を標準機能だけでやる”仕組みがよく分かっていませんが、興味があったので、生成AIさんに立式してもらってみました。

[フィールド構成]
①売上日(売上日) ※{フィールド名}(フィールドコード
  型:日付
②オフセット月(オフセット月
  型:数値
③年(
  型:計算
  式:DATE_FORMAT(売上日,"YYYY","system")
④新・年(年_)💡
  型:計算
  式:年 + ROUNDDOWN((月 + オフセット月 - 1) / 12)
⑤月(
  型:計算
  式:DATE_FORMAT(売上日,"M","system")
⑥新・月(月_)💡
  型:計算
  式:(月 + オフセット月 - 1) - 12 * ROUNDDOWN((月 + オフセット月 - 1) / 12) +1
⑦日(
  型:計算
  式:DATE_FORMAT(売上日,"d","system")
⑧新・日(日_)💡
  型:計算
  式:
IF( 日 >
IF( 月_ = 2,
IF(うるう年判定 = "うるう年", 29, 28),
IF( OR(月_=4, 月_=6, 月_=9, 月_=11), 30, 31)
),
IF( 月_ = 2,
IF(うるう年判定 = "うるう年", 29, 28),
IF( OR(月_=4, 月_=6, 月_=9, 月_=11), 30, 31 )
),

)

⑨うるう年判定(うるう年判定
  型:自動計算付き文字列(1行)
  式:
IF(
OR( 年_/4 - ROUNDDOWN(年_/4) != 0,
AND( 年_/100 - ROUNDDOWN(年_/100) = 0,
年_/400 - ROUNDDOWN(年_/400) != 0)
), "平年", "うるう年"
)

⑩計算後日付(計算後日付
  型:自動計算付き文字列(1行)
  式:IF(売上日 = "", "", 年_ & "-" & 月_ & "-" & 日_ )
    ※エディタの仕様上、&は全角にしています。(実際は半角)
で、添付のような動きになります。

👆🏻は、どうもうるう年またぎが入ると、2/29→2/28のように月末日を返す式になっているようです。
(ルールによっては、"キッチリ1年後としたとき、うるう年判定をして翌月月初日(3/1)にずらす"式を追加しないとかもです。)

ここで?なんですが、1か月後⇔2か月後で日のシフト有無があるのは何か理由があるのでしょうか。
別のルールがある場合は、その部分も式に入れこまなければなりませんね。

ご参考になれば幸いです。


rn20
2025/12/11 10:05

ご回答ありがとうございます!

また、ご丁寧に調査いただき、わかりやすい添付資料までありがとうございます…!
頂いた式を用いてアプリの構築を行ってみようと思います!ありがとうございました!



ここで?なんですが、1か月後⇔2か月後で日のシフト有無があるのは何か理由があるのでしょうか。
別のルールがある場合は、その部分も式に入れこまなければなりませんね。

案件管理アプリを作成しており、案件ごとに取引先企業が異なってきます。
そして、取引先企業ごとに、締め日から実際に代金が支払われる日までの期間(1か月後、2か月後)が異なってくるため、今回質問させていただきました。

訊ね方が悪かったようですみません🙇🏻‍♂️

「1か月後と2か月後がある理由」ではなく、1か月後:5/31⇔2か月後:6/30になっている理由をお聞きしました。
もしかしたら、”キッチリnか月後”ではなく、"nか月後の月末日を支払予定日とする”みたいな話でしょうか?
だとしたら、前出の式の⑧を「一律、当該年月の月末日を当てる。ただし、2月については⓽の結果で28⇔29を切り替える」ように改造すれば、「うるう年を考慮したnか月後の月末日」を求められると思います。

ご参考まで

rn20
2025/12/12 09:49

ご返信ありがとうございます!
私が分かりづらい書き方をしておりました…申し訳ありません。
ご指摘頂いている通り、”キッチリnか月後”ではなく、"nか月後の月末日を支払予定日とする”としたかったです。
⑧について、試行錯誤しながら改変してみようと思います。ありがとうございます!

こんにちは。

基本機能だけでは、売上日から支払予定日を自動計算できても文字列扱いとなるため、
支払予定日をリマインダー設定などに使えないのでご注意ください。

支払予定日は「日付」としてリマインダーなどでも使いたいのではないかと思います。

無料プラグインで日付計算できるものもあるので、ここはプラグイン等を検討されることを
おすすめします。

ITS 日付計算プラグイン https://www.tis2010.jp/datecalc/


rn20
2025/12/11 09:55

ご回答ありがとうございます!

はやり、基本機能だけでは限界があるのですね。。
ご教示いただいたITS 日付プラグイン、検討してみます。
ご教示いただきありがとうございます!

工場長 バッジ画像
営業
2025/12/10 12:30

支払条件ややこしいですよね…。弊社も支払条件マスタで管理していますが300超の支払条件が登録されています…
私の場合はkintone Café大阪Vol.26でもLT(ライトニングトーク)登壇でもお話しさせて頂いたのですが、kintoneの基本機能ではなかなか厳しく、Customineという連携サービス(プラグインではない)の日付を計算するという機能を駆使して支払予定日を算出しています。
なおスタンダードコースであればCustomineは1アプリスロット分であれば制限付で無料で使用できたりします。


rn20
2025/12/11 09:52

ご回答ありがとうございます!
300件以上も管理されているのですね、すごい…!

Customineについて調べてみます。
条件はあるものの無料で使える可能性があるのはとても魅力的ですね!
教えていただきありがとうございました!