移行ツール案件Tips
【プログラミング全般】
Releaseモードでの絵エラー調査方法
printfを入れまくって、どこまで動いているか確認する
【C言語】
インクルードディレクトリの設定
プロジェクト⇒プロパティ⇒構成プロパティ⇒C/C++⇒追加のインクルードディレクトリ
../../../../../inc:%(AdditionalIncludeDirectories)
Pro*C(Subフォルダ内)のビルド
ライブラリファイルとして、ビルドすると.libファイルを追加
libファイルを追加のライブラリファイルとして追加しておくことで、実行するときに
読み込んでくれる
Pro*CをC言語にコンパイルする際のカスタムビルドツール設定
call vcvars32.bat
出力ファイルの場所
$(ProjectDir)$(InputName).c;%(Outputs)
PathFileExistA@4のエラーになる
#pragma comment(lib, "Shlwapi.lib")
をインクルードする
構文エラー:';'が型の前にありません。エラーが出たら
⇒C言語では変数宣言が途中にあるとエラーを吐く。
BREAKを使用してえらーがあった際に一気に飛ばす為に使用されるコード
do
{
エラー処理があった場合 break;
}while(false);
DLLとかの参照先を設定する方法
ツール⇒オプション⇒ディレクトリ
インクルードファイル⇒ヘッダファイルを格納
実行可能ファイル⇒DLL
ライブラリファイル⇒LIB
VC6.0操作法
左側のソース一覧画面を間違えて閉じてしまった場合の表示方法
表示⇒ワークスペース
ソースウィンドウとワークスペースが別々に表示されるようになってしまった場合の元に戻す方法
ワークスペースウィンドウを表示中に右クリック⇒ドッキングビュー
【Oracle】
Oracleで使用文字コードを取得する
SELECT
VALUE
FROM
NLS_DATABASE_PARAMETERS
WHERE
PARAMETER='NLS_CHARACTERSET'
文字コードの問題点
NCHAR、NVARCHARは、Unicodeのため、プログラムで文字コード変換処理が必要な場合
(DBのデータがSHIFT-JISでUNICODEで出力する場合)
注意する。
1行だけ取得する
WHERE ROWNUM <= 10
テーブル間で、指定した値があるか判断する方法
EXISTS( SELECT 'X' FROM A_TABLE WHERE A_TABLE.A_DATA = B_TABLE.B_DATA)
主キーに重複データの抽出方法
SELECT
主キー項目
FROM
テーブル
GROUP BY
主キー項目
HAVING
COUNT(*) > 1
【SQL PLUS】
SQLログ(SPOOL)を行う
SPO ON
SELECT * FROM A_TABLE
SPO OFF
【Excel】
あるセルの色が~だったらその行ごと色を変える方法
①色を変えたいセルを1行選択する
②条件付書式⇒新しいルール⇒数式欄に判定させる値が入る予定のセルを指定し、条件を入れる
③例)=$G7="CHAR"
指定した箇所だけ抜き出して表示する
=MIDO(B17, 16, FIND("]",B17,1)-16)
ダブルコーテーションが着いた状態でエクセルに貼り付ける方法
①エクセルのシートを全体選択(Ctrl + A)し、右クリック⇒書式設定⇒文字列に設定。
②テキストからエクセルに貼り付けを行う
③Ctrlボタン⇒テキストファイルウィザードを使用
④区切り文字を「タブ」、引用符を「なし」に設定する
ワードに貼り付けるときに改行がいろいろ付いてコピーできない場合
一度ワードに貼り付けてから、テキストのみ保持にしたやつを再度コピーしてみる?
改行を検索する方法
検索ボックスを指定した状態で、Ctrl+Jキーを謳歌する。
⇒見た目上は変わらないが、検索するとちゃんと検索できる
⇒検索し終わったら検索メニューでDELETEキーを押してリセットすること
オブジェクトの選択数により処理を分岐する方法
If TypeName(Selection) <> "DrawingObjects" Then
一つにしか選択していない場合
ELSE
二つ以上選択している場合
END IF
テスト仕様書作成方法
汎用的に仕様書を作成できるよう、
データを紐付けて一箇所変更すれば固有の場所がVLOOKUPを使用して
すべて一括で編集できるようにする
【秀丸】
タブの文字をすべて表示する方法
タブを右クリック⇒タブの詳細
ウインドウ幅からはみ出すとき⇒複数段
半角、全角スペースを表示する
「その他」-「ファイルタイプ別の設定」-「表示とカラー」で設定できます。
【プロジェクト反省点】
・製造段階で気づくべきだったこと
フラッシュのタイミング
⇒少なくともログは一度ごとにフラッシュしないとエラーの箇所が分からない
トランザクション(COMMIT、ROLLBACK)のタイミング
⇒どの単位で実施するかまで、プロジェクトにあわせて最初に考えておくこと
ログの出力内容、タイミング
INFOにしたときに何の情報をどのようなフォーマットで出力するか早く確定すべきだった。
日付 ファイル名 行数 項目 エラー内容(「どの行」の「どの項目」が「どんな理由で」エラーになったかが分かるように)
エラーになったらそこで終わるもの、ある程度進めてから終わりにするものがある。
例)共通部品 すぐにエラーで返す
メイン 一行すべてエラーを出し切ってからまとめてエラーを出す
・エビデンス格納方法
テスト仕様書の確認項目毎に番号を振り、エビデンスフォルダ内に番号単位でフォルダ分けし、
テスト仕様書とエビデンスの確認結果が紐付くようにして、
他人から見てもエビデンスと仕様書の関係が分かるようにする
・エビデンス格納時の考慮内容
テスト番号の大項目ごとにフォルダ分けする
改ページで収まるようにする
改ページ毎に罫線を引く
ページヘッダー、フッター設定
・SQL文の確定
マッピング資料で項目が確定した時点で、
早い段階で実際にSQLを作っておくようにする
・テスト方法
出力されたデータがDBからのデータの場合、テーブルの値と比較して
正しく値を取得できているか確認する
出力データ A_TABLE
"aaa" aaa
①新システムDBの型と、現行DBの型を意識する。
現行DBの型がCHAR型で空文字だった場合を考慮し、
NOT NULL制約の型の場合は、初期値で0を格納する。
②CSV出力する場合は、現行DBの値が改行コード格納可能か調査
仕切れない為、予め改行コードは削除する。