その後のデータベース(その2)

2020年が始まった。

年末年始行事が一段落し、Fullfreeを実際に沿う形に加工することにした。と言ってもテンプレートを作るだけなので何とかなるだろうと踏んでいた。

FullfreeはExcelをテンプレートとして使えるし、その過程で関数なども使用できる。これはExcel使いの自分としてはかなりアドバンテージが高い。普段使用しているExcelファイルをちょっといじればOKだなと余裕かましていた。

ここでふと「無料版ではテンプレート登録が1件!?」という仕様に戸惑った。その都度Excelファイルを選び直せば問題なしだろう勝手に考えていたが、そうはいかなかった。いや、選ぶことはできるが差込部分の変数についてはテンプレート登録しないと都度紐づけが必要だった。これでは紐づけ変数が大量にあると非常な労力を要する。正直いやだ。これはまずい。何か解決策は…と考えて「ブックにシートを複数テンプレートとして入れておいて、切り替えるとかあり!?」と思い付いた。

結果、これは上手くいった。その都度テンプレシートを指定すれば問題ない。正直よく気付いた自分!の自画自賛状態だった。

しかし!

よ~~~~く説明読んだらそういった使い方に触れていた。想定内の使用方法だった。だよね。道理でシートの切り替えプルダウンがあるわけだ。

説明はよく読みましょう…

新年の教訓。

その後のデータベース(その1)

プリザンターは保留とした。ダウンロード版は環境構築に時間がかかりそうだからだ。Web版はすぐ使えそうだが踏ん切りがつかないでいた。どうも決め手に欠ける宙ぶらりんな状態で保留にしていた。

そうはいってもこれ以上条件にかなうものも見つからないだろうし、この辺で覚悟を決めて運用準備をはじめてょうが賢明かとも考えていた。

ここで条件を整理する。

  1. オープンソースかフリーのもの
  2. 日本語解説が入手しやすい
  3. クラウド対応できる
  4. リレーショナルデータベース
  5. 帳票印刷やラベル印刷しやすい
  6. データの加工がしやすい

1は一度挫折してAccessを手にしたが、やはり好きになれない。最悪最後の最後で他に候補がないとなればあきらめてAccessを選ぶしかないと考えていた。結果ここまでにネットで見つけたものは以下のものだった。
2は最悪英語くらいはあきらめて読むことにする。
3は状況次第。
4はリレーショナルでなくでもよしとする。
5は最悪CSV出力で印刷するか…。
6は簡単な関数が使えたりするとbetter

以下がこれまでに見つけたもの。

そのほか、Mysqlとかをphpで操作することも考えたが、自作した場合ソフトの堅ろう性や十分なセキュリティの確保に自信がなかった。

結果的にデータを入れてテストまで漕ぎつけたのはFullfreeだった。

目標思考と調理

調理は段取りと状況把握、改善の繰り返しだ。実験と同じだ。

理由については散見されるのでここでは書かない。しかし、それを実感したのは最近だ。いったい何年自炊やらをしているのかと自分にあきれる。

以前の記事に目分量で調理することを書いた。好みの味を作ったりや手間の削減をするためには、いわゆるマニュアルやレシピから少し離れる必要があるからだ。そのための試行錯誤が繰り返されるわけだ。しかしその過程であまり大げさな失敗はできるならしたくない。食材がもったいないし、食べて片付けるのもしんどいからである。

だから段取りと状況把握だ。

その一方で割とはっきりしていることは「おいしいものを食べたい」という目的である。学生時代に卒論の目的を何とかでっちあげるような苦労はここにない。そしてその目的達成のために何らかの調理を行なって特定の料理を作るわけだ。

目標だ。

幸い、レシピの公開や写真等が普及した現代では料理のゴールは想像しやすい。こうなるはずだという目標が分かりやすい。あとは調理の過程でエラーとなるところを見つけ、修正すればよい。仮説検証だ。

実に論理的だと思う。ただしあくまでもトライ&エラーの繰り返しなのでそれほど効率的だとは言えないが、ゼロから始めるよりスタートもゴールもわかりやすい分道筋が見えやすい。

とはいうものの普段はこんなことを考えながら食事をとっているわけではない。科学実験ではあるまいし無粋だ。それでも、たまに失敗を面白がる手段としてこういった思考で取り組むのもよいだろうということでしかない。

レシピでの材料の分量は重さか体積で統一してほしい

1つの料理のレシピを掲載するときは材料の分量は重さか体積で統一してほしい。表記はどちらでも構わないのだが、混在すると換算が面倒だ。洗い物も増える。

体積ならば大きな計量カップに材料を入れていくだけ。

重さならば秤の上にボウルを置いて材料を入れていくだけ。

中には厳密な量を求める料理もあるが、大概は何となく大丈夫だ。商品ならばきっちり作るべきだろうが、ホームメイドなら洗い物は少なくしたいし、手軽に作って食べたい。もともと料理自体はそんなものだろうし。

慣れてしまえば目分量でできるから構わないのだが、慣れるまで、覚えるまではある程度目安が欲しい。

何事もシンプルに。それが一番。

Windows 10 May 2019 Updateとかいうやつ

あまり改善された気がしない。これまで特に不自由を感じていないからだろう。いや、不自由はあるがそれ自体が「余計なお世話」的機能なので半ばあきらめているものが多い。

もしかしたら使いやすくなっているのかもしれないが、いままでその期待に応えてもらえていない気がするので、放置。いうほど便利になった気がしないのはマイナスがゼロになったからか?それはそれで開発者が気の毒な気がしないでもない。

あえて言うなら、これ以上余計なことをしないでWindowsを改悪しないでほしい…と切に願う。

PDF出力(その6)

背景画像の上に文字を出力できるところまでできた、その後の話。

PDF出力に使用しているtcpdfに含まれている日本語フォント(小塚フォント)だとなぜか出力されない文字があり、それが致命的だったので別のものに変えた。結果としてメイリオを入れた(つもり)。これもいくつかンフォントを試したがすんなりいかず、結局どっかのサイトで紹介されていたものを丸ごとそのまま試して何とかなったのがこれだった。

その後phpでフォームに入力したIDとパスワードでデータを検索して該当するものをPDF表示するところまでこぎつけた。レイアウトもtcpdfが一部のhtmlを表示できることからtableタグを駆使して解決した。

数年前には(シンプルで分かりやすい)情報の少なさにあきらめていたPDF出力が、今回はネットにある情報をほぼそのまま利用してどうにか目的に到達した。ライブラリをはじめ各種貴重な情報を公開している皆さんに感謝。

よくはまるミス

設定や作業でよくドツボるミス。

パスのミス。特にFTPとかで送信先ディレクトリまでのパスなど。ホームとかどこなんじゃ?とはまる。サンプルのディレクトリ構造を理解しかねるときに多い。

同様にlinuxとかでもパスミスはよくある。この辺が面倒でできれば避けたい。

スペースに気づかない。なぜかスクリプトとか動かない時に多い。

文字コード。Windowsの罠。

略語。

ライブラリ設置。依存するライブラリを探すのに一苦労することもある。またサーバーにインストールする際にshellを介する必要があると一気に敷居が高くなる。同様に自分でmakeをする必要があるときも。つい実行ファイルを探しに行く。

PDF出力(その4)

文字コードとパス。そしてコマンドプロンプトでの作業。

オープンソースなどを自力で自分の環境に合わせようとするとき、これが一番厄介だ。特に自分のようにできるだけ面倒は避けたい(ここでいう面倒というのは初心者レベルの手抜き)とドツボりやすい。

文字コードが原因でPDFが作成できないことは解決できた。UTF-8NでTCPDF周りを扱うことが解決策だった。そのためには解凍ソフトやエディタ、アップロードソフトの文字コード扱いを再確認することが必須だった。

次に背景画像の読み込み。これはパスをこれでもかくらいに確認しろ!ということだ。特にサンプルコードを改変する場合はどこにどうパスが通っているのか理解するべきだ。

コマンドプロンプトは日常Windowで事務作業をしている限りほとんど使わないので、パソコンのどこにあってどう呼び出すかを思い出すのに苦労するようになったため、あまりさわりたくない。ましてや、参考にしている情報がLinuxとiOSとかでのものなら一度はあきらめて、他をあたる。そしてどうやらそれしか方法がないらしいと思いいたって初めて取り掛かる。

実際問題、この辺が面倒だから「アップロードしたらすぐ使えるもの」が欲しくなるわけです(笑)
それを素直に掲示板で発信しちゃうと怒られちゃうので、必死に探して何とかする(笑)

PDF出力(その3)

え~と。WordPressをアップデートしたら編集画面が訳わからん。余計なことしないでほしい。PDF云々の前にこちらを何とかしないと使いにくくてかなわん。

気を取り直して。

文字コードについては、やはり解凍ソフトとFTPソフトとエディタの設定が影響していた。パソコンを変えたためソフトの設定が中途半端だったのが原因。いずれもUTF8対応にし、サンプルの表示に成功した。

TCPDFはHTMLで書いたものをPDF出力してくれるらしいので、あとは楽勝か?とか思ったのは甘かった。

CSSがほとんど効かない。となると、差し込み印刷するには背景画像でテンプレを表示するしかないか。日本語表示もなんかピンとこない状態…ネットでも同じようなつまずきが散見されたが、これらの解決は自分にとってなかなか手ごわかった。
まあ、なるべく手抜きをしようとしているのでネットを参考にしつつも「こんな感じかな」とテキト~に作業をしているので、結構頻繁にドツボること。自業自得。
一番ドツボったのはパスだった。サンプルが動いているので、それを書き直していたが、思うような結果が得られない。パスを書き直ししているはずなのに、目的のファイルにたどり着いていない。

結果的に一応これらは解決して、次は差し込みテストに取り掛かれるまでこぎつけた。

この時点で気になるのは、日本語表示に小塚を呼び出しているのだが、表示されない文字がある。フォントは弄っていない。第1水準(だと思う)漢字なのになぜ???人名とか大丈夫なのか?

PDF出力(その2)

以前探したときにもしPDF化するならば「TCPDF」が一番取り組みやすそうだと目をつけていた。

テストもしているのだが、以前も今回も日本語表示でつまずいた。

文字コードが原因であることは自明なのだが、なぜか自分のPC環境でそれを回避できない事態になっているのだ。

以下の問題点に悩んだ。

  1. tcpdfライブラリを解凍・展開するとなぜか文字コードがSJISになっている。
  2. 解凍したファイル群UTF-8に直しアップロードするが、サーバーにはSJISでアップされている
  3. サーバー上でUTF-8に修正保存しなおし、テストファイルUTF-8でアップするが、エラーになる。

SJISで引っかかっていることは確信しているので、文字コードが原因出ることも確信しているのだが、何をやってもSJISが付きまとう。

少なくともテストファイルとライブラリの文字コードは同じにする必要があるはずなので、根本的なところで文字コードがきちんとなっていないであろうとあたりをつけた。

怪しいのは作業に使用しているアプリだろう。
圧縮・解凍ソフト、エディタ、SFTPの文字コードの扱いが変なのだろうということでこれを機に設定を改めて見直すことにした。