Newsgroup: it.comp.appl.access
Titolo: Select case....

ciao a tutti
 
volendo evitare ripetizioni nel codice ho fatto in questo modo,
ma non va bene, perchè se p.e. MyCustomer è "Cliente",
passa solo sul primo Case Is.
Come si deve fare?
Grazie
 
 
Public Sub CCdaFatt(MyCustomer As String)
......
....
 
  Select Case MyCustomer
    Case Is = "Cliente"
    strSql = strSql & "INNER JOIN Qry_Importi_IdSconto "
    strSql = strSql & "ON Qry_CarichiChiusi.IdCarico = Qry_Importi_IdSconto.IdCarico) "
    strSql = strSql & "LEFT JOIN Qry_DettFatture_IdSconto "
    strSql = strSql & "ON Qry_Importi_IdSconto.IdCarico = Qry_DettFatture_IdSconto.IdCarico "
    strSql = strSql & "WHERE Qry_CarichiChiusi.IdCliente = cliCriterio() "
    strSql = strSql & "AND Qry_Importi_IdSconto.MioSconto <> 0 "
    strSql = strSql & "AND (Qry_DettFatture_IdSconto.MioSconto) Is Null "
    Case Is = "Fornitore"
    strSql = strSql & "INNER JOIN Qry_Importi_IdSconto2 "
    strSql = strSql & "ON Qry_CarichiChiusi.IdCarico = Qry_Importi_IdSconto2.IdCarico) "
    strSql = strSql & "LEFT JOIN Qry_DettFatture_IdSconto2 "
    strSql = strSql & "ON Qry_Importi_IdSconto2.IdCarico = Qry_DettFatture_IdSconto2.IdCarico "
    strSql = strSql & "WHERE Qry_CarichiChiusi.IdFornitore = foCriterio() "
    strSql = strSql & "AND (Qry_DettFatture_IdSconto2.MioSconto) Is Null "
    Case Is = "Ag1"
    strSql = strSql & "INNER JOIN Qry_Importi_IdSconto "
    strSql = strSql & "ON Qry_CarichiChiusi.IdCarico = Qry_Importi_IdSconto.IdCarico) "
    strSql = strSql & "LEFT JOIN Qry_DettFatture_IdSconto "
    strSql = strSql & "ON Qry_Importi_IdSconto.IdCarico = Qry_DettFatture_IdSconto.IdCarico "
    strSql = strSql & "WHERE Qry_CarichiChiusi.IdAg1 = AgCriterio() "
    strSql = strSql & "And Qry_Importi_IdSconto.MioSconto <> 0 "
    strSql = strSql & "AND (Qry_DettFatture_IdSconto.MioSconto) Is Null "
 
  End Select
 
 
  Select Case MyCustomer
    Case Is = "Cliente", "Ag1"
    strSql = strSql & "INNER JOIN Qry_Importi_IdSconto "
    strSql = strSql & "ON Qry_CarichiChiusi.IdCarico = Qry_Importi_IdSconto.IdCarico) "
    strSql = strSql & "LEFT JOIN Qry_DettFatture_IdSconto "
    strSql = strSql & "ON Qry_Importi_IdSconto.IdCarico = Qry_DettFatture_IdSconto.IdCarico "
    Case Is = "Cliente"
    strSql = strSql & "WHERE Qry_CarichiChiusi.IdCliente = cliCriterio() "
    Case Is = "Ag1"
    strSql = strSql & "And Qry_Importi_IdSconto.MioSconto <> 0 "
    Case Is = "Cliente", "Ag1"
    strSql = strSql & "AND Qry_Importi_IdSconto.MioSconto <> 0 "
    strSql = strSql & "AND (Qry_DettFatture_IdSconto.MioSconto) Is Null "
    Case Is = "Fornitore"
    strSql = strSql & "INNER JOIN Qry_Importi_IdSconto2 "
    strSql = strSql & "ON Qry_CarichiChiusi.IdCarico = Qry_Importi_IdSconto2.IdCarico) "
    strSql = strSql & "LEFT JOIN Qry_DettFatture_IdSconto2 "
    strSql = strSql & "ON Qry_Importi_IdSconto2.IdCarico = Qry_DettFatture_IdSconto2.IdCarico "
    strSql = strSql & "WHERE Qry_CarichiChiusi.IdFornitore = foCriterio() "
    strSql = strSql & "AND (Qry_DettFatture_IdSconto2.MioSconto) Is Null "
 
 
  End Select


risolto
    If MyCustomer = "Cliente" Then
      ............  
    ElseIf MyCustomer = "Ag1" Then
      ............  
    End If