訪問:14844人(198,966PV)
今月:352人(1,990PV)
前月:374人(1,172PV)
from 2016
2019年8月
       
1
 
2
 
3
 
4
 
5
 
6
 
7
 
8
 
9
 
10
 
11
 
12
 
13
 
14
 
15
 
16
 
17
 
18
 
19
 
20
 
21
 
22
 
23
 
24
 
25
 
26
 
27
 
28
 
29
 
30
 
31
 
休み 営業 半日
AM
PM
今日 今日
休み
不明
イベント


21件 5ページ

4Dブログ

PDF印刷



先日Webシステムをv17にバージョンアップしました。
Webシステムはフォームをほとんど使わないので、その分バージョンアップ工数が少なくてすみます。
しかし印刷フォームは使います。サーバーサイドで印刷処理を行ってPDFファイルを生成しクライアントはそれをダウンロードする形で印刷ロジックを構成します。
今回のバージョンアップで4Dv17_64bitになったわけですが、今まで使っていたサードパーティーの「PDF Creator」を使わなくて済むようになりました。
プリンタードライバーはWindows10標準の「Microsoft Print to PDF」が使われるようです。
これでMacOS同様にOS標準機能でPDF出力ができるようになりました。


CALL WORKER


CALL WORKERを使うことで処理時間が1/8になった!

昨日v17にアップグレードしたお客様のシステムが不安定なので急遽メンテナンスに行ってきました。
データ保存時クライアント異常終了?(比較的データ量が多い場合?)
詳しい原因はただいま調査中です。それで、これをきっかけに採番処理が原因かもということで見直しをしました。
「CALL WORKERを使ってはいかがですか?」見直しのヒントをくれたのは4D社のサポートです。
早速マニュアルを見るとv15R5で新しく追加されたコマンドでした。
問題はデッドロックを避けるためにトランザクションの外(別プロセス)で採番処理を行っていたため、プロセスの起動・終了が採番が必要なだけ大量に行われることかも?
実は今までこの問題は起きてなかったのですが、今回なんとv17にアップグレードすることで問題となりました。
最近のバージョンで感じるのは4Dもシビアになってきたな〜(細部に注意が必要?)ということです。
急いでCALL WORKERを使ったロジックに採番処理を変更し、というかめっちゃ楽になったやん!
プロセス間通信のために受け渡しのロジックがあったのだけれど、それほとんど必要なくなったわ!
100個の連番を採番してテストしてみると、改良前が24秒、改良後が3秒、はやっ。
それはそうですわ、いちいちプロセス立ち上げなくてもワーカーが常駐してるから。
そして異常終了していた処理をエンドユーザーの方に試してもらうと、サクッと処理が完了しました。
一体どんな処理してたのと気になる方にご説明すると、100点ほどの商品の在庫移動です。
棚の変更になるのですが、在庫データの取引明細を追加するときにデータの連番を付与してます。
連番の振り方も自動とかプライマリキーとか色々ありますが、過去にsequence numberに悩まされた自分は自前で採番する方法を取ってます。
めでたしめでたし、と思ったら「システム終了できません!」、あっ!
終了ボタンに全ての画面を閉じたかどうかのチェックを入れてたので、ワーカーがまだ残っているためチェックに引っかかったのです。
ワーカーはチェックで無視するようにしてシステム終了できました。
そんなCALL WORKERなかなか使えそう。v16(v15R5)以降のお客様に横展開します。



4D OS対応表はどこ?


4D社のホームページがリニューアルしてから以前よくみていたページがなかなか見つからないという話をよく聞きます。
そんな中で2つのページについてご案内します。
1)OS対応表
基本的には製品ダウンロードページに動作環境としてのスペックが記載されています。
さらには、ページ下部にある「関連リソース」の下のブラウズをクリックすると互換性というところに対応表のダウンロードがあります。

2)ナレッジベース検索
こちらはアドレスが頭から異なります。下記のURLをクリックして下さい。
http://kb.4d-japan.com



RECEIVE PACKET(メンテナンス訪問にて)



昨日は長野のお客様のところへメンテナンスで訪問しました(道中は雪)。
v17へのバージョンアップ前に確認することの中にシリアルポートの処理があります。
実はv17ではRECEIVE PACKETが使い物になりません。ものすごーく受信に時間がかかります。
対応策としてRECEIVE BUFFERに変更する必要があります。
テストデータベースを作成して現地でRECEIVE BUFFERによるQR読み取りテストを行いました。
問題なくサクサクと読み取りできることがわかりました。
4月のメンテナンスではv17にバージョンアップの予定です。
今後バージョンアップをお考えの場合、RECEIVE PACKETを使っていたらRECEIVE BUFFERに置き換えください。

以上。


4DWebとFullCalendar


先日お客様のスケジュール管理をWeb化しました。
4DWebは1ライセンスで無制限のユーザーが利用できるので、マルチユーザーにはとても有利です。
さてその時利用したのが「FullCalendar」というJQueryのプラグイン(ツール)です。
非常に簡単にカレンダー表示ができるツールです。
ただしスケジュールデータを動的にデータベースとやりとりするには一苦労が必要です。
FullCalendarに渡すデータの型はJSON形式かXMLデータです。
4Dには元々XMLを扱うコマンドが実装されていて自分としては扱いやすかったのでXMLデータを渡す形にしました。
逆にここさえ押さえれば4DWeb+FullCalendarはとてもいい感じでした。
早速私の運営するサイトにも横展したいと思います!



21件 5ページ