リビジョン 183
エクセル:見積書・注文書表示罫線色変更
注文書日付入力画面追加
注文書・請求書日付データ追加
branches/ddl/20170602_SQL.txt | ||
---|---|---|
1 |
DROP TABLE IF EXISTS PurchaseOrderDate; |
|
2 |
-- ?????????t?f?[?^ |
|
3 |
CREATE TABLE PurchaseOrderDate |
|
4 |
( |
|
5 |
ConstructionCode decimal(10,0) unsigned NOT NULL COMMENT '?H???R?[?h', |
|
6 |
SeqNo decimal(3) unsigned NOT NULL COMMENT '???????}??', |
|
7 |
CompanyCode decimal(8,0) NOT NULL COMMENT '??????R?[?h', |
|
8 |
SendDate date NOT NULL COMMENT '???????X????', |
|
9 |
ReturnDate date NOT NULL COMMENT '???????????', |
|
10 |
ReturnCheckDate date NOT NULL COMMENT '??????????m?F??', |
|
11 |
EntryDate datetime NOT NULL COMMENT '?o?^???t', |
|
12 |
UpdateDate datetime NOT NULL COMMENT '?X?V???t', |
|
13 |
PRIMARY KEY (ConstructionCode, SeqNo) |
|
14 |
) COMMENT = '?????????t?f?[?^'; |
|
15 |
|
|
16 |
|
|
17 |
DROP TABLE IF EXISTS RequestOrderDate; |
|
18 |
-- ?????????t?f?[?^ |
|
19 |
CREATE TABLE RequestOrderDate |
|
20 |
( |
|
21 |
ConstructionCode decimal(10,0) unsigned NOT NULL COMMENT '?H???R?[?h', |
|
22 |
RequestNo decimal(9,0) NOT NULL COMMENT '????No', |
|
23 |
SendDate date NOT NULL COMMENT '???????????X????', |
|
24 |
PaymentDate date NOT NULL COMMENT '??????', |
|
25 |
EntryDate datetime NOT NULL COMMENT '?o?^???t', |
|
26 |
UpdateDate datetime NOT NULL COMMENT '?X?V???t' |
|
27 |
) COMMENT = '?????????t?f?[?^'; |
|
28 |
|
branches/src/ProcessManagement/ProcessManagement/Common/Process/ClsExcute.cs | ||
---|---|---|
84 | 84 |
PriceOfBudget = 37, // 37:台帳状況確認画面 |
85 | 85 |
MaterialEntrylList = 38, // 38:資材選択一覧 |
86 | 86 |
BillingEntrylList = 39, // 39:請求選択一覧 |
87 |
PurchaseStatusInput = 40, // 40:注文書状況日付入力 |
|
87 | 88 |
} |
88 | 89 |
#endregion |
89 | 90 |
|
... | ... | |
188 | 189 |
{ (int)ProcessExecuteNo.PriceOfBudget, "工事台帳状態確認-表示"}, |
189 | 190 |
{ (int)ProcessExecuteNo.MaterialEntrylList, "資材データ一覧-表示"}, |
190 | 191 |
{ (int)ProcessExecuteNo.BillingEntrylList, "請求データ一覧-表示"}, |
191 |
|
|
192 |
{ (int)ProcessExecuteNo.PurchaseStatusInput, "注文書状況日付-入力"}, |
|
192 | 193 |
}; |
193 | 194 |
|
194 | 195 |
#endregion |
... | ... | |
620 | 621 |
ProcessExecuteNo_BillingEntrylList(m_ProcControlPara[NowPoint]); |
621 | 622 |
break; |
622 | 623 |
|
624 |
case (int)ProcessExecuteNo.PurchaseStatusInput: // 40:注文書状況日付入力 |
|
625 |
ProcessExecuteNo_PurchaseStatusInput(m_ProcControlPara[NowPoint]); |
|
626 |
break; |
|
627 |
|
|
623 | 628 |
#endregion |
624 | 629 |
|
625 | 630 |
#region マスタメンテ |
... | ... | |
1178 | 1183 |
|
1179 | 1184 |
// パラメータセット |
1180 | 1185 |
frm.ConstructionCode = CurrentPara.IntExecParameter[0]; |
1181 |
if (CurrentPara.IntExecParameter.Count > 2) frm.OrderNo = CurrentPara.IntExecParameter[2];
|
|
1186 |
if (CurrentPara.IntExecParameter.Count > 1) frm.OrderNo = CurrentPara.IntExecParameter[1];
|
|
1182 | 1187 |
|
1183 | 1188 |
// 直接表示フラグのセット |
1184 | 1189 |
if (CurrentPara.BoolExecParameter.Count > 0) |
... | ... | |
1680 | 1685 |
FrmPurchaseOrderStatus frm = new FrmPurchaseOrderStatus(); |
1681 | 1686 |
try |
1682 | 1687 |
{ |
1688 |
frm.ExecuteFlg = CurrentPara.IntExecParameter[0]; |
|
1683 | 1689 |
// フォーム表示 |
1684 | 1690 |
frm.ShowDialog(); |
1685 | 1691 |
|
... | ... | |
2469 | 2475 |
} |
2470 | 2476 |
#endregion |
2471 | 2477 |
|
2478 |
#region 注文書状況日付入力 |
|
2479 |
/// <summary> |
|
2480 |
/// 注文書状況日付入力 |
|
2481 |
/// </summary> |
|
2482 |
/// <returns></returns> |
|
2483 |
public static void ProcessExecuteNo_PurchaseStatusInput(ProcessParameter CurrentPara) |
|
2484 |
{ |
|
2485 |
// 請求選択一覧 |
|
2486 |
FrmPurchaseStatusInput frm = new FrmPurchaseStatusInput(); |
|
2487 |
try |
|
2488 |
{ |
|
2489 |
// パラメータセット |
|
2490 |
frm.ConstructionCode = CurrentPara.IntExecParameter[0]; |
|
2491 |
if (CurrentPara.IntExecParameter.Count > 1) frm.OrderNo = CurrentPara.IntExecParameter[1]; |
|
2492 |
|
|
2493 |
// フォーム表示 |
|
2494 |
frm.ShowDialog(); |
|
2495 |
} |
|
2496 |
catch (Exception ex) |
|
2497 |
{ |
|
2498 |
logger.ErrorFormat("システムエラー:{0}:{1}", CommonMotions.GetMethodName(), ex.Message); |
|
2499 |
BackProcess(); |
|
2500 |
} |
|
2501 |
finally |
|
2502 |
{ |
|
2503 |
frm.Dispose(); frm = null; |
|
2504 |
} |
|
2505 |
} |
|
2472 | 2506 |
#endregion |
2473 | 2507 |
|
2508 |
#endregion |
|
2509 |
|
|
2474 | 2510 |
#region マスタメンテナンス |
2475 | 2511 |
// ----------------- メンテナンス起動 |
2476 | 2512 |
#region 管理マスタ |
branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IOPurchaseOrderDate.cs | ||
---|---|---|
1 |
using System; |
|
2 |
using System.Collections.Generic; |
|
3 |
using System.Linq; |
|
4 |
using System.Text; |
|
5 |
using System.Data; |
|
6 |
using System.Collections; |
|
7 |
|
|
8 |
using log4net; |
|
9 |
using MySql.Data.MySqlClient; // Data Provider for MySql |
|
10 |
|
|
11 |
using ProcessManagement.DB.MySql; |
|
12 |
using ProcessManagement.DB.Core; |
|
13 |
using ProcessManagement.DataModel; |
|
14 |
using ProcessManagement.Common; |
|
15 |
|
|
16 |
namespace ProcessManagement.DB.IOAccess |
|
17 |
{ |
|
18 |
/// <summary> |
|
19 |
/// 注文書日付データDBアクセス |
|
20 |
/// </summary> |
|
21 |
public class IOPurchaseOrderDate : MySqlProcess |
|
22 |
{ |
|
23 |
#region 定義部 |
|
24 |
/// <summary> |
|
25 |
/// log4netログを使用する |
|
26 |
/// </summary> |
|
27 |
private static readonly ILog logger = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); |
|
28 |
#endregion |
|
29 |
|
|
30 |
#region 定数 |
|
31 |
/// <summary> |
|
32 |
/// 注文書日付データフィールド並び |
|
33 |
/// </summary> |
|
34 |
public enum TableColumn |
|
35 |
{ |
|
36 |
ConstructionCode = 0, // 工事番号 |
|
37 |
SeqNo, // 注文書枝番 |
|
38 |
CompanyCode, // 協力会社コード |
|
39 |
SendDate, // 注文書郵送日 |
|
40 |
ReturnDate, // 注文書返送日 |
|
41 |
ReturnCheckDate, // 注文書返送確認日 |
|
42 |
EntryDate, // 登録年月日 |
|
43 |
UpdateDate, // 更新年月日 |
|
44 |
} |
|
45 |
#endregion |
|
46 |
|
|
47 |
#region コンストラクタ |
|
48 |
/// <summary> |
|
49 |
/// コンストラクタ |
|
50 |
/// </summary> |
|
51 |
/// <param name="ConnectionString"></param> |
|
52 |
public IOPurchaseOrderDate() |
|
53 |
: base(DBCommon.Instance.DBConnectString) |
|
54 |
{ |
|
55 |
} |
|
56 |
|
|
57 |
#endregion |
|
58 |
|
|
59 |
#region 注文書日付データ検索文字列作成 |
|
60 |
/// <summary> |
|
61 |
/// 注文書日付データ検索文字列作成 |
|
62 |
/// </summary> |
|
63 |
/// <returns></returns> |
|
64 |
private string CreateSelectSQL() |
|
65 |
{ |
|
66 |
string strcmd = "SELECT"; |
|
67 |
|
|
68 |
strcmd += " ConstructionCode"; // 工事番号 |
|
69 |
strcmd += ", SeqNo"; // 注文書枝番 |
|
70 |
strcmd += ", CompanyCode"; // 協力会社コード |
|
71 |
strcmd += ", DATE_FORMAT(SendDate, '%Y/%m/%d')"; // 注文書郵送日 |
|
72 |
strcmd += ", DATE_FORMAT(ReturnDate, '%Y/%m/%d')"; // 注文書返送日 |
|
73 |
strcmd += ", DATE_FORMAT(ReturnCheckDate, '%Y/%m/%d')"; // 注文書返送確認日 |
|
74 |
strcmd += ", DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')"; |
|
75 |
strcmd += ", DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')"; |
|
76 |
strcmd += " FROM PurchaseOrderDate"; |
|
77 |
|
|
78 |
return strcmd; |
|
79 |
} |
|
80 |
#endregion |
|
81 |
|
|
82 |
#region 注文書日付データ検索(複数) |
|
83 |
/// <summary> |
|
84 |
/// 注文書日付データ検索(複数) |
|
85 |
/// </summary> |
|
86 |
/// <param name="AddSQLString"></param> |
|
87 |
/// <param name="data"></param> |
|
88 |
/// <param name="bConnect"></param> |
|
89 |
/// <returns></returns> |
|
90 |
public bool SelectAction(string AddSQLString, ref List<PurchaseOrderDate> data, bool bConnect = true) |
|
91 |
{ |
|
92 |
// インターフェース |
|
93 |
string strcmd = ""; |
|
94 |
ArrayList arData = new ArrayList(); |
|
95 |
|
|
96 |
try |
|
97 |
{ |
|
98 |
// SQL作成(DateTime型が変換できないのでCharに変換しておく) |
|
99 |
strcmd = CreateSelectSQL() + AddSQLString; |
|
100 |
|
|
101 |
// SQL実行 |
|
102 |
if (!ExecuteReader(strcmd, ref arData, bConnect)) return false; |
|
103 |
|
|
104 |
// データセット |
|
105 |
foreach (object[] objwrk in arData) |
|
106 |
{ |
|
107 |
PurchaseOrderDate work = new PurchaseOrderDate(); |
|
108 |
Reader2Struct(objwrk, ref work); |
|
109 |
data.Add(work); |
|
110 |
} |
|
111 |
|
|
112 |
return true; |
|
113 |
} |
|
114 |
catch (Exception ex) |
|
115 |
{ |
|
116 |
logger.ErrorFormat("システムエラー:{0}:{1}:{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd); |
|
117 |
return false; |
|
118 |
} |
|
119 |
} |
|
120 |
#endregion |
|
121 |
|
|
122 |
#region 注文書日付データ検索(1件) |
|
123 |
/// <summary> |
|
124 |
/// 注文書日付データ検索(1件) |
|
125 |
/// </summary> |
|
126 |
/// <param name="AddSQLString"></param> |
|
127 |
/// <param name="data"></param> |
|
128 |
/// <param name="bConnect"></param> |
|
129 |
/// <returns></returns> |
|
130 |
public bool SelectAction(string AddSQLString, ref PurchaseOrderDate data, bool bConnect = true) |
|
131 |
{ |
|
132 |
// インターフェース |
|
133 |
string strcmd = ""; |
|
134 |
ArrayList arData = new ArrayList(); |
|
135 |
|
|
136 |
try |
|
137 |
{ |
|
138 |
// SQL作成(DateTime型が変換できないのでCharに変換しておく) |
|
139 |
strcmd = CreateSelectSQL() + AddSQLString; |
|
140 |
|
|
141 |
// SQL実行 |
|
142 |
if (!ExecuteReader(strcmd, ref arData, bConnect)) return false; |
|
143 |
if (arData.Count == 0) return false; |
|
144 |
|
|
145 |
// データセット |
|
146 |
foreach (object[] objwrk in arData) |
|
147 |
{ |
|
148 |
Reader2Struct(objwrk, ref data); |
|
149 |
break; |
|
150 |
} |
|
151 |
|
|
152 |
return true; |
|
153 |
} |
|
154 |
catch (Exception ex) |
|
155 |
{ |
|
156 |
logger.ErrorFormat("システムエラー:{0}:{1}:{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd); |
|
157 |
return false; |
|
158 |
} |
|
159 |
} |
|
160 |
#endregion |
|
161 |
|
|
162 |
#region 注文書日付データ追加(1件) |
|
163 |
/// <summary> |
|
164 |
/// 注文書日付データ追加(1件) |
|
165 |
/// </summary> |
|
166 |
/// <param name="data">注文書日付データデータ</param> |
|
167 |
/// <returns>true:成功 false:失敗</returns> |
|
168 |
public bool InsertAction(PurchaseOrderDate work, bool bConnect = true) |
|
169 |
{ |
|
170 |
string strcmd = ""; |
|
171 |
try |
|
172 |
{ |
|
173 |
|
|
174 |
bool bColFirst = true; |
|
175 |
strcmd = "INSERT INTO PurchaseOrderDate"; |
|
176 |
strcmd += " ("; |
|
177 |
foreach (var gender in Enum.GetValues(typeof(TableColumn))) |
|
178 |
{ |
|
179 |
if (!bColFirst) strcmd += ", "; |
|
180 |
strcmd += gender.ToString(); |
|
181 |
bColFirst = false; |
|
182 |
} |
|
183 |
strcmd += ") VALUES ("; |
|
184 |
|
|
185 |
strcmd += string.Format(" {0}", work.ConstructionCode); // 工事番号 |
|
186 |
strcmd += string.Format(",{0}", work.SeqNo); // 注文書枝番 |
|
187 |
|
|
188 |
strcmd += string.Format(",{0}", work.CompanyCode); // 協力会社コード |
|
189 |
strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')", |
|
190 |
work.SendDate.ToShortDateString()); // 注文書郵送日 |
|
191 |
strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')", |
|
192 |
work.ReturnDate.ToShortDateString()); // 注文書返送日 |
|
193 |
strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')", |
|
194 |
work.ReturnCheckDate.ToShortDateString()); // 注文書返送確認日 |
|
195 |
|
|
196 |
strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", work.EntryDate); |
|
197 |
strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", work.UpdateDate); |
|
198 |
strcmd += ")"; |
|
199 |
|
|
200 |
if (!ExecuteNonQuery(strcmd, bConnect)) return false; |
|
201 |
|
|
202 |
return true; |
|
203 |
} |
|
204 |
catch (Exception ex) |
|
205 |
{ |
|
206 |
logger.ErrorFormat("システムエラー:{0}:{1}:{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd); |
|
207 |
return false; |
|
208 |
} |
|
209 |
} |
|
210 |
#endregion |
|
211 |
|
|
212 |
#region 注文書日付データ追加(複数) |
|
213 |
/// <summary> |
|
214 |
/// 注文書日付データ追加(複数) |
|
215 |
/// </summary> |
|
216 |
/// <param name="data">注文書日付データデータ</param> |
|
217 |
/// <returns>true:成功 false:失敗</returns> |
|
218 |
public bool InsertAction(List<PurchaseOrderDate> data, bool bConnect = true) |
|
219 |
{ |
|
220 |
string strcmd = ""; |
|
221 |
try |
|
222 |
{ |
|
223 |
bool bColFirst = true; |
|
224 |
strcmd = "INSERT INTO PurchaseOrderDate"; |
|
225 |
strcmd += " ("; |
|
226 |
foreach (var gender in Enum.GetValues(typeof(TableColumn))) |
|
227 |
{ |
|
228 |
if (!bColFirst) strcmd += ", "; |
|
229 |
strcmd += gender.ToString(); |
|
230 |
bColFirst = false; |
|
231 |
} |
|
232 |
strcmd += ") VALUES"; |
|
233 |
|
|
234 |
bool bDataFirst = true; |
|
235 |
foreach (PurchaseOrderDate work in data) |
|
236 |
{ |
|
237 |
if (bDataFirst) strcmd += " ("; |
|
238 |
else strcmd += ", ("; |
|
239 |
|
|
240 |
strcmd += string.Format(" {0}", work.ConstructionCode); // 工事番号 |
|
241 |
strcmd += string.Format(",{0}", work.SeqNo); // 注文書枝番 |
|
242 |
|
|
243 |
strcmd += string.Format(",{0}", work.CompanyCode); // 協力会社コード |
|
244 |
strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')", |
|
245 |
work.SendDate.ToShortDateString()); // 注文書郵送日 |
|
246 |
strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')", |
|
247 |
work.ReturnDate.ToShortDateString()); // 注文書返送日 |
|
248 |
strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')", |
|
249 |
work.ReturnCheckDate.ToShortDateString()); // 注文書返送確認日 |
|
250 |
|
|
251 |
strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", work.EntryDate); |
|
252 |
strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", work.UpdateDate); |
|
253 |
strcmd += ")"; |
|
254 |
|
|
255 |
bDataFirst = false; |
|
256 |
} |
|
257 |
|
|
258 |
if (!ExecuteNonQuery(strcmd, false)) return false; |
|
259 |
|
|
260 |
return true; |
|
261 |
} |
|
262 |
catch (Exception ex) |
|
263 |
{ |
|
264 |
logger.ErrorFormat("システムエラー:{0}:{1}:{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd); |
|
265 |
return false; |
|
266 |
} |
|
267 |
} |
|
268 |
#endregion |
|
269 |
|
|
270 |
#region 注文書日付データ更新 |
|
271 |
/// <summary> |
|
272 |
/// 注文書日付データ更新 |
|
273 |
/// </summary> |
|
274 |
/// <param name="AddSQLString">更新条件SQL文字列</param> |
|
275 |
/// <param name="data">注文書日付データデータ</param> |
|
276 |
/// <returns>true:成功 false:失敗</returns> |
|
277 |
public bool UpdateAction(string AddSQLString, PurchaseOrderDate data, bool bConnect = true) |
|
278 |
{ |
|
279 |
string strcmd = ""; |
|
280 |
try |
|
281 |
{ |
|
282 |
|
|
283 |
strcmd = "UPDATE PurchaseOrderDate"; |
|
284 |
|
|
285 |
strcmd += " SET"; |
|
286 |
|
|
287 |
strcmd += string.Format(" ConstructionCode = {0}", data.ConstructionCode); // 工事番号 |
|
288 |
strcmd += string.Format(", SeqNo = {0}", data.SeqNo); // 注文書枝番 |
|
289 |
strcmd += string.Format(", CompanyCode = {0}", data.CompanyCode); // 協力会社コード |
|
290 |
|
|
291 |
strcmd += string.Format(", SendDate = STR_TO_DATE('{0}','%Y/%m/%d')", |
|
292 |
data.SendDate.ToShortDateString()); // 注文書郵送日 |
|
293 |
strcmd += string.Format(", ReturnDate = STR_TO_DATE('{0}','%Y/%m/%d')", |
|
294 |
data.ReturnDate.ToShortDateString()); // 注文書返送日 |
|
295 |
strcmd += string.Format(", ReturnCheckDate = STR_TO_DATE('{0}','%Y/%m/%d')", |
|
296 |
data.ReturnCheckDate.ToShortDateString()); // 注文書返送確認日 |
|
297 |
|
|
298 |
strcmd += ", UpdateDate = NOW()"; |
|
299 |
strcmd += AddSQLString; |
|
300 |
|
|
301 |
if (!ExecuteNonQuery(strcmd, bConnect)) return false; |
|
302 |
|
|
303 |
return true; |
|
304 |
} |
|
305 |
catch (Exception ex) |
|
306 |
{ |
|
307 |
logger.ErrorFormat("システムエラー:{0}:{1}:{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd); |
|
308 |
return false; |
|
309 |
} |
|
310 |
} |
|
311 |
#endregion |
|
312 |
|
|
313 |
#region 注文書日付データ削除 |
|
314 |
/// <summary> |
|
315 |
/// 注文書日付データ削除 |
|
316 |
/// </summary> |
|
317 |
/// <param name="AddSQLString">削除条件SQL文字列</param> |
|
318 |
/// <param name="data">注文書日付データデータ</param> |
|
319 |
/// <returns>true:成功 false:失敗</returns> |
|
320 |
public bool DeleteAction(string AddSQLString, bool bConnect = true) |
|
321 |
{ |
|
322 |
// インターフェース |
|
323 |
string strcmd = ""; |
|
324 |
try |
|
325 |
{ |
|
326 |
strcmd = string.Format("{0}{1}", "DELETE FROM PurchaseOrderDate", AddSQLString); |
|
327 |
|
|
328 |
if (!ExecuteNonQuery(strcmd, bConnect)) return false; |
|
329 |
|
|
330 |
return true; |
|
331 |
} |
|
332 |
catch (Exception ex) |
|
333 |
{ |
|
334 |
logger.ErrorFormat("システムエラー:{0}:{1}:{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd); |
|
335 |
return false; |
|
336 |
} |
|
337 |
} |
|
338 |
#endregion |
|
339 |
|
|
340 |
#region 1項目更新処理 |
|
341 |
/// <summary> |
|
342 |
/// 1項目の更新を行う |
|
343 |
/// </summary> |
|
344 |
/// <returns></returns> |
|
345 |
public bool UpdateFeild(int ConstructionCode, int FeildNo, object value, bool bConnect = true, int SeqNo = 0) |
|
346 |
{ |
|
347 |
string strcmd = ""; |
|
348 |
try |
|
349 |
{ |
|
350 |
strcmd = "UPDATE PurchaseOrderDate"; |
|
351 |
|
|
352 |
strcmd += " SET"; |
|
353 |
switch (FeildNo) |
|
354 |
{ |
|
355 |
case (int)TableColumn.ConstructionCode: // 工事番号 |
|
356 |
strcmd += string.Format(" ConstructionCode = {0}", ((int)value).ToString()); |
|
357 |
break; |
|
358 |
case (int)TableColumn.SeqNo: // 注文書枝番 |
|
359 |
strcmd += string.Format(" SeqNo = {0}", ((int)value).ToString()); |
|
360 |
break; |
|
361 |
case (int)TableColumn.CompanyCode: // 協力会社コード |
|
362 |
strcmd += string.Format(" CompanyCode = {0}", ((int)value).ToString()); |
|
363 |
break; |
|
364 |
case (int)TableColumn.SendDate: // 注文書郵送日 |
|
365 |
strcmd += string.Format("SendDate = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString()); |
|
366 |
break; |
|
367 |
case (int)TableColumn.ReturnDate: // 注文書返送日 |
|
368 |
strcmd += string.Format("ReturnDate = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString()); |
|
369 |
break; |
|
370 |
case (int)TableColumn.ReturnCheckDate: // 注文書返送確認日 |
|
371 |
strcmd += string.Format("ReturnCheckDate = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString()); |
|
372 |
break; |
|
373 |
} |
|
374 |
|
|
375 |
strcmd += ", UpdateDate = NOW()"; |
|
376 |
strcmd += CreatePrimarykeyString(ConstructionCode, SeqNo); |
|
377 |
|
|
378 |
if (!ExecuteNonQuery(strcmd, bConnect)) return false; |
|
379 |
|
|
380 |
return true; |
|
381 |
} |
|
382 |
catch (Exception ex) |
|
383 |
{ |
|
384 |
logger.ErrorFormat("システムエラー:{0}:{1}:{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd); |
|
385 |
return false; |
|
386 |
} |
|
387 |
} |
|
388 |
#endregion |
|
389 |
|
|
390 |
#region OracleDataReaderより構造体へセットする |
|
391 |
/// <summary> |
|
392 |
/// OracleDataReaderより構造体へセットする |
|
393 |
/// </summary> |
|
394 |
/// <param name="reader">OracleDataReader</param> |
|
395 |
/// <param name="wrk">構造体</param> |
|
396 |
public void Reader2Struct(object[] objwrk, ref PurchaseOrderDate wrk) |
|
397 |
{ |
|
398 |
try |
|
399 |
{ |
|
400 |
// データ取得 |
|
401 |
wrk.ConstructionCode = int.Parse(objwrk[(int)TableColumn.ConstructionCode].ToString()); // 工事番号 |
|
402 |
wrk.SeqNo = int.Parse(objwrk[(int)TableColumn.SeqNo].ToString()); // 注文書枝番 |
|
403 |
wrk.CompanyCode = int.Parse(objwrk[(int)TableColumn.CompanyCode].ToString()); // 協力会社コード |
|
404 |
|
|
405 |
wrk.SendDate = DateTime.Parse(objwrk[(int)TableColumn.SendDate].ToString()); // 注文書郵送日 |
|
406 |
wrk.ReturnDate = DateTime.Parse(objwrk[(int)TableColumn.ReturnDate].ToString()); // 注文書返送日 |
|
407 |
wrk.ReturnCheckDate = DateTime.Parse(objwrk[(int)TableColumn.ReturnCheckDate].ToString()); // 注文書返送確認日 |
|
408 |
|
|
409 |
wrk.EntryDate = DateTime.Parse(objwrk[(int)TableColumn.EntryDate].ToString()); |
|
410 |
wrk.UpdateDate = DateTime.Parse(objwrk[(int)TableColumn.UpdateDate].ToString()); |
|
411 |
} |
|
412 |
catch (MySqlException myex) |
|
413 |
{ |
|
414 |
logger.ErrorFormat("MySQLエラー:{0}:{1}", CommonMotions.GetMethodName(2), myex.Message); |
|
415 |
} |
|
416 |
catch (Exception ex) |
|
417 |
{ |
|
418 |
logger.ErrorFormat("システムエラー:{0}:{1}", CommonMotions.GetMethodName(2), ex.Message); |
|
419 |
} |
|
420 |
} |
|
421 |
#endregion |
|
422 |
|
|
423 |
#region 主キー検索の文字列を返す |
|
424 |
/// <summary> |
|
425 |
/// 主キー検索の文字列を返す |
|
426 |
/// </summary> |
|
427 |
public string CreatePrimarykeyString(int ConstructionCode, int SeqNo = 0) |
|
428 |
{ |
|
429 |
string strWork = ""; |
|
430 |
try |
|
431 |
{ |
|
432 |
strWork = string.Format(" Where ConstructionCode = {0}", ConstructionCode); |
|
433 |
if (SeqNo != 0) |
|
434 |
strWork += string.Format(" And SeqNo = {0}", SeqNo); |
|
435 |
} |
|
436 |
catch (Exception ex) |
|
437 |
{ |
|
438 |
logger.ErrorFormat("システムエラー:{0}:{1}:{2}", CommonMotions.GetMethodName(2), ex.Message, strWork); |
|
439 |
} |
|
440 |
|
|
441 |
return strWork; |
|
442 |
} |
|
443 |
#endregion |
|
444 |
} |
|
445 |
} |
branches/src/ProcessManagement/ProcessManagement/DB/IOAccess/IORequestOrderDate.cs | ||
---|---|---|
1 |
using System; |
|
2 |
using System.Collections.Generic; |
|
3 |
using System.Linq; |
|
4 |
using System.Text; |
|
5 |
using System.Data; |
|
6 |
using System.Collections; |
|
7 |
|
|
8 |
using log4net; |
|
9 |
using MySql.Data.MySqlClient; // Data Provider for MySql |
|
10 |
|
|
11 |
using ProcessManagement.DB.MySql; |
|
12 |
using ProcessManagement.DB.Core; |
|
13 |
using ProcessManagement.DataModel; |
|
14 |
using ProcessManagement.Common; |
|
15 |
|
|
16 |
namespace ProcessManagement.DB.IOAccess |
|
17 |
{ |
|
18 |
/// <summary> |
|
19 |
/// 請求書日付データDBアクセス |
|
20 |
/// </summary> |
|
21 |
public class IORequestOrderDate : MySqlProcess |
|
22 |
{ |
|
23 |
#region 定義部 |
|
24 |
/// <summary> |
|
25 |
/// log4netログを使用する |
|
26 |
/// </summary> |
|
27 |
private static readonly ILog logger = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); |
|
28 |
#endregion |
|
29 |
|
|
30 |
#region 定数 |
|
31 |
/// <summary> |
|
32 |
/// 請求書日付データフィールド並び |
|
33 |
/// </summary> |
|
34 |
public enum TableColumn |
|
35 |
{ |
|
36 |
ConstructionCode = 0, // 工事番号 |
|
37 |
RequestNo, // 請求No |
|
38 |
SendDate, // 請求書発給郵送日 |
|
39 |
PaymentDate, // 入金日 |
|
40 |
EntryDate, // 登録年月日 |
|
41 |
UpdateDate, // 更新年月日 |
|
42 |
} |
|
43 |
#endregion |
|
44 |
|
|
45 |
#region コンストラクタ |
|
46 |
/// <summary> |
|
47 |
/// コンストラクタ |
|
48 |
/// </summary> |
|
49 |
/// <param name="ConnectionString"></param> |
|
50 |
public IORequestOrderDate() |
|
51 |
: base(DBCommon.Instance.DBConnectString) |
|
52 |
{ |
|
53 |
} |
|
54 |
|
|
55 |
#endregion |
|
56 |
|
|
57 |
#region 請求書日付データ検索文字列作成 |
|
58 |
/// <summary> |
|
59 |
/// 請求書日付データ検索文字列作成 |
|
60 |
/// </summary> |
|
61 |
/// <returns></returns> |
|
62 |
private string CreateSelectSQL() |
|
63 |
{ |
|
64 |
string strcmd = "SELECT"; |
|
65 |
|
|
66 |
strcmd += " ConstructionCode"; // 工事番号 |
|
67 |
strcmd += ", RequestNo"; // 請求No |
|
68 |
strcmd += ", DATE_FORMAT(SendDate, '%Y/%m/%d')"; // 請求書発給郵送日 |
|
69 |
strcmd += ", DATE_FORMAT(PaymentDate, '%Y/%m/%d')"; // 入金日 |
|
70 |
strcmd += ", DATE_FORMAT(EntryDate, '%Y/%m/%d %H:%i:%s')"; |
|
71 |
strcmd += ", DATE_FORMAT(UpdateDate, '%Y/%m/%d %H:%i:%s')"; |
|
72 |
strcmd += " FROM RequestOrderDate"; |
|
73 |
|
|
74 |
return strcmd; |
|
75 |
} |
|
76 |
#endregion |
|
77 |
|
|
78 |
#region 請求書日付データ検索(複数) |
|
79 |
/// <summary> |
|
80 |
/// 請求書日付データ検索(複数) |
|
81 |
/// </summary> |
|
82 |
/// <param name="AddSQLString"></param> |
|
83 |
/// <param name="data"></param> |
|
84 |
/// <param name="bConnect"></param> |
|
85 |
/// <returns></returns> |
|
86 |
public bool SelectAction(string AddSQLString, ref List<RequestOrderDate> data, bool bConnect = true) |
|
87 |
{ |
|
88 |
// インターフェース |
|
89 |
string strcmd = ""; |
|
90 |
ArrayList arData = new ArrayList(); |
|
91 |
|
|
92 |
try |
|
93 |
{ |
|
94 |
// SQL作成(DateTime型が変換できないのでCharに変換しておく) |
|
95 |
strcmd = CreateSelectSQL() + AddSQLString; |
|
96 |
|
|
97 |
// SQL実行 |
|
98 |
if (!ExecuteReader(strcmd, ref arData, bConnect)) return false; |
|
99 |
|
|
100 |
// データセット |
|
101 |
foreach (object[] objwrk in arData) |
|
102 |
{ |
|
103 |
RequestOrderDate work = new RequestOrderDate(); |
|
104 |
Reader2Struct(objwrk, ref work); |
|
105 |
data.Add(work); |
|
106 |
} |
|
107 |
|
|
108 |
return true; |
|
109 |
} |
|
110 |
catch (Exception ex) |
|
111 |
{ |
|
112 |
logger.ErrorFormat("システムエラー:{0}:{1}:{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd); |
|
113 |
return false; |
|
114 |
} |
|
115 |
} |
|
116 |
#endregion |
|
117 |
|
|
118 |
#region 請求書日付データ検索(1件) |
|
119 |
/// <summary> |
|
120 |
/// 請求書日付データ検索(1件) |
|
121 |
/// </summary> |
|
122 |
/// <param name="AddSQLString"></param> |
|
123 |
/// <param name="data"></param> |
|
124 |
/// <param name="bConnect"></param> |
|
125 |
/// <returns></returns> |
|
126 |
public bool SelectAction(string AddSQLString, ref RequestOrderDate data, bool bConnect = true) |
|
127 |
{ |
|
128 |
// インターフェース |
|
129 |
string strcmd = ""; |
|
130 |
ArrayList arData = new ArrayList(); |
|
131 |
|
|
132 |
try |
|
133 |
{ |
|
134 |
// SQL作成(DateTime型が変換できないのでCharに変換しておく) |
|
135 |
strcmd = CreateSelectSQL() + AddSQLString; |
|
136 |
|
|
137 |
// SQL実行 |
|
138 |
if (!ExecuteReader(strcmd, ref arData, bConnect)) return false; |
|
139 |
if (arData.Count == 0) return false; |
|
140 |
|
|
141 |
// データセット |
|
142 |
foreach (object[] objwrk in arData) |
|
143 |
{ |
|
144 |
Reader2Struct(objwrk, ref data); |
|
145 |
break; |
|
146 |
} |
|
147 |
|
|
148 |
return true; |
|
149 |
} |
|
150 |
catch (Exception ex) |
|
151 |
{ |
|
152 |
logger.ErrorFormat("システムエラー:{0}:{1}:{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd); |
|
153 |
return false; |
|
154 |
} |
|
155 |
} |
|
156 |
#endregion |
|
157 |
|
|
158 |
#region 請求書日付データ追加(1件) |
|
159 |
/// <summary> |
|
160 |
/// 請求書日付データ追加(1件) |
|
161 |
/// </summary> |
|
162 |
/// <param name="data">請求書日付データ</param> |
|
163 |
/// <returns>true:成功 false:失敗</returns> |
|
164 |
public bool InsertAction(RequestOrderDate work, bool bConnect = true) |
|
165 |
{ |
|
166 |
string strcmd = ""; |
|
167 |
try |
|
168 |
{ |
|
169 |
|
|
170 |
bool bColFirst = true; |
|
171 |
strcmd = "INSERT INTO RequestOrderDate"; |
|
172 |
strcmd += " ("; |
|
173 |
foreach (var gender in Enum.GetValues(typeof(TableColumn))) |
|
174 |
{ |
|
175 |
if (!bColFirst) strcmd += ", "; |
|
176 |
strcmd += gender.ToString(); |
|
177 |
bColFirst = false; |
|
178 |
} |
|
179 |
strcmd += ") VALUES ("; |
|
180 |
|
|
181 |
strcmd += string.Format(" {0}", work.ConstructionCode); // 工事番号 |
|
182 |
strcmd += string.Format(",{0}", work.RequestNo); // 請求No |
|
183 |
|
|
184 |
strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')", |
|
185 |
work.SendDate.ToShortDateString()); // 請求書発給郵送日 |
|
186 |
strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')", |
|
187 |
work.PaymentDate.ToShortDateString()); // 入金日 |
|
188 |
|
|
189 |
strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", work.EntryDate); |
|
190 |
strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", work.UpdateDate); |
|
191 |
strcmd += ")"; |
|
192 |
|
|
193 |
if (!ExecuteNonQuery(strcmd, bConnect)) return false; |
|
194 |
|
|
195 |
return true; |
|
196 |
} |
|
197 |
catch (Exception ex) |
|
198 |
{ |
|
199 |
logger.ErrorFormat("システムエラー:{0}:{1}:{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd); |
|
200 |
return false; |
|
201 |
} |
|
202 |
} |
|
203 |
#endregion |
|
204 |
|
|
205 |
#region 請求書日付データ追加(複数) |
|
206 |
/// <summary> |
|
207 |
/// 請求書日付データ追加(複数) |
|
208 |
/// </summary> |
|
209 |
/// <param name="data">請求書日付データ</param> |
|
210 |
/// <returns>true:成功 false:失敗</returns> |
|
211 |
public bool InsertAction(List<RequestOrderDate> data, bool bConnect = true) |
|
212 |
{ |
|
213 |
string strcmd = ""; |
|
214 |
try |
|
215 |
{ |
|
216 |
bool bColFirst = true; |
|
217 |
strcmd = "INSERT INTO RequestOrderDate"; |
|
218 |
strcmd += " ("; |
|
219 |
foreach (var gender in Enum.GetValues(typeof(TableColumn))) |
|
220 |
{ |
|
221 |
if (!bColFirst) strcmd += ", "; |
|
222 |
strcmd += gender.ToString(); |
|
223 |
bColFirst = false; |
|
224 |
} |
|
225 |
strcmd += ") VALUES"; |
|
226 |
|
|
227 |
bool bDataFirst = true; |
|
228 |
foreach (RequestOrderDate work in data) |
|
229 |
{ |
|
230 |
if (bDataFirst) strcmd += " ("; |
|
231 |
else strcmd += ", ("; |
|
232 |
|
|
233 |
strcmd += string.Format(" {0}", work.ConstructionCode); // 工事番号 |
|
234 |
strcmd += string.Format(",{0}", work.RequestNo); // 請求No |
|
235 |
|
|
236 |
strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')", |
|
237 |
work.SendDate.ToShortDateString()); // 請求書発給郵送日 |
|
238 |
strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d')", |
|
239 |
work.PaymentDate.ToShortDateString()); // 入金日 |
|
240 |
|
|
241 |
strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", work.EntryDate); |
|
242 |
strcmd += string.Format(", STR_TO_DATE('{0}','%Y/%m/%d %H:%i:%s')", work.UpdateDate); |
|
243 |
strcmd += ")"; |
|
244 |
|
|
245 |
bDataFirst = false; |
|
246 |
} |
|
247 |
|
|
248 |
if (!ExecuteNonQuery(strcmd, false)) return false; |
|
249 |
|
|
250 |
return true; |
|
251 |
} |
|
252 |
catch (Exception ex) |
|
253 |
{ |
|
254 |
logger.ErrorFormat("システムエラー:{0}:{1}:{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd); |
|
255 |
return false; |
|
256 |
} |
|
257 |
} |
|
258 |
#endregion |
|
259 |
|
|
260 |
#region 請求書日付データ更新 |
|
261 |
/// <summary> |
|
262 |
/// 請求書日付データ更新 |
|
263 |
/// </summary> |
|
264 |
/// <param name="AddSQLString">更新条件SQL文字列</param> |
|
265 |
/// <param name="data">請求書日付データ</param> |
|
266 |
/// <returns>true:成功 false:失敗</returns> |
|
267 |
public bool UpdateAction(string AddSQLString, RequestOrderDate data, bool bConnect = true) |
|
268 |
{ |
|
269 |
string strcmd = ""; |
|
270 |
try |
|
271 |
{ |
|
272 |
|
|
273 |
strcmd = "UPDATE RequestOrderDate"; |
|
274 |
|
|
275 |
strcmd += " SET"; |
|
276 |
|
|
277 |
strcmd += string.Format(" ConstructionCode = {0}", data.ConstructionCode); // 工事番号 |
|
278 |
strcmd += string.Format(", RequestNo = {0}", data.RequestNo); // 請求No |
|
279 |
|
|
280 |
strcmd += string.Format(", SendDate = STR_TO_DATE('{0}','%Y/%m/%d')", |
|
281 |
data.SendDate.ToShortDateString()); // 請求書発給郵送日 |
|
282 |
strcmd += string.Format(", PaymentDate = STR_TO_DATE('{0}','%Y/%m/%d')", |
|
283 |
data.PaymentDate.ToShortDateString()); // 入金日 |
|
284 |
|
|
285 |
strcmd += ", UpdateDate = NOW()"; |
|
286 |
strcmd += AddSQLString; |
|
287 |
|
|
288 |
if (!ExecuteNonQuery(strcmd, bConnect)) return false; |
|
289 |
|
|
290 |
return true; |
|
291 |
} |
|
292 |
catch (Exception ex) |
|
293 |
{ |
|
294 |
logger.ErrorFormat("システムエラー:{0}:{1}:{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd); |
|
295 |
return false; |
|
296 |
} |
|
297 |
} |
|
298 |
#endregion |
|
299 |
|
|
300 |
#region 請求書日付データ削除 |
|
301 |
/// <summary> |
|
302 |
/// 請求書日付データ削除 |
|
303 |
/// </summary> |
|
304 |
/// <param name="AddSQLString">削除条件SQL文字列</param> |
|
305 |
/// <param name="data">請求書日付データ</param> |
|
306 |
/// <returns>true:成功 false:失敗</returns> |
|
307 |
public bool DeleteAction(string AddSQLString, bool bConnect = true) |
|
308 |
{ |
|
309 |
// インターフェース |
|
310 |
string strcmd = ""; |
|
311 |
try |
|
312 |
{ |
|
313 |
strcmd = string.Format("{0}{1}", "DELETE FROM RequestOrderDate", AddSQLString); |
|
314 |
|
|
315 |
if (!ExecuteNonQuery(strcmd, bConnect)) return false; |
|
316 |
|
|
317 |
return true; |
|
318 |
} |
|
319 |
catch (Exception ex) |
|
320 |
{ |
|
321 |
logger.ErrorFormat("システムエラー:{0}:{1}:{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd); |
|
322 |
return false; |
|
323 |
} |
|
324 |
} |
|
325 |
#endregion |
|
326 |
|
|
327 |
#region 1項目更新処理 |
|
328 |
/// <summary> |
|
329 |
/// 1項目の更新を行う |
|
330 |
/// </summary> |
|
331 |
/// <returns></returns> |
|
332 |
public bool UpdateFeild(int ConstructionCode, int FeildNo, object value, bool bConnect = true, int RequestNo = 0) |
|
333 |
{ |
|
334 |
string strcmd = ""; |
|
335 |
try |
|
336 |
{ |
|
337 |
strcmd = "UPDATE RequestOrderDate"; |
|
338 |
|
|
339 |
strcmd += " SET"; |
|
340 |
switch (FeildNo) |
|
341 |
{ |
|
342 |
case (int)TableColumn.ConstructionCode: // 工事番号 |
|
343 |
strcmd += string.Format(" ConstructionCode = {0}", ((int)value).ToString()); |
|
344 |
break; |
|
345 |
case (int)TableColumn.RequestNo: // 請求No |
|
346 |
strcmd += string.Format(" RequestNo = {0}", ((int)value).ToString()); |
|
347 |
break; |
|
348 |
case (int)TableColumn.SendDate: // 請求書発給郵送日 |
|
349 |
strcmd += string.Format("SendDate = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString()); |
|
350 |
break; |
|
351 |
case (int)TableColumn.PaymentDate: // 入金日 |
|
352 |
strcmd += string.Format("PaymentDate = STR_TO_DATE('{0}','%Y/%m/%d')", ((DateTime)value).ToShortDateString()); |
|
353 |
break; |
|
354 |
} |
|
355 |
|
|
356 |
strcmd += ", UpdateDate = NOW()"; |
|
357 |
strcmd += CreatePrimarykeyString(ConstructionCode, RequestNo); |
|
358 |
|
|
359 |
if (!ExecuteNonQuery(strcmd, bConnect)) return false; |
|
360 |
|
|
361 |
return true; |
|
362 |
} |
|
363 |
catch (Exception ex) |
|
364 |
{ |
|
365 |
logger.ErrorFormat("システムエラー:{0}:{1}:{2}", CommonMotions.GetMethodName(2), ex.Message, strcmd); |
|
366 |
return false; |
|
367 |
} |
|
368 |
} |
|
369 |
#endregion |
|
370 |
|
|
371 |
#region OracleDataReaderより構造体へセットする |
|
372 |
/// <summary> |
|
373 |
/// OracleDataReaderより構造体へセットする |
|
374 |
/// </summary> |
|
375 |
/// <param name="reader">OracleDataReader</param> |
|
376 |
/// <param name="wrk">構造体</param> |
|
377 |
public void Reader2Struct(object[] objwrk, ref RequestOrderDate wrk) |
|
378 |
{ |
|
379 |
try |
|
380 |
{ |
|
381 |
// データ取得 |
|
382 |
wrk.ConstructionCode = int.Parse(objwrk[(int)TableColumn.ConstructionCode].ToString()); // 工事番号 |
|
383 |
wrk.RequestNo = int.Parse(objwrk[(int)TableColumn.RequestNo].ToString()); // 請求No |
|
384 |
|
|
385 |
wrk.SendDate = DateTime.Parse(objwrk[(int)TableColumn.SendDate].ToString()); // 請求書発給郵送日 |
|
386 |
wrk.PaymentDate = DateTime.Parse(objwrk[(int)TableColumn.PaymentDate].ToString()); // 入金日 |
|
387 |
|
|
388 |
wrk.EntryDate = DateTime.Parse(objwrk[(int)TableColumn.EntryDate].ToString()); |
|
389 |
wrk.UpdateDate = DateTime.Parse(objwrk[(int)TableColumn.UpdateDate].ToString()); |
|
390 |
} |
|
391 |
catch (MySqlException myex) |
|
392 |
{ |
|
393 |
logger.ErrorFormat("MySQLエラー:{0}:{1}", CommonMotions.GetMethodName(2), myex.Message); |
|
394 |
} |
|
395 |
catch (Exception ex) |
|
396 |
{ |
|
397 |
logger.ErrorFormat("システムエラー:{0}:{1}", CommonMotions.GetMethodName(2), ex.Message); |
|
398 |
} |
|
399 |
} |
|
400 |
#endregion |
|
401 |
|
|
402 |
#region 主キー検索の文字列を返す |
|
403 |
/// <summary> |
|
404 |
/// 主キー検索の文字列を返す |
|
405 |
/// </summary> |
|
406 |
public string CreatePrimarykeyString(int ConstructionCode, int RequestNo = 0) |
|
407 |
{ |
|
408 |
string strWork = ""; |
|
409 |
try |
|
410 |
{ |
|
411 |
strWork = string.Format(" Where ConstructionCode = {0}", ConstructionCode); |
|
412 |
if (RequestNo != 0) |
|
413 |
strWork += string.Format(" And RequestNo = {0}", RequestNo); |
|
414 |
} |
|
415 |
catch (Exception ex) |
|
416 |
{ |
|
417 |
logger.ErrorFormat("システムエラー:{0}:{1}:{2}", CommonMotions.GetMethodName(2), ex.Message, strWork); |
|
418 |
} |
|
419 |
|
|
420 |
return strWork; |
|
421 |
} |
|
422 |
#endregion |
|
423 |
} |
|
424 |
} |
branches/src/ProcessManagement/ProcessManagement/DataModel/PurchaseOrderDate.cs | ||
---|---|---|
1 |
using System; |
|
2 |
using System.Collections.Generic; |
|
3 |
using System.Linq; |
|
4 |
using System.Text; |
|
5 |
|
|
6 |
namespace ProcessManagement.DataModel |
|
7 |
{ |
|
8 |
/// <summary> |
|
9 |
/// 注文書日付データ |
|
10 |
/// </summary> |
|
11 |
public class PurchaseOrderDate |
|
12 |
{ |
|
13 |
#region メンバ変数 |
|
14 |
private int m_ConstructionCode = 0; // 工事番号 |
|
15 |
private int m_SeqNo = 0; // 注文書枝番 |
|
16 |
private int m_CompanyCode = 0; // 協力会社コード |
|
17 |
private DateTime m_SendDate = DateTime.MinValue; // 注文書郵送日 |
|
18 |
private DateTime m_ReturnDate = DateTime.MinValue; // 注文書返送日 |
|
19 |
private DateTime m_ReturnCheckDate = DateTime.MinValue; // 注文書返送確認日 |
|
20 |
|
|
21 |
private DateTime m_EntryDate = DateTime.Now; // 登録日付 |
|
22 |
private DateTime m_UpdateDate = DateTime.Now; // 更新日付 |
|
23 |
#endregion |
|
24 |
|
|
25 |
#region コンストラクタ |
|
26 |
#endregion |
|
27 |
|
|
28 |
#region プロパティ |
|
29 |
/// <summary> |
|
30 |
/// 工事コード |
|
31 |
/// </summary> |
|
32 |
public int ConstructionCode |
|
33 |
{ |
|
34 |
get { return m_ConstructionCode; } |
|
35 |
set { m_ConstructionCode = value; } |
|
36 |
} |
|
37 |
/// <summary> |
|
38 |
/// 枝番 |
|
39 |
/// </summary> |
|
40 |
public int SeqNo |
|
41 |
{ |
|
42 |
get { return m_SeqNo; } |
|
43 |
set { m_SeqNo = value; } |
|
44 |
} |
|
45 |
/// <summary> |
|
46 |
/// 協力会社コード |
|
47 |
/// </summary> |
|
48 |
public int CompanyCode |
|
49 |
{ |
|
50 |
get { return m_CompanyCode; } |
|
51 |
set { m_CompanyCode = value; } |
|
52 |
} |
|
53 |
/// <summary> |
|
54 |
/// 注文書郵送日 |
|
55 |
/// </summary> |
|
56 |
public DateTime SendDate |
|
57 |
{ |
|
58 |
get { return m_SendDate; } |
|
59 |
set { m_SendDate = value; } |
|
60 |
} |
|
61 |
/// <summary> |
|
62 |
/// 注文書返送日 |
|
63 |
/// </summary> |
|
64 |
public DateTime ReturnDate |
|
65 |
{ |
|
66 |
get { return m_ReturnDate; } |
|
67 |
set { m_ReturnDate = value; } |
|
68 |
} |
|
69 |
/// <summary> |
|
70 |
/// 注文書返送確認日 |
|
71 |
/// </summary> |
|
72 |
public DateTime ReturnCheckDate |
|
73 |
{ |
|
74 |
get { return m_ReturnCheckDate; } |
|
75 |
set { m_ReturnCheckDate = value; } |
|
76 |
} |
|
77 |
|
|
78 |
/// <summary> |
|
79 |
/// 登録日付 |
|
80 |
/// </summary> |
|
81 |
public DateTime EntryDate |
|
82 |
{ |
|
83 |
set { m_EntryDate = value; } |
|
84 |
get { return m_EntryDate; } |
|
85 |
} |
|
86 |
/// <summary> |
|
87 |
/// 更新日付 |
|
88 |
/// </summary> |
|
89 |
public DateTime UpdateDate |
|
90 |
{ |
|
91 |
set { m_UpdateDate = value; } |
|
92 |
get { return m_UpdateDate; } |
|
93 |
} |
|
94 |
#endregion |
|
95 |
} |
|
96 |
} |
branches/src/ProcessManagement/ProcessManagement/DataModel/RequestOrderDate.cs | ||
---|---|---|
1 |
using System; |
|
2 |
using System.Collections.Generic; |
|
3 |
using System.Linq; |
|
4 |
using System.Text; |
|
5 |
using System.Threading.Tasks; |
|
6 |
|
|
7 |
namespace ProcessManagement.DataModel |
|
8 |
{ |
|
9 |
/// <summary> |
|
10 |
/// 請求書日付データ |
|
11 |
/// </summary> |
|
12 |
public class RequestOrderDate |
|
13 |
{ |
|
14 |
#region メンバ変数 |
|
15 |
private int m_ConstructionCode = 0; // 工事番号 |
|
16 |
private int m_RequestNo = 0; // 請求No |
|
17 |
private DateTime m_SendDate = DateTime.MinValue; // 請求書発給郵送日 |
|
18 |
private DateTime m_PaymentDate = DateTime.MinValue; // 入金日 |
|
19 |
private DateTime m_EntryDate = DateTime.Now; // 登録日付 |
|
20 |
private DateTime m_UpdateDate = DateTime.Now; // 更新日付 |
|
21 |
#endregion |
|
22 |
|
|
23 |
#region コンストラクタ |
|
24 |
#endregion |
|
25 |
|
|
26 |
#region プロパティ |
|
27 |
/// <summary> |
|
28 |
/// 工事番号 |
|
29 |
/// </summary> |
|
30 |
public int ConstructionCode |
|
31 |
{ |
|
32 |
get { return m_ConstructionCode; } |
|
33 |
set { m_ConstructionCode = value; } |
|
34 |
} |
|
35 |
/// <summary> |
|
36 |
/// 請求№ |
|
37 |
/// </summary> |
|
38 |
public int RequestNo |
|
39 |
{ |
|
40 |
get { return m_RequestNo; } |
|
41 |
set { m_RequestNo = value; } |
|
42 |
} |
|
43 |
/// <summary> |
|
44 |
/// 請求書発給郵送日 |
|
45 |
/// </summary> |
|
46 |
public DateTime SendDate |
|
47 |
{ |
|
48 |
get { return m_SendDate; } |
|
49 |
set { m_SendDate = value; } |
|
50 |
} |
|
51 |
/// <summary> |
|
52 |
/// 入金日 |
|
53 |
/// </summary> |
|
54 |
public DateTime PaymentDate |
|
55 |
{ |
|
56 |
get { return m_PaymentDate; } |
|
57 |
set { m_PaymentDate = value; } |
|
58 |
} |
|
59 |
/// <summary> |
|
60 |
/// 登録日付 |
|
61 |
/// </summary> |
|
62 |
public DateTime EntryDate |
|
63 |
{ |
|
64 |
get { return m_EntryDate; } |
|
65 |
set { m_EntryDate = value; } |
|
66 |
} |
|
67 |
|
|
68 |
/// <summary> |
|
69 |
/// 更新日付 |
|
70 |
/// </summary> |
|
71 |
public DateTime UpdateDate |
|
72 |
{ |
|
73 |
get { return m_UpdateDate; } |
|
74 |
set { m_UpdateDate = value; } |
|
75 |
} |
|
76 |
#endregion |
|
77 |
|
|
78 |
} |
|
79 |
} |
branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionBaseInfo/FrmConstructionBaseInfoAuxiliary.cs | ||
---|---|---|
3189 | 3189 |
} |
3190 | 3190 |
#endregion |
3191 | 3191 |
|
3192 |
#region ????O????t?t?B?[???h?????t????????
|
|
3192 |
#region ????O????t?t?B?[???h????O????????
|
|
3193 | 3193 |
/// <summary> |
3194 |
/// ????O????t?t?B?[???h?????t????????
|
|
3194 |
/// ????O????t?t?B?[???h????O????????
|
|
3195 | 3195 |
/// </summary> |
3196 | 3196 |
/// <param name="sender"></param> |
3197 | 3197 |
/// <returns></returns> |
branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/FrmConstructionLedger.cs | ||
---|---|---|
1440 | 1440 |
private void btnComplate_Click(object sender, EventArgs e) |
1441 | 1441 |
{ |
1442 | 1442 |
// ??????? |
1443 |
SetInputComplate(true);
|
|
1443 |
SetInputComplate(); |
|
1444 | 1444 |
} |
1445 | 1445 |
#endregion |
1446 | 1446 |
|
1447 |
#region ????????????{?^?????? |
|
1448 |
/// <summary> |
|
1449 |
/// ????????????{?^?????? |
|
1450 |
/// </summary> |
|
1451 |
/// <param name="sender"></param> |
|
1452 |
/// <param name="e"></param> |
|
1453 |
private void btnRestore_Click(object sender, EventArgs e) |
|
1454 |
{ |
|
1455 |
// ??????????? |
|
1456 |
SetComplateRestore(); |
|
1457 |
|
|
1458 |
this.Close(); |
|
1459 |
} |
|
1460 |
#endregion |
|
1461 |
|
|
1447 | 1462 |
#region ???S?????X?{?^?????? |
1448 | 1463 |
/// <summary> |
1449 | 1464 |
/// ???S?????X?{?^?????? |
branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/FrmConstructionLedger.designer.cs | ||
---|---|---|
81 | 81 |
this.label6 = new System.Windows.Forms.Label(); |
82 | 82 |
this.label12 = new System.Windows.Forms.Label(); |
83 | 83 |
this.lblLabel04 = new System.Windows.Forms.Label(); |
84 |
this.btnRestore = new System.Windows.Forms.Button(); |
|
84 | 85 |
this.label4 = new System.Windows.Forms.Label(); |
85 | 86 |
this.label2 = new System.Windows.Forms.Label(); |
86 | 87 |
this.btnLineDel = new System.Windows.Forms.Button(); |
... | ... | |
220 | 221 |
this.panel1.Controls.Add(this.label6); |
221 | 222 |
this.panel1.Controls.Add(this.label12); |
222 | 223 |
this.panel1.Controls.Add(this.lblLabel04); |
224 |
this.panel1.Controls.Add(this.btnRestore); |
|
223 | 225 |
this.panel1.Location = new System.Drawing.Point(7, 40); |
224 | 226 |
this.panel1.Name = "panel1"; |
225 | 227 |
this.panel1.Size = new System.Drawing.Size(1330, 160); |
... | ... | |
692 | 694 |
this.lblLabel04.TabIndex = 36; |
693 | 695 |
this.lblLabel04.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; |
694 | 696 |
// |
697 |
// btnRestore |
|
698 |
// |
|
699 |
this.btnRestore.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); |
|
700 |
this.btnRestore.BackColor = System.Drawing.Color.Blue; |
|
701 |
this.btnRestore.Font = new System.Drawing.Font("MS P明朝", 15.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128))); |
|
702 |
this.btnRestore.ForeColor = System.Drawing.Color.White; |
|
703 |
this.btnRestore.Location = new System.Drawing.Point(1229, 0); |
|
704 |
this.btnRestore.Name = "btnRestore"; |
|
705 |
this.btnRestore.Size = new System.Drawing.Size(90, 34); |
|
706 |
this.btnRestore.TabIndex = 69; |
|
707 |
this.btnRestore.Text = "済解除"; |
|
708 |
this.btnRestore.UseVisualStyleBackColor = false; |
|
709 |
this.btnRestore.Visible = false; |
|
710 |
this.btnRestore.Click += new System.EventHandler(this.btnRestore_Click); |
|
711 |
// |
|
695 | 712 |
// label4 |
696 | 713 |
// |
697 | 714 |
this.label4.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); |
... | ... | |
1183 | 1200 |
this.btnChangePrice.TabIndex = 99; |
1184 | 1201 |
this.btnChangePrice.Text = "受注金額変更"; |
1185 | 1202 |
this.btnChangePrice.UseVisualStyleBackColor = false; |
1203 |
this.btnChangePrice.Visible = false; |
|
1186 | 1204 |
this.btnChangePrice.Click += new System.EventHandler(this.btnChangePrice_Click); |
1187 | 1205 |
// |
1188 | 1206 |
// button1 |
... | ... | |
1343 | 1361 |
private System.Windows.Forms.DataGridViewTextBoxColumn Column24; |
1344 | 1362 |
private System.Windows.Forms.DataGridViewTextBoxColumn Column25; |
1345 | 1363 |
private System.Windows.Forms.DataGridViewTextBoxColumn Column26; |
1364 |
private System.Windows.Forms.Button btnRestore; |
|
1346 | 1365 |
} |
1347 | 1366 |
} |
branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/ConstructionLedger/FrmConstructionLedgerAuxiliary.cs | ||
---|---|---|
27 | 27 |
{ |
28 | 28 |
try |
29 | 29 |
{ |
30 |
// グリッドの情報を取得する |
|
31 |
int CellCount = dgvAllDisplay.ColumnCount; |
|
32 |
m_CellSize = new int[CellCount]; |
|
33 |
foreach (DataGridViewColumn col in dgvAllDisplay.Columns) |
|
34 |
{ |
|
35 |
m_CellSize[col.Index] = col.Width; |
|
36 |
} |
|
37 |
|
|
30 | 38 |
// 初期サイズ保持 |
31 | 39 |
m_GridWidth = dgvAllDisplay.Width; |
32 | 40 |
m_WindowWidth = this.Width; |
... | ... | |
524 | 532 |
// 支払枠を作成する |
525 | 533 |
CreatePaymentColumns(); |
526 | 534 |
|
527 |
// グリッドの情報を取得する |
|
528 |
int CellCount = dgvAllDisplay.ColumnCount; |
|
529 |
m_CellSize = new int[CellCount]; |
|
530 |
foreach (DataGridViewColumn col in dgvAllDisplay.Columns) |
|
531 |
{ |
|
532 |
m_CellSize[col.Index] = col.Width; |
|
533 |
} |
|
534 |
|
|
535 | 535 |
// 入力完了タイトルセット(初期は入力中をデフォルト表示) |
536 | 536 |
lblComplate.Text = s_ComplateString[(int)CommonDefine.ComplateTitleNo.Operateing]; |
537 | 537 |
ToolTip comptip = new ToolTip(); |
... | ... | |
547 | 547 |
// ToolTipが表示されるようにする |
548 | 548 |
comptip.SetToolTip(btnComplate, "このボタンを押すと台帳入力済みになって入力出来なくなります!!"); |
549 | 549 |
|
550 |
// 一般ユーザーは人件費を変更できない |
|
551 |
bool bVisible = true; |
|
552 |
// 新セキュリティデータ対応済みかを確認する |
|
553 |
if (CommonMotions.LoginUserData.SecCode == 0) |
|
554 |
{ |
|
555 |
int User = CommonDefine.SystemManageDiv[(int)CommonDefine.SysManaDivNo.UserAuthority].Key; // 一般ユーザー |
|
556 |
if (CommonMotions.LoginUserData.SecurityManagement == User) bVisible = false; |
|
557 |
} |
|
558 |
else |
|
559 |
{ |
|
560 |
int User = CommonDefine.SecurityRankList[(int)CommonDefine.SecurityRankPos.NormalAuthority].Key; // 一般ユーザー |
|
561 |
if (CommonMotions.LoginUserSecurity.SecRank == User) bVisible = false; |
|
562 |
} |
|
563 |
//btnAssistantChange.Visible = bVisible; |
|
564 |
//btnInstractorChange.Visible = bVisible; |
|
565 |
// 受注金額変更ボタンは上長以上のみ |
|
566 |
btnChangePrice.Visible = bVisible; |
|
567 |
|
|
568 | 550 |
return true; |
569 | 551 |
} |
570 | 552 |
catch (Exception ex) |
... | ... | |
793 | 775 |
|
794 | 776 |
// ボタンを消す |
795 | 777 |
btnComplate.Visible = false; |
778 |
btnRestore.Visible = false; |
|
796 | 779 |
|
797 | 780 |
// ラベルのサイズを変える |
798 |
lblComplate.Width += 30;
|
|
781 |
lblComplate.Width += btnComplate.Width;
|
|
799 | 782 |
|
800 | 783 |
// 画面ロック |
801 | 784 |
SeeModeLock(); |
785 |
|
|
786 |
// 最高責任者は解除できる |
|
787 |
int SRank = (int)CommonDefine.SecurityRankPos.SpecialAuthority; |
|
788 |
if (CommonMotions.LoginUserSecurity.SecRank != CommonDefine.SecurityRankList[SRank].Key) return; |
|
789 |
|
|
790 |
// 済解除ボタン表示 |
|
791 |
lblComplate.Width -= btnRestore.Width; |
|
792 |
btnRestore.Visible = true; |
|
802 | 793 |
} |
803 | 794 |
catch (Exception ex) |
804 | 795 |
{ |
... | ... | |
811 | 802 |
/// <summary> |
812 | 803 |
/// 入力完了処理 |
813 | 804 |
/// </summary> |
814 |
private void SetInputComplate(bool bUpdate)
|
|
805 |
private void SetInputComplate() |
|
815 | 806 |
{ |
816 | 807 |
try |
817 | 808 |
{ |
... | ... | |
828 | 819 |
if (!DataEntryProcess(false)) return; |
829 | 820 |
|
830 | 821 |
// 入力完了日をセットする |
831 |
if (!ClsChangeBaseInfoData.SetLedgerComplateDate(m_ConstructionCode, DateTime.Now)) return; |
|
822 |
if (m_ConstructionBaseInfo.LedgerComplateDate == DateTime.MinValue) |
|
823 |
if (!ClsChangeBaseInfoData.SetLedgerComplateDate(m_ConstructionCode, DateTime.Now)) return; |
|
832 | 824 |
} |
833 | 825 |
catch (Exception ex) |
834 | 826 |
{ |
... | ... | |
837 | 829 |
} |
838 | 830 |
#endregion |
839 | 831 |
|
832 |
#region 入力完了解除処理 |
|
833 |
/// <summary> |
|
834 |
/// 入力完了解除処理 |
|
835 |
/// </summary> |
|
836 |
private void SetComplateRestore() |
|
837 |
{ |
|
838 |
IOConstructionLedger LedgerDB = new IOConstructionLedger(); |
|
839 |
try |
|
840 |
{ |
|
841 |
if (MessageBox.Show("工事予算書データを入力完了から復帰させます、よろしいですか?", "完了復帰確認" |
|
842 |
, MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes) return; |
|
843 |
|
|
844 |
// 入力完了フラグをクリアする |
|
845 |
LedgerDB.UpdateFeild(m_ConstructionCode, (int)IOConstructionLedger.TableColumn.ComplateFlg, 0); |
|
846 |
|
|
847 |
string strMsg = "工事情報の台帳入力完了日をクリアしますか?\r\n"; |
|
848 |
strMsg += " ※台帳を永続的に復活させるには「はい」を、\r\n"; |
|
849 |
strMsg += " 一時的に入力できるようにするには「いいえ」を選択してください。"; |
|
850 |
if (MessageBox.Show(strMsg, "完了復帰確認", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No) return; |
|
851 |
|
|
852 |
ClsChangeBaseInfoData.SetLedgerComplateDate(m_ConstructionCode, DateTime.MinValue); |
|
853 |
} |
|
854 |
catch (Exception ex) |
|
855 |
{ |
|
856 |
logger.ErrorFormat("システムエラー:{0}:{1}", CommonMotions.GetMethodName(), ex.Message); |
|
857 |
} |
|
858 |
finally |
|
859 |
{ |
|
860 |
LedgerDB.close(); LedgerDB = null; |
|
861 |
} |
|
862 |
} |
|
863 |
#endregion |
|
864 |
|
|
840 | 865 |
#region 支払可能額・支払補填枠の再計算 |
841 | 866 |
/// <summary> |
842 | 867 |
/// 支払可能額・支払補填枠の再計算 |
branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/DRWork/FrmDRWorkAuxiliary.cs | ||
---|---|---|
465 | 465 |
|
466 | 466 |
// 日付セット |
467 | 467 |
dgv.Rows[InsertCnt].Cells[(int)GridColumn01.AttendanceDate].Value = TargetDay; |
468 |
// 残業時間0 |
|
469 |
dgv.Rows[InsertCnt].Cells[(int)GridColumn01.OverTimes].Value = "0"; |
|
468 | 470 |
|
469 | 471 |
// データ変更フラグON |
470 | 472 |
m_bChengeAns = true; |
branches/src/ProcessManagement/ProcessManagement/Forms/DataEntry/PurchaseOrderStatus/FrmPurchaseOrderStatus.cs | ||
---|---|---|
50 | 50 |
MailingDate, |
51 | 51 |
ReturnDate, |
52 | 52 |
ReturnCheckDate, |
53 |
OrderNo, |
|
53 | 54 |
} |
54 | 55 |
|
55 | 56 |
#endregion |
... | ... | |
73 | 74 |
/// <summary> |
74 | 75 |
/// ?N???t???O |
75 | 76 |
/// </summary> |
76 |
//private int m_ExecuteFlg = 0;
|
|
77 |
private int m_ExecuteFlg = 0; |
|
77 | 78 |
|
78 | 79 |
/// <summary> |
79 | 80 |
/// ?f?[?^????{?^???\???t???O |
... | ... | |
105 | 106 |
#endregion |
106 | 107 |
|
107 | 108 |
#region ?v???p?e?B |
108 |
//public int ExecuteFlg |
|
109 |
//{ |
|
110 |
// get { return m_ExecuteFlg; } |
|
111 |
// set { m_ExecuteFlg = value; } |
|
112 |
//} |
|
113 | 109 |
/// <summary> |
110 |
/// ?N???t???O |
|
111 |
/// </summary> |
|
112 |
public int ExecuteFlg |
|
113 |
{ |
|
114 |
get { return m_ExecuteFlg; } |
|
115 |
set { m_ExecuteFlg = value; } |
|
116 |
} |
|
117 |
/// <summary> |
|
114 | 118 |
/// ?f?[?^????{?^???\?? |
115 | 119 |
/// </summary> |
116 | 120 |
public bool DataAddtionButton |
... | ... | |
163 | 167 |
/// <param name="e"></param> |
164 | 168 |
private void btnEnd_Click(object sender, EventArgs e) |
165 | 169 |
{ |
166 |
// ?O?v???Z?X???? |
|
167 |
ClsExcute.BackProcess(); |
|
168 |
|
|
169 |
m_CloseingProcessOff = true; |
|
170 |
m_CloseingProcessOff = false; |
|
170 | 171 |
|
171 | 172 |
this.Close(); |
172 | 173 |
} |
173 | 174 |
#endregion |
174 | 175 |
|
175 |
#region ????{?^?? |
他の形式にエクスポート: Unified diff