<!--#include file="kenshu.inc"-->
<%
Dim intKenshuCode, strKenshuName, strTime, strPlace
Dim strYearFrom, strMonthFrom, strDayFrom
Dim strYearTo, strMonthTo, strDayTo
Dim strYearShime, strMonthShime, strDayShime
Dim strMax, strShainCode, strNameKanji, strNameKana, strDetail, strToroku, strCheck
If Request.Cookies("kenshu")("CODE") = "" then
'---- クッキーがなければ認証エラー画面表示 ----
Call DispError("","")
Else
intKenshuCode = Request.Form("KenshuCode")
strToroku = Request.Form("Toroku")
'---- 共通ヘッダ表示 ----
Call DispHeader ("研修内容の登録・変更",
"")
If intKenshuCode = "" Then
intKenshuCode = 0
strNameKanji = " "
ElseIf strToroku = "1" Then
'---- パラメータの取得 ----
Call GetValues
'---- 入力チェック ----
strCheck = CheckValues
If strCheck <> "0" Then
response.write
"<B><FONT color=""#FF0000"">" & strCheck
& "</FONT></B>"
Else
'----
研修データの新規登録・更新 ----
Call ExecuteSQL()
Response.Write "以下の通り登録・変更しました。"
End If
ElseIf intKenshuCode > 0 Then
'---- 研修データから取得 ----
Call GetRecords
End If
'---- 研修内容の表示 ----
Call DispValues
'---- 研修一覧へ戻るボタン ----
Call DispButton
'---- 共通フッタ表示 ----
Call DispFooter("1")
End if
'**************************************
'パラメータの取得
'**************************************
Sub GetValues()
strKenshuName = Request.Form("KenshuName")
strYearFrom = Request.Form("YearFrom")
strMonthFrom = Request.Form("MonthFrom")
strDayFrom = Request.Form("DayFrom")
strYearTo = Request.Form("YearTo")
strMonthTo = Request.Form("MonthTo")
strDayTo = Request.Form("DayTo")
strYearShime = Request.Form("YearShime")
strMonthShime = Request.Form("MonthShime")
strDayShime = Request.Form("DayShime")
strTime = Request.Form("Time")
strPlace = Request.Form("Place")
strMax = Request.Form("Max")
strShainCode = Request.Form("ShainCode")
strDetail = Request.Form("Detail")
End Sub
'**************************************
'入力チェック
'**************************************
Function CheckValues ()
On Error Resume Next
CheckValues = "0"
If strKenshuName = "" Then
CheckValues = "「研修名称」は必ず入力して下さい。"
ElseIf LenB(strKenshuName) > 200 Then
CheckValues = "「研修名称」は200バイト以内で入力して下さい。"
ElseIf strYearFrom = "" Or strMonthFrom = "" Or
strDayFrom = "" Then
CheckValues = "「日程自」は必ず入力して下さい。"
ElseIf IsDate(DateSerial(strYearFrom, strMonthFrom, strDayFrom)) =
False Then
CheckValues = "「日程自」に適切な日付を入力して下さい。"
ElseIf IsDate(DateSerial(strYearTo, strMonthTo, strDayTo)) = False Then
If strYearTo & strMonthTo & strDayTo
<> "" Then
CheckValues = "「日程至」に適切な日付を入力して下さい。"
Exit Function
End If
ElseIf strYearShime = "" Or strMonthShime = "" Or
strDayShime = "" Then
CheckValues = "「申込締切日」は必ず入力して下さい。"
ElseIf IsDate(DateSerial(strYearShime, strMonthShime, strDayShime)) =
False Then
CheckValues = "「申込締切日」に適切な日付を入力して下さい。"
ElseIf strPlace = "" Then
CheckValues = "「場所」は必ず入力して下さい。"
ElseIf LenB(strPlace) > 100 Then
CheckValues = "「場所」は100バイト以内で入力して下さい。"
ElseIf strTime = "" Then
CheckValues = "「時間」は必ず入力して下さい。"
ElseIf LenB(strTime) > 100 Then
CheckValues = "「時間」は100バイト以内で入力して下さい。"
ElseIf LenB(strDetail) > 1000 Then
CheckValues = "「内容詳細」は1000バイト以内で入力して下さい。"
End If
If IsNumeric(strMax) = False Then
If strMax = "" Then
strMax = Null
Else
CheckValues = "「定員」は数字を入力して下さい。"
End If
End If
strSQL = "SELECT * FROM 社員マスタ WHERE 社員コード =
'" & strShainCode & "'"
objRec.Open strSQL, objDBCon
If objRec.EOF And objRec.BOF Then
CheckValues ="「講師コード」は適切な社員コードを入力して下さい。"
Else
strNameKanji = objRec.Fields("氏名漢字").Value
strNameKana = "(" &
objRec.Fields("氏名カナ").Value & ")"
End If
objRec.Close
End Function
'**************************************
'研修データの新規登録・更新
'**************************************
Sub ExecuteSQL()
objDBCon.BeginTrans
If intKenshuCode = 0 Then
'---- 研修コードの採番 ----
strSQL = "SELECT MAX(研修コード) AS
最大値 FROM 研修データ"
objRec.Open strSQL, objDBCon
intKenshuCode = objRec.Fields("最大値").Value
+ 1
objRec.Close
'---- 新規登録処理 ----
strSQL = "SELECT * FROM 研修データ"
objRec.Open strSQL, objDBCon, 1, 2
objRec.AddNew
Else
'---- 更新処理 ----
strSQL = "SELECT * FROM 研修データ
WHERE 研修コード = " & intKenshuCode
objRec.Open strSQL, objDBCon, 1, 2
End If
'---- レコードセットに入力値を設定 ----
Call SetValues
objRec.Update
objRec.Close
objDBCon.CommitTrans
End Sub
'**************************************
'レコードセットに入力値を設定
'**************************************
Sub SetValues()
objRec.Fields("研修コード").Value = intKenshuCode
objRec.Fields("研修名称").Value = strKenshuName
objRec.Fields("日程自").Value =
DateValue(DateSerial(strYearFrom, strMonthFrom, strDayFrom))
If strYearTo <> "" Then
objRec.Fields("日程至").Value =
DateValue(DateSerial(strYearTo, strMonthTo, strDayTo))
End If
objRec.Fields("申込締切日").Value =
DateValue(DateSerial(strYearShime, strMonthShime, strDayShime))
objRec.Fields("時間").Value = strTime
objRec.Fields("場所").Value = strPlace
objRec.Fields("定員").Value = strMax
objRec.Fields("講師コード").Value = strShainCode
objRec.Fields("内容詳細").Value = strDetail
objRec.Fields("更新者コード").Value =
Request.Cookies("kenshu")("CODE")
objRec.Fields("更新日").Value = Date()
End Sub
'**************************************
'研修データから取得
'**************************************
Sub GetRecords()
strSQL = "SELECT * FROM 研修データ A, 社員マスタ B
" & _
"WHERE A.講師コード
= B.社員コード " & _
"AND
研修コード = " & intKenshuCode
objRec.Open strSQL, objDBCon
strKenshuName = objRec.Fields("研修名称").Value
strYearFrom = Year(objRec.Fields("日程自").Value)
strMonthFrom = Month(objRec.Fields("日程自").Value)
strDayFrom = Day(objRec.Fields("日程自").Value)
strYearTo = Year(objRec.Fields("日程至").Value)
strMonthTo = Month(objRec.Fields("日程至").Value)
strDayTo = Day(objRec.Fields("日程至").Value)
strYearShime = Year(objRec.Fields("申込締切日").Value)
strMonthShime = Month(objRec.Fields("申込締切日").Value)
strDayShime = Day(objRec.Fields("申込締切日").Value)
strTime = objRec.Fields("時間").Value
strPlace = objRec.Fields("場所").Value
strMax = objRec.Fields("定員").Value
strShainCode = objRec.Fields("講師コード").Value
strNameKanji = objRec.Fields("氏名漢字").Value
strNameKana = "(" & objRec.Fields("氏名カナ").Value
& ")"
strDetail = objRec.Fields("内容詳細").Value
objRec.Close
End Sub
'**************************************
'入力欄の表示
'**************************************
Sub DispValues()
%>
<form action="kenshu05.asp" method="post">
<input type="hidden" name="KenshuCode"
value="<%=intKenshuCode%>">
<table border="0" bgcolor="<%=REDD%>">
<% If intKenshuCode > 0 Then
%> <tr>
<th bgcolor="<%=REDH%>">研修コード</th>
<td><%=intKenshuCode%></td>
</tr>
<% End If
%>
<tr>
<th bgcolor="<%=REDH%>">研修名称</th>
<td><% Call
DispKenshuNameText(strKenshuName)%></td>
</tr>
<tr>
<th bgcolor="<%=REDH%>">日程</th>
<td><% Call DispDateText2(strYearFrom,
strMonthFrom, strDayFrom, _
strYearTo,
strMonthTo, strDayTo) %></td>
</tr>
<tr>
<th bgcolor="<%=REDH%>">申込締切日</th>
<td><% Call
DispDateShimeText(strYearShime, strMonthShime, strDayShime) %></td>
</tr>
<tr>
<th bgcolor="<%=REDH%>">時間</th>
<td><% Call
DispTimeText(strTime)%></td>
</tr>
<tr>
<th bgcolor="<%=REDH%>">場所</th>
<td><% Call
DispPlaceText(strPlace)%></td>
</tr>
<tr>
<th bgcolor="<%=REDH%>">定員</th>
<td><% Call
DispMaxText(strMax)%></td>
</tr>
<tr>
<th bgcolor="<%=REDH%>">講師コード</th>
<td><% Call
DispShainCodeText(strShainCode)%></td>
</tr>
<tr>
<th bgcolor="<%=REDH%>">講師名</th>
<td><%=strNameKanji &
strNameKana%></td>
</tr>
<tr>
<th bgcolor="<%=REDH%>">内容詳細<br>(HTMLのタグが<br>利用できます)</th>
<td><% Call
DispDetailText(strDetail)%></td>
</tr>
</table>
<h3>上記内容で<input type="submit" value="登録">します。</h3>
<input type="hidden" name="ShoriCode"
value="<%=Request.Form("ShoriCode")%>">
<input type="hidden" name="Toroku" value="1">
<input type="hidden" name="Disp"
value="<%=Request.Form("Disp")%>">
</form>
<%
End Sub
%>