 |
|
| 53 |
手続き定義開始 prc住所検索() |
| 54 |
変数宣言 自動,整数 { &myTblNum , &lookupTblNum } |
| 55 |
変数宣言 自動,文字列 { &住所1 , &住所2 } |
| 56 |
&myTblNum = &hwindow /* &hwindowには現在のフォームの編集対象表番号が収納されています。 */ |
| 57 |
|
| 58 |
表 "郵便番号簿.tbx" |
| 59 |
&lookupTblNum = #IS表 |
| 60 |
|
| 61 |
手続き実行 prc郵便番号簿検索( &lookupTblNum , &m郵便番号 , &住所1 , &住所2 ) |
| 62 |
|
| 63 |
終了 表 &lookupTblNum /* 郵便番号簿を閉じる */ |
| 64 |
|
| 65 |
編集表 &myTblNum /* 住所録の編集対象に戻る */ |
| 66 |
|
| 67 |
変数宣言 自動,長整数{&更新モード} |
| 68 |
メソッド呼び出し @フォーム.更新モード取得(&更新モード) |
| 69 |
if ( &更新モード = 0 ) |
| 70 |
行訂正 [都道府県] = &住所1 , [住所1] = &住所2 |
| 71 |
else |
| 72 |
項目値代入 [都道府県] = &住所1 , [住所1] = &住所2 |
| 73 |
end |
| 74 |
手続き定義終了 |
|
|
|
|
| 94 |
手続き定義開始 cmd住所一括更新Click() |
| 95 |
変数宣言 自動, 数値 { &ans } |
| 96 |
|
| 97 |
手続き実行 prc実行確認( "cmd住所一括更新Click()" , &ans ) |
| 98 |
if ( &ans = 1 ) |
| 99 |
手続き実行 prc住所一括更新実行() |
| 100 |
確認 "完了しました" |
| 101 |
end |
| 102 |
手続き定義終了 |
| 103 |
|
| 104 |
手続き定義開始 prc住所一括更新実行() |
| 105 |
変数宣言 自動,整数 { &myTblNum } |
| 106 |
&myTblNum = &hwindow /* &hwindowには現在のフォームの編集対象表番号が収納されています。 */ |
| 107 |
手続き実行 prc住所一括検索( &myTblNum ) |
| 108 |
編集表 &myTblNum /* 住所録の編集対象に戻る */ |
| 109 |
ジャンプ 行番号 = 先頭 /* 処理が完了したら、先頭行に移動します */ |
| 110 |
手続き定義終了 |
| 111 |
|
| 112 |
手続き定義開始 Xprc住所一括更新実行() |
| 113 |
変数宣言 自動,整数 { &myTblNum , &lookupTblNum } |
| 114 |
変数宣言 自動,文字列 { &郵便番号 , &住所1 , &住所2 } |
| 115 |
&myTblNum = &hwindow /* &hwindowには現在のフォームの編集対象表番号が収納されています。 */ |
| 116 |
|
| 117 |
表 "郵便番号簿.tbx" /* 郵便番号簿を開く */ |
| 118 |
&lookupTblNum = #IS表 /* 郵便番号簿の表番号を取得 */ |
| 119 |
|
| 120 |
編集表 &myTblNum /* 使用する表を 住所録 に切り替える */ |
| 121 |
解除 * |
| 122 |
ジャンプ 行番号 = 先頭 /* 先頭行から順次処理していきます */ |
| 123 |
|
| 124 |
繰り返し ( .not #eof) /* 終端行でなければ。 */ |
| 125 |
&郵便番号 = [郵便番号] |
| 126 |
&郵便番号 = #文字置換( &郵便番号 , "-" , "" ) /* 郵便番号簿検索のため "-" を削除します。
*/ |
| 127 |
|
| 128 |
編集表 &lookupTblNum /* 郵便番号簿に切り替えます */ |
| 129 |
検索 [郵便番号]{ &郵便番号 } |
| 130 |
if ( .not #eof) /* 終端行でなければ。つまり検索値が存在すれば。 */ |
| 131 |
&住所1 = [住所1] , &住所2 = [住所2] + [住所3] |
| 132 |
end |
| 133 |
|
| 134 |
編集表 &myTblNum /* 住所録の編集対象に戻る */ |
| 135 |
&郵便番号 = #部分列( &郵便番号 , 1 , 3 ) + "-" + #右側文字列( &郵便番号 ,4 ) /*
郵便番号に "-" を挿入します。 */ |
| 136 |
変数宣言 自動,長整数{&更新モード} |
| 137 |
メソッド呼び出し @フォーム.更新モード取得(&更新モード) |
| 138 |
if ( &更新モード = 0 ) |
| 139 |
行訂正 [郵便番号] = &郵便番号 , [都道府県] = &住所1 , [住所1] = &住所2 |
| 140 |
else |
| 141 |
項目値代入 [郵便番号] = &郵便番号 , [都道府県] = &住所1 , [住所1] = &住所2 |
| 142 |
end |
| 143 |
|
| 144 |
ジャンプ 行番号 = 次行 |
| 145 |
繰り返し終了 |
| 146 |
|
| 147 |
終了 表 &lookupTblNum /* 郵便番号簿を閉じる */ |
| 148 |
編集表 &myTblNum /* 住所録の編集対象に戻る */ |
| 149 |
ジャンプ 行番号 = 先頭 |
| 150 |
手続き定義終了 |
| 151 |
|
| 152 |
手続き定義開始 cmd住所多重化更新Click() |
| 153 |
変数宣言 自動, 数値 { &ans } |
| 154 |
|
| 155 |
手続き実行 prc実行確認( "cmd住所多重化更新Click()" , &ans ) |
| 156 |
if ( &ans = 1 ) |
| 157 |
手続き実行 prc住所多重化更新実行() |
| 158 |
確認 "完了しました" |
| 159 |
end |
| 160 |
手続き定義終了 |
| 161 |
|
| 162 |
手続き定義開始 prc住所多重化更新実行() |
| 163 |
変数宣言 自動,整数 { &multiTblNum } |
| 164 |
編集表 &hwindow /* &hwindowには現在のフォームの編集対象表番号が収納されています。 */ |
| 165 |
多重化 |
| 166 |
&multiTblNum = #is表 /* 多重化した住所録の表番号を取得 */ |
| 167 |
手続き実行 prc住所一括検索( &multiTblNum ) |
| 168 |
終了 表 &multiTblNum /* 多重化した表を閉じる */ |
| 169 |
編集表 &hwindow /*
確実にもとの編集対象表に戻しておきます。 */ |
| 170 |
ジャンプ 行番号 = 先頭 |
| 171 |
手続き定義終了 |
| 172 |
|
| 173 |
手続き定義開始 Xprc住所多重化更新実行() |
| 174 |
変数宣言 自動,整数 { &multiTblNum , &lookupTblNum } |
| 175 |
変数宣言 自動,文字列 { &郵便番号 , &住所1 , &住所2 } |
| 176 |
|
| 177 |
編集表 &hwindow /* 多重化する前には、基になる編集対象表を指定しておきます。 */ |
| 178 |
多重化 |
| 179 |
&multiTblNum = #is表 /* 多重化した住所録の表番号を取得 */ |
| 180 |
|
| 181 |
表 "郵便番号簿.tbx" /* 郵便番号簿を開く */ |
| 182 |
&lookupTblNum = #IS表 /* 郵便番号簿の表番号を取得 */ |
| 183 |
|
| 184 |
編集表 &multiTblNum /* 使用する表を 多重化した住所録 に切り替える */ |
| 185 |
解除 * |
| 186 |
ジャンプ 行番号 = 先頭 /* 先頭行から順次処理していきます */ |
| 187 |
|
| 188 |
繰り返し ( .not #eof) /* 終端行でなければ。 */ |
| 189 |
&郵便番号 = [郵便番号] |
| 190 |
&郵便番号 = #文字置換( &郵便番号 , "-" , "" ) /* 郵便番号簿検索のため "-" を削除します。
*/ |
| 191 |
|
| 192 |
編集表 &lookupTblNum /* 郵便番号簿に切り替えます */ |
| 193 |
検索 [郵便番号]{ &郵便番号 } |
| 194 |
if ( .not #eof) /* 終端行でなければ。つまり検索値が存在すれば。 */ |
| 195 |
&住所1 = [住所1] , &住所2 = [住所2] + [住所3] |
| 196 |
end |
| 197 |
|
| 198 |
編集表 &multiTblNum /* 多重化した住所録に戻る */ |
| 199 |
&郵便番号 = #部分列( &郵便番号 , 1 , 3 ) + "-" + #右側文字列( &郵便番号 ,4 ) /*
郵便番号に "-" を挿入します。 */ |
| 200 |
変数宣言 自動,長整数{&更新モード} |
| 201 |
メソッド呼び出し @フォーム.更新モード取得(&更新モード) |
| 202 |
if ( &更新モード = 0 ) |
| 203 |
行訂正 [郵便番号] = &郵便番号 , [都道府県] = &住所1 , [住所1] = &住所2 |
| 204 |
else |
| 205 |
項目値代入 [郵便番号] = &郵便番号 , [都道府県] = &住所1 , [住所1] = &住所2 |
| 206 |
end |
| 207 |
|
| 208 |
ジャンプ 行番号 = 次行 |
| 209 |
繰り返し終了 |
| 210 |
|
| 211 |
終了 表 &lookupTblNum /* 郵便番号簿を閉じる */ |
| 212 |
終了 表 &multiTblNum /* 多重化した表を閉じる */ |
| 213 |
編集表 &hwindow /*
確実にもとの編集対象表に戻しておきます。 */ |
| 214 |
ジャンプ 行番号 = 先頭 |
| 215 |
手続き定義終了 |
| 216 |
|
| 217 |
手続き定義開始 prc郵便番号簿検索( 整数 &TblNum , 文字列 &郵便番号 , 参照 文字列 &住所1 , 参照 文字列
&住所2 ) |
| 218 |
&住所1 = #u , &住所2 = #u /* 初期化します。 */ |
| 219 |
編集表 &TblNum /* 郵便番号簿に切り替えます */ |
| 220 |
検索 [郵便番号]{ &郵便番号 } |
| 221 |
* &住所1 = #u , &住所2 = #u /* 検索する前に変数値を初期化します。 */ |
| 222 |
if ( .not #eof) /* 終端行でなければ。つまり検索値が存在すれば。 */ |
| 223 |
&住所1 = [住所1] , &住所2 = [住所2] + [住所3] |
| 224 |
* else |
| 225 |
* &住所1 = #u , &住所2 = #u /* 検索値がない場合、変数の値を初期化します。 */ |
| 226 |
end |
| 227 |
手続き定義終了 |
| 228 |
|
| 229 |
手続き定義開始 prc実行確認( 文字列 &title , 参照 数値 &ans ) |
| 230 |
&ans = 0 /* 参照値の初期化 */ |
| 231 |
変数宣言 自動,文字列{ &WQ = #jis( #hex("22") ) } |
| 232 |
変数宣言 自動, 文字列 { &msg } |
| 233 |
* 変数宣言 自動, 文字列 { &title, &msg } /* &title は、引数ですでに宣言済みです */ |
| 234 |
* 変数宣言 自動, 数値 { &ans } /* 引数ですでに宣言済みです */ |
| 235 |
* &title = "" /* &title の値は引数で受け取り済みです */ |
| 236 |
&msg = &msg + " << 住所を更新します >>" |
| 237 |
&msg = &msg + "\n" |
| 238 |
&msg = &msg + "\n郵便番号から" |
| 239 |
&msg = &msg + "\n都道府県と住所1を更新します。" |
| 240 |
&msg = &msg + "\n" |
| 241 |
&msg = &msg + "\n郵便番号の " + &WQ + "-" + &WQ +" を一旦取り除いて" |
| 242 |
&msg = &msg + "\n郵便番号簿の住所で更新します。" |
| 243 |
&msg = &msg + "\nその後新たに " + &WQ + "-" + &WQ +" を付け直します。" |
| 244 |
&msg = &msg + "\n" |
| 245 |
&msg = &msg + "\n実行しますか?" |
| 246 |
メッセージボックス &title, &msg,ボタン指定 = 2,アイコン = ?,制御文字展開 = する,&ans |
| 247 |
* アイコン = i|?|!|E| 、ボタン指定 = 1:[OK]のみ|2:[OK]と[キャンセル] |
| 248 |
手続き定義終了 |
| 249 |
|
| 250 |
手続き定義開始 prc住所一括検索( 整数 ¤tTblNum ) |
| 251 |
変数宣言 自動,整数 { &lookupTblNum } |
| 252 |
変数宣言 自動,文字列 { &郵便番号 , &住所1 , &住所2 } |
| 253 |
|
| 254 |
表 "郵便番号簿.tbx" /* 郵便番号簿を開く */ |
| 255 |
&lookupTblNum = #IS表 /* 郵便番号簿の表番号を取得 */ |
| 256 |
|
| 257 |
編集表 ¤tTblNum /* 使用する表を 住所録 に切り替える */ |
| 258 |
解除 * |
| 259 |
ジャンプ 行番号 = 先頭 /* 先頭行から順次処理していきます */ |
| 260 |
|
| 261 |
繰り返し ( .not #eof) /* 終端行でなければ。 */ |
| 262 |
&郵便番号 = [郵便番号] |
| 263 |
&郵便番号 = #文字置換( &郵便番号 , "-" , "" ) /* 郵便番号簿検索のため "-" を削除します。
*/ |
| 264 |
|
| 265 |
手続き実行 prc郵便番号簿検索( &lookupTblNum , &郵便番号 , &住所1 , &住所2 ) |
| 266 |
|
| 267 |
編集表 ¤tTblNum /* 住所録の編集対象に戻る */ |
| 268 |
&郵便番号 = #部分列( &郵便番号 , 1 , 3 ) + "-" + #右側文字列( &郵便番号 ,4 ) /*
郵便番号に "-" を挿入します。 */ |
| 269 |
変数宣言 自動,長整数{&更新モード} |
| 270 |
メソッド呼び出し @フォーム.更新モード取得(&更新モード) |
| 271 |
if ( &更新モード = 0 ) |
| 272 |
行訂正 [郵便番号] = &郵便番号 , [都道府県] = &住所1 , [住所1] = &住所2 |
| 273 |
else |
| 274 |
項目値代入 [郵便番号] = &郵便番号 , [都道府県] = &住所1 , [住所1] = &住所2 |
| 275 |
end |
| 276 |
|
| 277 |
ジャンプ 行番号 = 次行 |
| 278 |
繰り返し終了 |
| 279 |
|
| 280 |
終了 表 &lookupTblNum /* 郵便番号簿を閉じる */ |
| 281 |
手続き定義終了 |
| 282 |
|
| 283 |
手続き定義開始 cmd住所併合更新Click() |
| 284 |
変数宣言 自動, 数値 { &ans } |
| 285 |
|
| 286 |
手続き実行 prc実行確認( "cmd住所併合更新Click()" , &ans ) |
| 287 |
if ( &ans = 1 ) |
| 288 |
解除 * |
| 289 |
置換 [郵便番号] = #文字置換( [郵便番号] , "-" , "" ) |
| 290 |
併合 "郵便番号簿.tbx" , 置換 ,
{[郵便番号]照合[郵便番号],[都道府県]複写[住所1],[住所1]複写[住所2],[住所1]連結[住所3]} |
| 291 |
置換 [郵便番号] = #部分列( [郵便番号] , 1 , 3 ) + "-" + #右側文字列( [郵便番号] ,4 ) |
| 292 |
確認 "完了しました" |
| 293 |
end |
| 294 |
手続き定義終了 |