kazpgmの日記

『プログラム自動作成@自動生成』作成の日記

TOOL更新_自動作成◎自動生成プログラム中のSQL、DB更新ロジックに項目日本語名コメントを自動作成した。

・自動作成◎自動生成プログラム中のSQL、DB更新ロジックに項目日本語名コメントを自動作成◎自動生成した。
PGM中の以下箇所がターゲット。

  • PGM<<009>>
  • PGM<<004>>
  • PGM<<005>>
  • PGM<<010>>
  • <=9/10追加 初期データアップロードの「fgetExcelCSV($fp)」でデータを取得しているところ

■--PGM<<009>>はこんな感じになった。

$sql = <<<__SQL__
SELECT 
    -- ■--PGM<<009>> start--------------------------------------------
      co.corpcd, --  法人ID
      co.pass, --  パスワード
      co.corpnm, --  企業名
      co.corpkn, --  企業名(カナ)
      co.psno, --  郵便番号
      co.tdfknm, --  都道府県コード
      co.adrs1, --  住所1
      co.adrs2, --  住所2
      co.map, --  地図
      co.depart, --  部署名
      co.post, --  役職名
      co.tansei, --  担当者姓
      co.tanmei, --  担当者名
      co.tanseijco, --  担当者姓フリガナ
      co.tanmeijco, --  担当者名フリガナ
      co.telno, --  電話番号
      co.faxno, --  FAX番号
      co.mladrs, --  メールアドレス
      co.biztype, --  業種ID
      bt.bizname, --  業種
      date_format(co.insdt, '%Y/%m/%d %H:%i:%s') AS insdt, --  登録日時
      date_format(co.updt, '%Y/%m/%d %H:%i:%s') AS updt --  更新日時
    -- ■--PGM<<009>> end--------------------------------------------
FROM t_corp co left join m_biztype bt on (co.biztype = bt.biztype) 
$conditions 
ORDER BY 
    -- ■--PGM<<009>> start--------------------------------------------
      co.corpcd, --  法人ID
      co.pass, --  パスワード
      co.corpnm --  企業名
    -- ■--PGM<<009>> end--------------------------------------------
__SQL__;
  $result = dbCheck($db->getAll($sql));

■--PGM<<010>>はこれになった。

    // ■--PGM<<010>> start--------------------------------------------
    $_REQUEST['corpcd'] =  getDbSeq($db, 't_corp', $_REQUEST); // 法人ID
    // ■--PGM<<010>> end--------------------------------------------
  $columns = array(
    
    // ■--PGM<<010>> start--------------------------------------------
    'corpcd'     => $_REQUEST['corpcd'], // 法人ID
    'pass'     => $_REQUEST['pass'], // パスワード
    'corpnm'     => $_REQUEST['corpnm'], // 企業名
    'corpkn'     => $_REQUEST['corpkn'], // 企業名(カナ)
    'psno'     => $_REQUEST['psno'], // 郵便番号
    'tdfknm'     => $_REQUEST['tdfknm'], // 都道府県コード
    'adrs1'     => $_REQUEST['adrs1'], // 住所1
    'adrs2'     => $_REQUEST['adrs2'], // 住所2
    'map'     => $_REQUEST['map'], // 地図
    'depart'     => $_REQUEST['depart'], // 部署名
    'post'     => $_REQUEST['post'], // 役職名
    'tansei'     => $_REQUEST['tansei'], // 担当者姓
    'tanmei'     => $_REQUEST['tanmei'], // 担当者名
    'tanseijco'     => $_REQUEST['tanseijco'], // 担当者姓フリガナ
    'tanmeijco'     => $_REQUEST['tanmeijco'], // 担当者名フリガナ
    'telno'     => $_REQUEST['telno'], // 電話番号
    'faxno'     => $_REQUEST['faxno'], // FAX番号
    'mladrs'     => $_REQUEST['mladrs'], // メールアドレス
    'biztype'     => $_REQUEST['biztype'], // 業種ID
    'deldt'     => $_REQUEST['deldt'], // 削除日時
    'deldt'     => '0000/00/00 00:00:00', // 削除日時
    'insdt'     => date( 'Y/m/d H:i:s' ), // 登録日時
    'updt'     => date( 'Y/m/d H:i:s' ) // 更新日時
    // ■--PGM<<010>> end--------------------------------------------
  );
    $itemNames = array();
  $itemNames[] = 'map';
  setAndDelPhoto('corp', $columns['corpcd'] , $itemNames, $columns, 'ins_do');
  $sql = 'begin';
  dbCheck($db->query($sql));
  dbInsert($db, 't_corp', $columns);
  $sql = 'commit';
  dbCheck($db->query($sql));

■ <=9/10追加 初期データアップロードの「fgetExcelCSV($fp)」でデータを取得しているところ

    while( $data = fgetExcelCSV($fp) ) {
        $vars = array();
        $vars['corpcd'] = mb_convert_encoding($data[0],"UTF-8","SJIS-WIN"); // 法人ID
        $vars['pass'] = mb_convert_encoding($data[1],"UTF-8","SJIS-WIN"); // パスワード
        $vars['corpnm'] = mb_convert_encoding($data[2],"UTF-8","SJIS-WIN"); // 企業名
        $vars['corpkn'] = mb_convert_encoding($data[3],"UTF-8","SJIS-WIN"); // 企業名(カナ)
        $vars['psno'] = mb_convert_encoding($data[4],"UTF-8","SJIS-WIN"); // 郵便番号
        $vars['tdfknm'] = mb_convert_encoding($data[5],"UTF-8","SJIS-WIN"); // 都道府県コード
        $vars['adrs1'] = mb_convert_encoding($data[6],"UTF-8","SJIS-WIN"); // 住所1
        $vars['adrs2'] = mb_convert_encoding($data[7],"UTF-8","SJIS-WIN"); // 住所2
        $vars['map'] = mb_convert_encoding($data[8],"UTF-8","SJIS-WIN"); // 地図
        $vars['depart'] = mb_convert_encoding($data[9],"UTF-8","SJIS-WIN"); // 部署名
        $vars['post'] = mb_convert_encoding($data[10],"UTF-8","SJIS-WIN"); // 役職名
        $vars['tansei'] = mb_convert_encoding($data[11],"UTF-8","SJIS-WIN"); // 担当者姓
        $vars['tanmei'] = mb_convert_encoding($data[12],"UTF-8","SJIS-WIN"); // 担当者名
        $vars['tanseijco'] = mb_convert_encoding($data[13],"UTF-8","SJIS-WIN"); // 担当者姓フリガナ
        $vars['tanmeijco'] = mb_convert_encoding($data[14],"UTF-8","SJIS-WIN"); // 担当者名フリガナ
        $vars['telno'] = mb_convert_encoding($data[15],"UTF-8","SJIS-WIN"); // 電話番号
        $vars['faxno'] = mb_convert_encoding($data[16],"UTF-8","SJIS-WIN"); // FAX番号
        $vars['mladrs'] = mb_convert_encoding($data[17],"UTF-8","SJIS-WIN"); // メールアドレス
        $vars['biztype'] = mb_convert_encoding($data[18],"UTF-8","SJIS-WIN"); // 業種ID
        insDoTbl($vars);
    }

■どんな風に変わったかをDFツールで比較した

・WEBのPGM見本は明日載せなおす予定。
 <=9/9 http://kazpgm.ddo.jp/kaz01u/upload/doc/corpA.php_Samplehttp://kazpgm.ddo.jp/kaz01u/upload/doc/iUpcorpACsv.php_Samplehttp://kazpgm.ddo.jp/kaz01u/upload/doc/Admin_pgm_Doc.xlsを載せなおした。

・途中でやめるとどんな直しを入れたかわからなくなりそうなので一気にプログラムした。明日さらにデバックしようと思う。自動作成◎自動生成後のソース。かなり読みやすくなった。ちょっとうれしい。
 <=9/9 デバックした。コメントにWEB画面上の日本語項目名を使っていた。が、テーブル項目日本語名に変更した。(WEB画面上の日本語名は見栄えによって変更されてしまうので)

■サイト:http://kazpgm.ddo.jp/

9/8(火) 21:00-04:40
9/9(水) 22:00-23:30
9/10(木) 20:30-21:30