Loading...

社内システム開発日記:その90

前書き

お疲れ様です!
小手投げです。

テレビをつけたら大相撲トーナメントがやっていました。
稀勢の里が決勝戦以外は危なげなく勝ち、優勝を果たしました。
白鵬、鶴竜、琴奨菊が初戦で姿を消してしまっていたのが気がかりです。

今回は日記です。

日記

reportにRecordsを設定しないとディテールが表示されない
だがデータをファイルから読み込んでるわけでもないのでReadTextFileするのはちょっと
返り値の[]interface{}を突っ込んでみるがダメ
[]interfaceをmakeして突っ込んでみる、ダメ
↑の後、空文字を追加してやるとうまくいった
1行にしたくて最終的に[]interface{}{“”}に落ち着いた

データがページに収まりきってないので文字のサイズや高さを縮める
internalエラー
設定ファイルに同じキーを2回書いてしまう

プロジェクトデータを成形するときに抜け落ちている文字がある
今のロジックは
・元の文字列を改行文字で分割
・分割された文字列について1文字ずつ幅をカウントして合計、文字列を足していく
・合計幅が一定を超えたら持ってる文字列を配列に出して合計幅、文字列をリセット
という感じにしていた

1文字ずつ処理する箇所でstringからruneに型変換されているので、
そこでうまくいっていないのかと思い次のように変えてみる
・元の文字列を改行文字で分割
・分割された文字について1文字ずつ幅をカウントして合計
・合計幅が一定を超えたら分割された文字列に[開始位置:現在の文字位置]で配列に取り出す
・開始位置を現在の文字位置に置き代え、合計幅をリセット

前よりは良くなったものの、直りきっていない

部長に生産性向上委員会議事録で不明瞭な点のヒアリングをする

改行文字で分割した時点でのデータを見てみる
分割はきちんとされているように見えるが、ログに時間が出ていない行がある
改行文字が混在しているのでは?

正規表現で\r\nと\rを\nに置換して\nで分割
書き出す文字に\rが残ってしまう

正規表現でやる必要はないのではと思い文字列で置換、分割
上手くいった

あてずっぽうでやらずに原因を究明してから動くべきだな…

ブログの執筆公開

2ページ目以降の追加をどこでやっているかなかなか分からない
部長にデバッグの仕方を教えてもらう
関数の定義や変数の中身をプリントせずにIDEで直接参照する

サンプルでヘッダー、ディテールはただのBandなのに、
サマリーがGroupBandなのが関係あるかも
report.Recordsの値で処理を分岐しているところも気になる

後書き

改行文字がどこで混在したのか謎です。

ドキュメントがなく改ページの仕方が分からないのでトライ&エラーで探しています。

ではまた次回。

情報戦略テクノロジー