キンコミ kintone user community

みんなの投稿

2022/12/18 15:40

初めて投稿いたします。
現在、見積書アプリを作っています。
このアプリから見積書を出力する関係で、
テーブルに明細(見積番号、品名、数量、単価、金額)があります。
業務の都合で、見積番号は明細毎にあるため、テーブルの行毎に自動採番(番号体系:顧客毎に異なるアルファベット1文字-年度-連番)したいです。

レコード単位で自動採番するプラグインはありますが、テーブルの行単位では見つけることはできませんでした。
javascriptカスタマイズも視野にいれていますが、なかなかどのようにしたらいいか思い付かずにおります。
実現するために何かアドバイスを頂けたら幸いです。

5件のコメント (新着順)

kotajinmさん

ルールの見直しやカスタマイズの方法は、みなさんのご意見が参考になると思います。

別の手法で、カスタマイズではなくRPAで入力という方法もできなくはないです。
詳しいご説明は省略させていただきますが、必要事項を入力した後、顧客番号や年度などを抽出して、行数に応じて連番を付けるといった方法もできると思います。

それか、Excelに出力して、Excelの関数を使って出力する方法もあります。
帳票出力をする必要があるなら、こちらの方がお勧めです。
私の記事で恐縮ですが、よかったら参考にしてください。
https://note.com/geardigital/n/nd562a04d0193

RPAは慣れるまで少し大変かもしれませんが、使えるようになると色んなアプリケーションの連携ができるようになりますよ。

kotajinmさん

自動採番をkintoneでどうするか迷うところですね。
kotajinmさんご認識のとおりkintoneの標準機能では自動採番機能は提供されておらず
実現するにはプラグインの利用やJSカスタマイズになるかと思います。

業務の都合で、見積番号は明細毎にあるため、テーブルの行毎に自動採番(番号体系:顧客毎に異なるアルファベット1文字-年度-連番)したいです。

業務の都合。。。ですよね。既存ルールにkintoneをあわそうとすると色々難しい課題もでてきます。
ここはひとつ「そもそもそのルールは絶対か」というのを考えてみるのはいかがですか。
もしかしたら現行システムや紙での運用ならそれがよかったのかもしれませんが同じルールがkintoneでもよいとは限りません。
検討した結果やっぱり、「現実的には変更不可なルール」という結論になるかもしれませんが、考えてみる価値はあるかと思います。

「kintone SIGNPOST」というのがありまして、今回は以下が参考になるかもしれません。

0-00 kintoneはkintone
https://kintone.cybozu.co.jp/kintone-signpost/pattern/0-00.html

また自動採番についてはキンコミでも過去いくつか話題にあがっており、参考までに2つリンク掲載します。

https://kincom.cybozu.co.jp/chats/rs3szj2y9xyccdgl

https://kincom.cybozu.co.jp/chats/s0dyszdizzu1vgs3

上記をふまえ、やっぱりご希望のルールをkintoneで実現するのがマストであれば、JSカスタマイズになってしまうかなーと個人的には感じました。

テーブルの行単位での採番はレコード単位での採番よりプラグインの選択肢が少ないですし今回の仕様に合致するものを私はちょっと思いつきません。

見積番号をテーブル明細ごとに採番、特定客先ごとにアルファベット付与かつ年度ごとという仕様は結構複雑ですし、おそらく見積番号を複数レコードでの重複禁止やレコードの削除や修正の場合のロジックなど含めシビアな作り込みが必要なはずです。

それらを希望通りに実現するとなると個別でJSカスタマイズをせざるをえないのかなと思いました。

kotajinmさんがシステムに明るく(おそらくそうではないかと思っています)、かつ客先変更時のアルファベットメンテナンスなどが継続的に可能な環境であれば可能だとは思います。
応援しています。


kotajinm
2022/12/19 12:53

西村さん
コメントありがとうございます!

西村さんがおっしゃったように、カスタマイズするとしても、いろいろな考慮が必要ですね。テーブルは標準で重複禁止が出来なかったですね。。。

参考サイト全て見せていただきました。

現在の業務と同じではうまくいかないところは出てきますね。
元はヒョウケイサンで行っていましたが、kintoneに移行すると入力のふたんが増えると、現場は不満だらけです(笑)とはいえ、ヒョウケイサン同じようにはいかない部分は出てきますので、理解してもらうようにする必要はありますね。
まずは、業務の見直しの方を打診してみようと思いました。
現場が不満の中、打診するのは怖いですが、難しいものは難しいですしね。
ありがとうございました!

suji バッジ画像
2022/12/19 09:42

おはようございます。
見積書アプリ内に明細テーブル、ではなく見積明細アプリを別で作り、見積書アプリから
関連レコードでの参照やプラグイン等でテーブル化してはどうでしょうか?
入力が煩雑になってしまいますが……。


kotajinm
2022/12/19 12:40

sujiさん
コメントありがとうございます!
アプリを分けるという発想はなかったです。見積書を発行する(プラグイン使用)ために、テーブル構成にしましたが、後の工程の出荷などは明細単位で、管理したいので、テーブル毎に重複しないの番号を採番したかった意図があります。構成から見直してみようかと思います。
ありがとうございました!

kopata
2022/12/19 09:02

こちら参考にしてみてはいかがでしょうか?

https://developer.cybozu.io/hc/ja/articles/204014210-%E3%83%86%E3%83%BC%E3%83%96%E3%83%AB%E3%81%AB%E9%80%A3%E7%95%AA%E3%82%92%E3%81%A4%E3%81%91%E3%82%8B

きったんさんも仰っていた cybozu developer network の記事です。


kotajinm
2022/12/19 12:34

kopataさん
コメントありがとうございます!
参考サイトを教えてくださりありがとうございます。
1レコード内で、テーブルに連番を振る場合ですね。参考にさせていただきます。
当方の場合、アプリ内で重複しない一意の番号をテーブル毎に採番するという
難題がございます。
レコード単位で採番して、テーブルでは、枝番のような、参考のサイトにあるように、連番を振って、二つのフィールドでどうにか、一意にできないか考えてみようかと思いました。
ありがとうございました!

kotajinmさんこんにちは。

javascriptカスタマイズも視野にいれていますが、なかなかどのようにしたらいいか思い付かずにおります。

ということですが、JavaScriptができる前提で書くコードがわからないということでしょうか?
それならcybozu developer networkの方がカスタマイズに特化したコミュニティですのでそちらを確認する方がよりいい答えが返ってくる可能性が高いです。
もしも、「JavaScriptによるカスタマイズしか方法がなさそうだからJavaScriptはわからないけどコードコピペしたい」ということでしたら、カスタマイズはお勧めできないというのが個人的感想です。自分でメンテナンスできないカスタマイズは避けた方がよろしいかと思われます。

kotajinmさんがどのような方かわからないので、もしバリバリのエンジニアの方でしたら失礼な回答になってしまいますがご了承ください。

テーブルの連番に関しては標準機能ではできないでしょうから、
プラグインを探すか、カスタマインならできるとは思います。


kotajinm
2022/12/19 12:24

きったんさん
コメントありがとうございます!
そうですね。おっしゃるとおりです。
自分でメンテできない実装はさけるべきですね!
javascriptカスタマイズに関しては、developer networkですね。
ありがとうございました!