codice:
'Loop to create dynamically create input control for each field
Response.Write("<table>")
For Each fldF in objForm.ADORecordset.Fields
strName = fldF.Name
Select Case strName 'check for replication columns
Case "Gen_Description"
'Response.Write fldF.type
End Select
intSize = fldF.DefinedSize
If intSize = -1 Then
intsize=50
End If
intFKColumnCount = 0
strFKColumnName = ""
fkrelatedtable = ""
fkrelatedfield = ""
Select Case fldF.Type
Case 205, 128, 204 'adLongVarBinary, adBinary, adVarBinary
Response.Write("<tr><td nowrap valign=""top"" align=""right"">")
Response.Write("<span class=""FieldName"">" & strName & ":</span>")
Response.Write(" ")
Response.Write("</td>")
Response.Write("<td align=""left"" valign=""baseline"">")
Response.Write("<span class=""Information"">BinaryData</span> ")
Response.Write("</td></tr>")
Case Else
hasdef=false
If ocdShowDefaults And Request.QueryString("sqlid") = "" And Request.QueryString("sqlwhere") = "" And Not ocdDatabaseType = "Oracle" Then
intrsdef = 0
Do while intrsdef < ubound(arrrsdef,2)
If ocdDataBaseType = "Access" Then
astrTemp = FormatForSQL((Request.QueryString("sqlfrom")),ocddatabasetype,"REMOVESQLIDENTIFIER")
ElseIf ocdDataBaseType = "SQLServer" Then
astrTemp = GetSQLIDFPart(Request.QueryString("SQLFROM"),"SQLOBJECTNAME", ocdQuotePrefix,ocdQuoteSuffix)
End If
If astrTemp = (arrrsdef(0,intrsdef)) Then
If UCase(strName) = UCase(arrrsdef(1,intrsdef)) Then
If Not isnull(arrrsdef(2,intrsdef)) Then
evdef = arrrsdef(2,intrsdef)
hasdef = true
exit do
End If
End If
End If
intrsdef = intrsdef + 1
Loop
If Not hasdef Then
evdefresult = ""
Else
call rsdefeval.open ("Select " & evdef & " as expr1", objForm.ADOConnection)
evdefresult = rsDefeval.Fields(0).Value
rsdefeval.close
End If
Else
evdefresult = ""
End If
If isnull(evdefresult) Then
evdefresult = ""
End If
If ocdSelectForeignKey And HasFK And Not ocdReadOnly Then
rsFK.MoveFirst
Do While Not rsFK.EOF
If (rsFK.Fields("FK_TABLE_NAME").Value) = strSQLTName And rsFK.Fields("FK_COLUMN_NAME").Value = strNAME Then
intFKColumnCount = intFKColumnCount + 1
strFKColumnName = strName
fkrelatedtable = rsFK.Fields("PK_TABLE_NAME").Value
fkrelatedfield = rsFK.Fields("PK_COLUMN_NAME").Value
End If
rsFK.MoveNext
Loop
End If
Response.Write("<tr><td nowrap valign=""top"" align=""right"">")
Response.Write("<span class=""FieldName"">" & strName & ":</span>")
If CBool(fldF.Attributes And &H00000020) Then 'adFldIsNullable
Response.Write(" ")
Else
Response.Write(" <span class=""Warning"">*</span>")
End If
Response.Write("</td>")
If intfkcolumncount = 1 Then 'multicolumns Not supported as dropdowns
Response.Write("<td align=""left"" valign=""top"">")
If objForm.ADOConnection.provider = "Microsoft.Jet.OLEDB.4.0" Then
call objForm.DisplayFieldAsSelectList("Centro","H;W;","Home;Work","","")
Else
Call objForm.DisplayFieldAsRelatedValues(Replace(fldF.Name,"""","""""") ,"Select """ & fkRelatedField & """ From """ & fkRelatedTable & """ Order By """ & fkRelatedField & """",evdefresult,"class=DataEntry")
End If
Response.Write("</td></tr>")
Else
Select Case fldF.Type
Case 201, 203 'adLongVarChar, adLongVarWChar
Response.Write("<td align=""left"" valign=""top"">")
Call objForm.DisplayFieldAsMemo(strName,evdefresult,"rows=""5"" cols=""35"" class=""DataEntry"" ")
If Not cbool(cint(ocdnscCompatibility) And ocdNoJavaScript) And Not ocdReadOnly Then
Response.Write("[img][/img]")
Response.Write(vbCRLF & "<script type=""text/javascript"" Language=""JavaScript"">" & vbCRLF)
Response.Write("if (parseInt(navigator.appVersion) >= 4) {" & vbCRLF)
Response.Write(" If (navigator.appName == ""Microsoft Internet Explorer"") {" & vbCRLF)
Response.Write("document.write ('<img alt=\""HTML Edit\"" SRC=\""AppHTMLEdit.gif\"" border=""0"" onClick=\""javascript:window.open(\'ocdHTMLEdit.asp?CallingForm=" & varformnum & "&TextField=" & server.urlencode("ocdTF" & strName) & "\', \'zoomtext\',\'height=400,width=600,scrollbars=yes\')\"">');" & vbCRLF)
Response.Write(" }" & vbCRLF)
Response.Write("}" & vbCRLF)
Response.Write("</script>" & vbCRLF)
End If
Response.Write("</td></tr>")
Case 11 'adBoolean
Response.Write("<td align=""left"" valign=""top"">")
If Not CBool(fldF.Attributes And &H00000020) Then
Call objForm.DisplayFieldAsCheckBox(strName,True,False,True,"")
Else
Call objForm.DisplayFieldAsTextBox(strName,"","size=""5"" maxlength=""12"" class=""DataEntry""")
Response.Write("</td></tr>")
End If
Case 133, 135, 134, 7 'adDBDate, adDBTimeStamp, adDBTime, adDate
Response.Write("<td align=""left"" valign=""top"">")
Call objForm.DisplayFieldAsTextBox(strName,evdefresult, "size=""20"" maxlength=""50"" class=""DataEntry""")
If Not (cbool(ocdnscCompatibility) And ocdNoJavaScript) And Not ocdReadOnly Then
Response.Write("[img][/img]")
End If
Response.Write("</td></tr>")
Case 6 'adCurrency
Response.Write("<td align=""left"" valign=""top"">")
call objForm.DisplayFieldAsSelectList("Centro","H;W;","Home;Work","","")
Response.Write("</td></tr>")
Case 20, 14, 5, 131, 4, 2, 16, 21, 19, 18, 17, 3 'adBigInt, adDecimal, adDouble, adNumeric, adSingle, _
' adSmallInt, adTinyInt, adUnsignedBigInt, adUnsignedInt, _
' adUnsignedSmallInt, adUnsignedTinyInt,adInteger
Response.Write("<td align=""left"" valign=""top"">")
Call objForm.DisplayFieldAsTextBox(strName,evdefResult, "size=""24"" maxlength=""50"" class=""DataEntry"" ")
Response.Write("</td></tr>")
Case Else
Response.Write("<td align=""left"" valign=""top"">")
If intSize > 35 Then
bintSize = 35
Else
bintSize = intSize
End If
Call objForm.DisplayFieldAsTextBox(strName,evdefresult, "size=""" & bintSize & """ maxlength=""" & intSize & """ class=""DataEntry""")
Response.Write("</td></tr>")
End Select
End If
End Select
Response.flush
response.clear
Next
etc etc...