Visual Basic - Campos en Tabla

Life is soft - evento anual de software empresarial
 
Vista:

Campos en Tabla

Publicado por RAUL (60 intervenciones) el 17/02/2004 21:37:08
Hola a Todos. mi consulta es la siguiente: tengo una tabla con campos similares emplos cargo01,cargo02,cargo03, cargo04,cargo05,cargo06....cargo50,, como lo hago para leer todos los campos sin tener que repetir el codigo de carga nveces dado que tiene validar. hay alguna manera como en clipper por ejemplo que utilice macro en el campo y a medida que vaya aumentando cambie ???? ayuda plis gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Campos en Tabla

Publicado por Cecilia Colalongo (3116 intervenciones) el 17/02/2004 21:56:13
Si lo tienes en un Recordset recorrés la colección Fields:

Dim objField As Field

For Each objField In MiRecordset.Fields
Debug.Print objField.Value
Next
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Campos en Tabla

Publicado por RAUL (60 intervenciones) el 18/02/2004 13:39:41
Cecilia, el codigo es siguiente me los puede corregir por favor.:

Private Sub LlenarTabla()
Screen.MousePointer = 11

cSql = "SELECT * FROM prov_linea WHERE rut_proveedor= '" & cRutProveed & "' and linea_codigo='" & cLinProveed & "'"

Set rss = con.Execute(cSql)
If Not rss.EOF Then
cDato(1, 1) = rss!linea_tipo01
cDato(2, 1) = rss!linea_tipo02
cDato(3, 1) = rss!linea_tipo03
.....
cDato(1, 2) = rss!linea_cargo01
cDato(2, 2) = rss!linea_cargo02
cDato(3, 2) = rss!linea_cargo03
......
cDato(1, 3) = IIf(IsNull(rss!linea_fecha01) = True, "", IIf(IsEmpty(rss!linea_fecha01) = True, "", IIf(rss!linea_fecha01 = "01-01-1900", "", rss!linea_fecha01)))
cDato(2, 3) = IIf(IsNull(rss!linea_fecha02) = True, "", IIf(IsEmpty(rss!linea_fecha02) = True, "", IIf(rss!linea_fecha02 = "01-01-1900", "", rss!linea_fecha02)))
End If
Screen.MousePointer = 0
End Sub

Te doy un ejemplo son 50 campo iguales...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Campos en Tabla

Publicado por Cecilia Colalongo (3116 intervenciones) el 18/02/2004 14:10:31
Precisamente donde pones: rss!linea_tipo01 es equivalente a: rss.Fields.Item("linea_tipo01").Value el signo de exclamación (!) es una abreviatura.

Por lo que:

For i=1 To 50
cDato(i,1) = rss.Fields.Item("linea_tipo" & String(2-Len(i),"0") & i).Value
Next i

For i=1 To 50
cDato(i,2) = rss.Fields.Item("linea_cargo" & String(2-Len(i),"0") & i).Value
Next i

Igualmente revisa el diseño de la tabla ya que si son 50 campos iguales podrías partirlo en una tabla relacionada.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Campos en Tabla

Publicado por RAUL (60 intervenciones) el 18/02/2004 19:36:57
Cecilia, muchas gracias.

Me haz ayudado bastante, espero mantener correspondencia via mail contigo para hacerte mas consultas. gracias RAUL
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar