[VB6] Indicizzazione campo con valore di proprietà Tag
description
Transcript of [VB6] Indicizzazione campo con valore di proprietà Tag
HTML.it forum (http://forum.html.it/forum/index.php)
- Visual Basic e .Net Framework (http://forum.html.it/forum/forumdisplay.php?forumid=56)-- [VB6] Indicizzazione campo con valore di proprietà Tag (http://forum.html.it/forum/showthread.php?
threadid=1082748)
Scritto da micolla il 27-01-2007 20:08:
Sintassi corretta???
Sono sempre io lo scarso....
Mi sapete indicare la sintassi giusta????
If Len(rsTipo.Fields("cmbCliente(I).Tag")) > 0 Then
'''end if
come gli devo passare il tag del campo cmbCliente???
e se gli passo :
campo=cmbCliente(I).Tag
If Len(rsTipo.Fields(campo)) > 0 Then
mi dice che non trova 'campo'.....????
Mi sapete aiutare??
Scritto da MItaly il 27-01-2007 20:17:
Ma che versione di VB è? Cos'è rsTipo? Cos'è cmbCliente?
Se si tratta (come credo) di VB6 e cmbCliente è un array di combobox allora:
codice:
If Len(rsTipo.Fields(cmbCliente(I).Tag)) > 0 Then
(come speravi che funzionasse con le virgolette? Le virgolette delimitano del testo, il loro contenuto non viene
valutato!).
__________________
Syntax Highlighter per tag CODE su HTML.it
No MP tecnici, posta sul forum.
Scritto da micolla il 27-01-2007 20:49:
Questo è tutto il codice:
Dim cnTIPO As New ADODB.Connection
Dim sqlTipo As String
For I = 0 To cmbCliente.Count - 1
Set rsTipo = New ADODB.Recordset
sqlTipo = "SELECT distinct '" & cmbCliente(I).Tag & "' FROM cliente"
Call carica_database(cnTIPO, rsTipo, sqlTipo, "db.mdb")
Do While Not rsTipo.EOF Or rsTipo.BOFIf Len(rsTipo.Fields(cmbCliente(I).Tag)) > 0 Then ' ----- l'errore è qui!!! -----
cmbCliente(0).AddItem UCase(rsTipo.Fields(cmbCLIENTE(I).tag)End If
rsTipo.MoveNext
LooprsTipo.CloseNext I
N.B cmbCliente è un serie di combobox
IL problema è che non riconosce il campo infatti mi dice:"Impossibile trovare l'oggetto nell'insiemecorrispondente...."
Aiutami ! Grazie 1K per ora!:master:
Scritto da oregon il 27-01-2007 21:21:
Dovresti controllare il valore di
cmbCliente(I).Tag
quando il programma si ferma ...
Usa la finestra di debug ...
Scritto da micolla il 27-01-2007 21:40:
il valore è corretto!
mi dice il nome del campo!
Scritto da oregon il 27-01-2007 21:57:
Hai controllato in debug tutti i valori della proprieta' Tag di tutti i combo al variare di I ?
L'errore che hai indicato si riferisce al fatto che quello che viene indicato come nome di campo, non esiste ...quindi ...
Scritto da alka il 28-01-2007 02:36:
Moderazione
Citazione:
Originariamente inviato da micolla Mi sapete indicare la sintassi giusta????
Indica il linguaggio nel titolo, e usa una descrizione sintetica che sia significativa.
Ho corretto io il titolo.__________________MARCO BREVEGLIERI
Sviluppo Soft ware e Web
Consulenza e corsi di programmazione
http://www .marco.breveglieri.name
Scritto da micolla il 28-01-2007 13:57:
ops... scusa ALKA!!
Mi spiego meglio:
COMBO = cmbCliente(I).Tag
MsgBox COMBO
cmbCliente(I).AddItem rsTipo.Fields(COMBO) ' ----- l'errore è qui!!! -----
In questo codice ho messo 'msgbox combo' per verificare che il tag sia corretto; infatto il msgbox mi
restituisce a video -- tipo -- cioe il tag corretto.Nella riga successiva mi fa intendere che non trova il campo -- combo -- quindi deduco che la sintassi --
rstipo.fields(COMBO) --- sia sbagliata .
mi dice sempre:"Impossibile trovare l'oggetto nell'insieme corrispondente...."
Nel db il campo --tipo-- esiste!!!
Aiutatemi questo piccolo codice mi fa risparmiare moltissime righe di codice!! funzionasse!!!!!!
Scritto da oregon il 28-01-2007 14:13:
No ... se i da' quell'errore allora il campo tipo non esiste nel recordset ottenuto ...
Attento ... non nel db ma nel recordset ...
Esegui il programma in debug e fermati poco prima dell'errore.
A quel punto scrivi tutti i nomi dei campi in debug, ad esempio con
Print rsTipo.Fields(0).Name
Print rsTipo.Fields(1).Name
e cosi' via per i campi che dovrebbero stare nel recordset ...
Scritto da micolla il 28-01-2007 18:36:
Tenendo presente il codice di prima potrei modificare la sintassi in questa maniera:
If rsTipo!COMBO <> "" Then
L'errore è uguale! come la correggo???
Scritto da micolla il 28-01-2007 18:46:
OPS.... MI SAI CHE HAI PROPRIO RAGIONE.......
GRAZIE 1K OREGON!!!
Tutte le ore sono con fuso orario CET. Ora sono le 06:35.
Powered by: vBulletin Version 2.3.6Copyright © Jelsoft Enterprises Limited 2000, 2001.