Le tabelle importanti sono FlottaCharter e tabListini.codice:Public Function GetBoatsList(Optional ByVal FilterOptions As String = "", Optional ByVal SortOptions As String = "SortOrderTipoImbarcazione, IdTipoImbarcazione, SortOrder, Lunghezza, Nome", Optional ByVal PageSize As Integer = 0, Optional ByVal PagePointer As Integer = 0) As ADODB.Recordset Dim SQLString As String SQLString = "SELECT * FROM (SELECT FlottaCharter.*, BasiCharter.CodiceBase, BasiCharter.Descrizione" & mLanguageCode & " AS DescrizioneBase, LineeCharter.CodiceLinea, LineeCharter.Descrizione" & mLanguageCode & " AS DescrizioneLinea," SQLString = SQLString & " TipiImbarcazioni.SortOrder as SortOrderTipoImbarcazione, TipiImbarcazioni.Descrizione" & mLanguageCode & " AS DescrizioneTipo, LineeCharter.IdArmatore, Armatori.Descrizione AS DescrizioneArmatore, " SQLString = SQLString & "'Listini' AS Listini," SQLString = SQLString & "'Preview' AS Preview" SQLString = SQLString & " FROM FlottaCharter INNER JOIN" SQLString = SQLString & " TipiImbarcazioni ON FlottaCharter.IdTipoImbarcazione = TipiImbarcazioni.IdTipoImbarcazione LEFT OUTER JOIN" SQLString = SQLString & " tabListini ON FlottaCharter.CodiceBarca = tabListini.CodiceBarca LEFT OUTER JOIN" SQLString = SQLString & " BasiCharter ON tabListini.CodiceBase = BasiCharter.CodiceBase LEFT OUTER JOIN" SQLString = SQLString & " LineeCharter ON tabListini.CodiceLinea = LineeCharter.CodiceLinea LEFT OUTER JOIN" SQLString = SQLString & " Armatori ON LineeCharter.IdArmatore = Armatori.IdArmatore) BoatsList" If FilterOptions <> "" Then SQLString = SQLString & " WHERE " & FilterOptions If SortOptions <> "" Then SQLString = SQLString & " ORDER BY " & SortOptions Set GetBoatsList = New ADODB.Recordset GetBoatsList.CursorLocation = adUseClient GetBoatsList.Open SQLString, mDBConnection, adOpenStatic, adLockReadOnly If GetBoatsList.RecordCount > 0 Then If PageSize > 0 Then GetBoatsList.PageSize = PageSize GetBoatsList.AbsolutePage = PagePointer End If End If End Function
FlottaChater è una tabella con tutti i campi di una barca(nome,modello ecc). tabListini invece collega una barca a una base e a un listino.
La parte che dovrei cambiare è quella che si ritorna a "Listini" che dovrebbe svolgere una nuova funzione, "Preview" va bene così.
Mi ripeto: vorrei che se un'imbarcazione ha un un listino questo venga evidenziato, e per questo la parte da cambiare nella funzione sarebbe:
Se invece quella barca non ha nessun listino, si dovrebbe optare per:codice:SQLString = SQLString & "'Listino trovato, codice ID listino: ' + STR(tabListini.ID) AS Listini,"
Ho provato con quell' If per far andare uno di questi due "pezzi" di codice, ma si fissa solo con uno dei due e produce un'output sbagliatocodice:SQLString = SQLString & "'Listino non trovato' AS Listini,"

Rispondi quotando