JSlip  1.0
user_item_create.tmplt
Go to the documentation of this file.
1 <?php
2 /**
3  * @link https://datagram.co.jp/source/bksj for the canonical source repository
4  * @copyright Copyright (c) 2006-2019 Datagram Ltd. (https://datagram.co.jp)
5  * @license https://datagram.co.jp/source/bksj/license.txt
6  */
7 
8 $view = $ctrl->view;
9 $bid = $ctrl->bid;
10 $basic = $ctrl->basic;
11 $kcode = $ctrl->kcode;
12 $vopt = $view->validSelect(true);
13 ?>
14 <script type="text/javascript">
15 
16  var my = {
17 
18  errmsg: null,
19  ans: null,
20  next: null,
21  func: null,
22  act: null,
23  v_kcode: null,
24  v_item: null,
25  v_name: null,
26  v_kana: null,
27  v_valid_flg: null,
28 
29  gotoNext: function(func, act) {
30  this.func.val(func);
31  this.act.val(act);
32  this.next.submit();
33  return false;
34  },
35 
36  check: function() {
37 
38  $.ajax({
39  url: '<?= $base ?>',
40  type: 'post',
41  async: false,
42  data: {
43  'func': 'UserItem',
44  'act': 'check',
45  'insert': 1,
46  'bid': '<?= $bid ?>',
47  'kcode': this.v_kcode.val(),
48  'item': this.v_item.val(),
49  'kana': this.v_kana.val(),
50  'name': this.v_name.val(),
51  'valid_flg': this.v_valid_flg.val(),
52  'eod': ''
53  }
54  })
55  .done((data) => {
56  eval("this.ans = " + data);
57  })
58  .fail((data) => {
59  this.ans = {"sts": "NG", "err": "ajax error"};
60  });
61 
62  return this.ans.sts;
63  },
64 
65  regist: function() {
66 
67  var msg = '';
68 
69  if (!confirm("登録しますか?")) {
70  return false;
71  }
72 
73  if (this.check() == 'NG') {
74 
75  for (var i in this.ans.err) {
76  msg += this.ans.err[i] + '<br>';
77  }
78 
79  this.errmsg.html(msg);
80  return false;
81  }
82 
83  $.ajax({
84  url: '<?= $base ?>',
85  type: 'post',
86  async: false,
87  data: {
88  'func': 'UserItem',
89  'act': 'regist',
90  'insert': 1,
91  'bid': '<?= $bid ?>',
92  'kcode': this.v_kcode.val(),
93  'item': this.v_item.val(),
94  'kana': this.v_kana.val(),
95  'name': this.v_name.val(),
96  'valid_flg': this.v_valid_flg.val(),
97  'eod': ''
98  }
99  })
100  .done((data) => {
101  eval("this.ans = " + data);
102  })
103  .fail((data) => {
104  this.ans = {"sts": "NG", "err": "ajax error"};
105  });
106 
107  if (this.ans.sts == 'NG') {
108  this.errmsg.html(this.ans.err);
109  return false;
110  }
111 
112  this.gotoNext('UserItem', 'remember');
113 
114  return false;
115  },
116 
117  init: function() {
118  this.errmsg = $('#errmsg');
119  this.next = $('#next');
120  this.func = $('#func');
121  this.act = $('#act');
122  this.v_kcode = $('#v_kcode');
123  this.v_item = $('#v_item');
124  this.v_kana = $('#v_kana');
125  this.v_name = $('#v_name');
126  this.v_valid_flg = $('#v_valid_flg');
127  }
128  }
129 
130  $(function(){
131  my.init();
132  });
133 
134 </script>
135 
136 <form method="post" name="next" id="next" action="<?= $base ?>">
137  <input type="hidden" name="func" id="func">
138  <input type="hidden" name="act" id="act">
139 </form>
140 
141 <table id="my_header" width="100%">
142  <tr>
143  <td>
144  &nbsp;<a onclick="return my.gotoNext('UserMenu', '');">メニュー</a>
145  &nbsp;&gt;&nbsp;<a onclick="return my.gotoNext('UserItem', 'remember');">科目コード</a>
146  &nbsp;&gt;&nbsp;新規作成
147  </td>
148  <td style="text-align: right;">
149  <button type="button" class="my_magenta" style="width: 120px;" onclick="return my.gotoNext('Login', '');">ログアウト</button>
150  </td>
151  </tr>
152  <tr>
153  <td colspan="2" style="text-align: center;">
154  <?= $view->strBasic($basic) ?>
155  </td>
156  </tr>
157 </table>
158 
159 <div style="height: 5px;">&nbsp;</div>
160 
161 <table width="100%">
162  <tr>
163  <td align="center">
164  <table class="my_table" width="100%">
165  <tr>
166  <th class="my_border">科目コード・新規作成</th>
167  </tr>
168  </table>
169 
170  <div style="height: 1px;">&nbsp;</div><hr>
171 
172  <table>
173  <tr>
174  <td align="center">
175  <table>
176  <tr>
177  <td style="padding: 8px;">
178  <button type="button" class="my_cyan" style="width: 100px;" onclick="return my.regist();">登録</button>
179  </td>
180  <td style="width: 80px;">&nbsp;</td>
181  <td>
182  <button type="button" class="my_magenta" style="width: 100px;" onclick="return my.gotoNext('UserItem', 'remember');">戻る</button>
183  </td>
184  </tr>
185  </table>
186  </td>
187  </tr>
188  </table>
189 
190  <div style="height: 1px;">&nbsp;</div><hr>
191 
192  <div style="height: 8px;">&nbsp;</div>
193 
194  <table class="my_table">
195  <tr>
196  <td colspan="2"><div id="errmsg" class="my_red"></div></td>
197  </tr>
198  <tr>
199  <td colspan="2">&nbsp;</td>
200  </tr>
201  <tr>
202  <th class="my_border" style="width: 100px; text-align: right;">
203  勘定科目コード
204  </th>
205  <td class="my_border">
206  <select id="v_kcode">
207 <?php
208 foreach ($kcode as $k => $d) {
209  $kname = sprintf("%06d", $k);
210  $dname = $view->str($d);
211 ?>
212  <option value="<?= $k ?>"><?= $kname ?>:<?= $dname ?></option>
213 <?php
214 }
215 ?>
216  </select>
217  </td>
218  </tr>
219  <tr>
220  <th class="my_border" style="width: 100px; text-align: right;">
221  科目細分コード
222  </th>
223  <td class="my_border">
224  <select id="v_item">
225 <?php
226 $fmt = '<option value="%s">%02d</option>';
227 for ($i = 1; $i < 100; $i++) {
228  echo sprintf($fmt, $i, $i);
229 }
230 ?>
231  </select>(01〜99)
232  </td>
233  </tr>
234  <tr>
235  <th class="my_border" style="width: 100px; text-align: right;">
236  科目名(かな)
237  </th>
238  <td class="my_border">
239  <input style="width: 160px; text-align: left;" type="text" id="v_kana" value="">
240  </td>
241  </tr>
242  <tr>
243  <th class="my_border" style="width: 100px; text-align: right;">
244  科目名
245  </th>
246  <td class="my_border">
247  <input style="width: 160px; text-align: left;" type="text" id="v_name" value="">
248  </td>
249  </tr>
250  <tr>
251  <th class="my_border" style="text-align: right;">
252  <div class="my_required">有効フラグ</div>
253  </th>
254  <td class="my_border">
255  <select id="v_valid_flg"><?= $vopt ?></select>
256  </td>
257  </tr>
258  </table>
259  </td>
260  </tr>
261 </table>