TOOL更新_”バグ情報など”を一つづつ修正している。
TOOL更新_”バグ情報など”を一つづつ修正している。
今日はここまで修正した。まだVectorに載せるまでにはいたっていない。
201101122100のTOOL修正内容.txt 【0】『kaz_PHP自動作成◎自動生成お助けTOOL』に以下の修正を行いました。 a.『バグ情報など』(http://kazpgm.ddo.jp/bugInfo.html)の5.をツールに反映しました。 『AppCheckUtil.php』のcheckIUPPhotoメソッド修正 内容:『初期データアップロード管理』の画像、ファイル名のチェック処理の間違い修正。 補足ですが当システムでの、画像名は”英字項目名.拡張子”例:map.gifです。 保存場所もプライマリーキーのフォルダの下ということに決まっています。 ■201101122100_からの作成例\kaz_PHP自動作成◎自動生成お助けTOOL\ 作成先フォルダ\.kazphp\common\AppCheckUtil.php 修正 ■201101122100_からの作成例\kaz_PHP自動作成◎自動生成お助けTOOL\ 作成先フォルダ\.システムphpBasePgm\common\AppCheckUtil.php 修正 ■kaz_PHP自動作成◎自動生成お助けTOOL\ 作成先フォルダ\.システムphpBasePgm\common\AppCheckUtil.php 修正 <<修正後>> // 初期UPLOAD時のファイル名チェック function checkIUPPhoto(&$vars, &$errorMessages, $typeNm, $result, $data, $inputCheck, $elementsIdx = '0', $exts = array( "jpg", "jpeg", "gif", "png" )) { // 未入力をエラーとするかしないかの切り分け(未入力時は処理終了) if (empty($vars[$data])) { if ($inputCheck == true ) { // 未入力をチェック // ?を入力してください。 if ($elementsIdx == '0') { $errorMessages[$data] = '『' . $typeNm . '』を入力してください。'; } else { $errorMessages[$data] = 'Please input "' . $data . '"'; } return false; } return $result; } if (mb_strlen($data) < mb_strlen($vars[$data])) { if (($data . '.') != mb_substr($vars[$data], 0, mb_strlen($data)+1)) { if ($elementsIdx == '0') { $errorMessages[$data] = '『' . $typeNm . '』のファイル名は『' . $data . '.』で始めてください。'; } else { $errorMessages[$data] = 'Please input "' . $data . '"file name start "' . $data . '."'; } return false; } } else { if ($elementsIdx == '0') { $errorMessages[$data] = '『' . $typeNm . '』のファイル名は『' . $data . '.』で始めてください。'; } else { $errorMessages[$data] = 'Please input "' . $data . '"file name start "' . $data . '."'; } return false; } chkExtension( $vars[$data], $exts, $errorMessages[$data] ); if (''!= $errorMessages[$data]) { return false; } return $result; } b.『バグ情報など』(http://kazpgm.ddo.jp/bugInfo.html)の7.をツールに反映しました。 定義エクセルのK列(項目チェック内容)に ”シーケンス(同一親キー内SEQ数字)”を選んだとき使用している雛形に 足りない部分があった。 (「db_functions.php」で同一親キー内SEQ数字を取得すると ALIASがないというSQLエラーになります。) ■201101122100_からの作成例\kaz_PHP自動作成◎自動生成お助けTOOL\ hinagata\Model\db_functions_getdbseq_case_03.txt 修正 ■kaz_PHP自動作成◎自動生成お助けTOOL\ hinagata\Model\db_functions_getdbseq_case_03.txt 修正 7行目 <<修正前>> WHERE ■{WHERE_DOITSU_KEY_NAI_STRING}■) <<修正後>> WHERE ■{WHERE_DOITSU_KEY_NAI_STRING}■) a c.『バグ情報など』(http://kazpgm.ddo.jp/bugInfo.html)の7.をツールに反映しました。 「小数点なし及びカンマあり数値」も属性=BIGINTで使うと maxlength=0とかに自動作成◎自動生成されて使えないバグを修正した。 ■『PHP作成マクロ(お助けTOOL).xls』のVBA『module1』 修正 Private Function 入力値チェック作成(j, SRCH区分) ・・・ <<修正前>> If UBound(桁数指定項目内容) = 0 Then 桁数 = 桁数指定項目内容(0) ElseIf UBound(桁数指定項目内容) = 1 Then min = 桁数指定項目内容(0) max = 桁数指定項目内容(1) ElseIf UBound(桁数指定項目内容) = 4 Then min = 桁数指定項目内容(0) max = 桁数指定項目内容(1) 整数 = 桁数指定項目内容(2) 少数 = 桁数指定項目内容(3) End If <<修正後>> If UBound(桁数指定項目内容) = 0 Then 桁数 = 桁数指定項目内容(0) ElseIf UBound(桁数指定項目内容) = 1 Then min = 桁数指定項目内容(0) max = 桁数指定項目内容(1) 桁数 = (Log(max) / Log(10)) + 2 ElseIf UBound(桁数指定項目内容) = 3 Then min = 桁数指定項目内容(0) max = 桁数指定項目内容(1) 整数 = 桁数指定項目内容(2) 少数 = 桁数指定項目内容(3) 桁数 = (Log(max) / Log(10)) + 2 桁数 = 桁数 + 少数 + 1 End If Private Function JSP項目値作成(j, SRCH区分, KBN) ・・・ <<修正前>> If UBound(桁数指定項目内容) = 0 Then 桁数 = 桁数指定項目内容(0) ElseIf UBound(桁数指定項目内容) = 1 Then min = 桁数指定項目内容(0) max = 桁数指定項目内容(1) ElseIf UBound(桁数指定項目内容) = 4 Then min = 桁数指定項目内容(0) max = 桁数指定項目内容(1) 整数 = 桁数指定項目内容(2) 少数 = 桁数指定項目内容(3) End If <<修正後>> If UBound(桁数指定項目内容) = 0 Then 桁数 = 桁数指定項目内容(0) ElseIf UBound(桁数指定項目内容) = 1 Then min = 桁数指定項目内容(0) max = 桁数指定項目内容(1) 桁数 = (Log(max) / Log(10)) + 2 ElseIf UBound(桁数指定項目内容) = 3 Then min = 桁数指定項目内容(0) max = 桁数指定項目内容(1) 整数 = 桁数指定項目内容(2) 少数 = 桁数指定項目内容(3) 桁数 = (Log(max) / Log(10)) + 2 桁数 = 桁数 + 少数 + 1 End If d.『バグ情報など』(http://kazpgm.ddo.jp/bugInfo.html)の8. 今日は解決しなかった。また明日から調査する。 e.『バグ情報など』(http://kazpgm.ddo.jp/bugInfo.html)の9.をツールに反映しました。 「★TOOL用コンスタント★」シートの以下項目が空の場合、 マクロ(『PHP作成マクロ(お助けTOOL).xls』の)実行時にエラーを表示するようにしました。 『C_SYSTEM_TITLE_KANJI = 』 『C_BASE_USER_DIR_THE_SAME_SERVER_DIR = 』 『C_BASE_ADMIN_DIR = 』 『C_SEQ_GET_TIMING = 』 『C_LIST_NUMBER_DISP = 』 『C_CSV_CODE_VALUE = 』 『_LIST_ASC_DESC_ADMIN = 』 『_LIST_ASC_DESC_USER = 』 『C_ROOT_DIR = 』 『C_HISSU_RED_DISP = 』 『C_DB_TABLE_TYPE = 』 『C_TEL_HYOUJI = 』 『C_HISSU_HYOUJI = 』 『C_COPYRIGHT_STR = 』 ■『PHP作成マクロ(お助けTOOL).xls』のVBA『module1』 修正 <<追加 start>> Private Function TOOL用コンスタント必須項目チェック() TOOL用コンスタント必須項目チェック = True If "" = ActiveWorkbook.Sheets("★TOOL用コンスタント★").Range("C_SYSTEM_TITLE_KANJI") Then TOOL用コンスタント必須項目チェック = False MsgBox ("「★TOOL用コンスタント★」シートの「C_SYSTEM_TITLE_KANJI = 」項目が空白です。指定してください。") End If If "" = ActiveWorkbook.Sheets("★TOOL用コンスタント★").Range("C_BASE_USER_DIR_THE_SAME_SERVER_DIR") Then TOOL用コンスタント必須項目チェック = False MsgBox ("「★TOOL用コンスタント★」シートの「C_BASE_USER_DIR_THE_SAME_SERVER_DIR = 」項目が空白です。指定してください。") End If If "" = ActiveWorkbook.Sheets("★TOOL用コンスタント★").Range("C_BASE_ADMIN_DIR") Then TOOL用コンスタント必須項目チェック = False MsgBox ("「★TOOL用コンスタント★」シートの「C_BASE_ADMIN_DIR = 」項目が空白です。指定してください。") End If If "" = ActiveWorkbook.Sheets("★TOOL用コンスタント★").Range("C_SEQ_GET_TIMING") Then TOOL用コンスタント必須項目チェック = False MsgBox ("「★TOOL用コンスタント★」シートの「C_SEQ_GET_TIMING = 」項目が空白です。指定してください。") End If If "" = ActiveWorkbook.Sheets("★TOOL用コンスタント★").Range("C_LIST_NUMBER_DISP") Then TOOL用コンスタント必須項目チェック = False MsgBox ("「★TOOL用コンスタント★」シートの「C_LIST_NUMBER_DISP = 」項目が空白です。指定してください。") End If If "" = ActiveWorkbook.Sheets("★TOOL用コンスタント★").Range("C_CSV_CODE_VALUE") Then TOOL用コンスタント必須項目チェック = False MsgBox ("「★TOOL用コンスタント★」シートの「C_CSV_CODE_VALUE = 」項目が空白です。指定してください。") End If If "" = ActiveWorkbook.Sheets("★TOOL用コンスタント★").Range("C_LIST_ASC_DESC_ADMIN") Then TOOL用コンスタント必須項目チェック = False MsgBox ("「★TOOL用コンスタント★」シートの「C_LIST_ASC_DESC_ADMIN = 」項目が空白です。指定してください。") End If If "" = ActiveWorkbook.Sheets("★TOOL用コンスタント★").Range("C_LIST_ASC_DESC_USER") Then TOOL用コンスタント必須項目チェック = False MsgBox ("「★TOOL用コンスタント★」シートの「C_LIST_ASC_DESC_USER = 」項目が空白です。指定してください。") End If If "" = ActiveWorkbook.Sheets("★TOOL用コンスタント★").Range("C_ROOT_DIR") Then TOOL用コンスタント必須項目チェック = False MsgBox ("「★TOOL用コンスタント★」シートの「C_ROOT_DIR = 」項目が空白です。指定してください。") End If If "" = ActiveWorkbook.Sheets("★TOOL用コンスタント★").Range("C_HISSU_RED_DISP") Then TOOL用コンスタント必須項目チェック = False MsgBox ("「★TOOL用コンスタント★」シートの「C_HISSU_RED_DISP = 」項目が空白です。指定してください。") End If If "" = ActiveWorkbook.Sheets("★TOOL用コンスタント★").Range("C_DB_TABLE_TYPE") Then TOOL用コンスタント必須項目チェック = False MsgBox ("「★TOOL用コンスタント★」シートの「C_DB_TABLE_TYPE = 」項目が空白です。指定してください。") End If If "" = ActiveWorkbook.Sheets("★TOOL用コンスタント★").Range("C_TEL_HYOUJI") Then TOOL用コンスタント必須項目チェック = False MsgBox ("「★TOOL用コンスタント★」シートの「C_TEL_HYOUJI = 」項目が空白です。指定してください。") End If If "" = ActiveWorkbook.Sheets("★TOOL用コンスタント★").Range("C_HISSU_HYOUJI") Then TOOL用コンスタント必須項目チェック = False MsgBox ("「★TOOL用コンスタント★」シートの「C_HISSU_HYOUJI = 」項目が空白です。指定してください。") End If If "" = ActiveWorkbook.Sheets("★TOOL用コンスタント★").Range("C_COPYRIGHT_STR") Then TOOL用コンスタント必須項目チェック = False MsgBox ("「★TOOL用コンスタント★」シートの「C_COPYRIGHT_STR = 」項目が空白です。指定してください。") End If End Function <<追加 end>> ・・・ Public Sub DDL文作成Otaasuke() ' DDL文を戻す。 <<追加 start>> If TOOL用コンスタント必須項目チェック() = False Then MsgBox ("エラー項目を修正した後マクロを実行してください。") Exit Sub End If <<追加 end>> ・・・ Public Sub writeLbiなどOtaasuke() <<追加 start>> If TOOL用コンスタント必須項目チェック() = False Then MsgBox ("エラー項目を修正した後マクロを実行してください。") Exit Sub End If <<追加 end>> ・・・ Public Sub writePgmOtasuke() <<追加 start>> If TOOL用コンスタント必須項目チェック() = False Then MsgBox ("エラー項目を修正した後マクロを実行してください。") Exit Sub End If <<追加 end>> f.『バグ情報など』(http://kazpgm.ddo.jp/bugInfo.html)の10.をツールに反映しました。 ■201101122100_からの作成例\kaz_PHP自動作成◎自動生成お助けTOOL\ 作成先フォルダ\.kazphp\config.php ■201101122100_からの作成例\kaz_PHP自動作成◎自動生成お助けTOOL\ 作成先フォルダ\.システムphpBasePgm\config.php ■kaz_PHP自動作成◎自動生成お助けTOOL\ 作成先フォルダ\.システムphpBasePgm\config.php config.php <<修正前>> if (strncmp(PHP_OS, 'WIN', 3)) { if (strncmp(PHP_OS, 'WIN', 3)) { define('DSN', 'mysql://uxxx:uxxx@localhost/dbxxx'); } <<修正後>> if (substr(PHP_OS, 0, 3) == 'WIN') { if (substr(PHP_OS, 0, 3) == 'WIN') { define('DSN', 'mysql://uxxx:uxxx@localhost/dbxxx'); }
20110112 20:00-01:30 桁数の求め方。あまり深く考えずに作っていたことを思い出した。これで、いいだろう。
2011/02/15 23:20-23:20 「 桁数 = (max mod 10) + 2」は間違っていた。「桁数 = (Log(max) / Log(10)) + 2」が正しい。