Newsgroup: it.comp.appl.access
Titolo: Routine Dopo Aggiornamento

Ho questa routine  sotto , che non mi da risultati perchè 
un controllo nella form "SiglaProvincia" rimane vuoto
 
Dovrei far funzionare questa routine anche se il controllo "SiglaProvincia" 
rimane vuoto 
 
Come posso fare ? 
 
 
If IsNull(Me.Nazione) Or IsNull(Me.PesoLordo) Then
        Me.CostoSpedizione = Null
   Else
 
 
             If Me.Nazione = "Austria" Or Me.Nazione = "Belgio" Or Me.Nazione = "Germania" _
             Or Me.Nazione = "Olanda" Or Me.Nazione = "Paesi Bassi" Or Me.Nazione = "Lussemburgo" Then
 
 
  Select Case PesoLordo
 
          Case Is <= 3 'Valore compreso tra 0÷3000
               Me.CostoSpedizione = 7
                  Me.TSP = "CO"
                      Me.Corriere = "GLS Europa 1"
                         Me.TipoSpedizione = "GLS Standard Europa 1"
                             Me.ZonaSpedizione = "Unione Europea"
                                 Me.TipoOrdine = "Ebay"
                                       Me.TipoPagamento = "Ebay"
 
           Case Is <= 5 'Valore compreso tra 3÷5000
               Me.CostoSpedizione = 8
                  Me.TSP = "CO"
                      Me.Corriere = "GLS Europa 1"
                         Me.TipoSpedizione = "GLS Standard Europa 1"
                             Me.ZonaSpedizione = "Unione Europea"
                                 Me.TipoOrdine = "Ebay"
                                       Me.TipoPagamento = "Ebay"
 
           Case Is <= 10 'Valore compreso tra 5÷10000
               Me.CostoSpedizione = 9
                  Me.TSP = "CO"
                      Me.Corriere = "GLS Europa 1"
                         Me.TipoSpedizione = "GLS Standard Europa 1"
                             Me.ZonaSpedizione = "Unione Europea"
                                 Me.TipoOrdine = "Ebay"
                                       Me.TipoPagamento = "Ebay"
 
         Case Is <= 15 'Valore compreso tra 10÷15000
               Me.CostoSpedizione = 11
                  Me.TSP = "CO"
                      Me.Corriere = "GLS Europa 1"
                         Me.TipoSpedizione = "GLS Standard Europa 1"
                             Me.ZonaSpedizione = "Unione Europea"
                                 Me.TipoOrdine = "Ebay"
                                       Me.TipoPagamento = "Ebay"
 
          Case Is <= 20 'Valore compreso tra 15÷20000
               Me.CostoSpedizione = 13
                  Me.TSP = "CO"
                      Me.Corriere = "GLS Europa 1"
                         Me.TipoSpedizione = "GLS Standard Europa 1"
                             Me.ZonaSpedizione = "Unione Europea"
                                 Me.TipoOrdine = "Ebay"
                                       Me.TipoPagamento = "Ebay"
 
         Case Is <= 30 'Valore compreso tra 20÷30000
               Me.CostoSpedizione = 15
                  Me.TSP = "CO"
                      Me.Corriere = "GLS Europa 1"
                         Me.TipoSpedizione = "GLS Standard Europa 1"
                             Me.ZonaSpedizione = "Unione Europea"
                                 Me.TipoOrdine = "Ebay"
                                       Me.TipoPagamento = "Ebay"
 
                                      End Select
            			End If
               		                		End If
 
Grazie  Giuseppe


non vedo "siglaprovincia" in questo codice...quindi dovrebbe essere 
irrilevante
 
a meno che non sia ancor assonnato
 
BFS
 
 


Buongiorno , 
 
"Siglaprovincia" è un controllo che viene popolato automaticamente .
mi spiego meglio , importo un file da Ebay  con tutti i dati delle spedizioni effettuate  
importando i dati spedizione dei clienti Italia automaticamente il dato SiglaProvincia viene inserito 
il problema è quando importa i dati dei clienti estero che non usano o non inseriscono la Provincia e il campo rimane vuoto 
anche per i clienti estero se hanno la provincia allora la routine funziona  e mi inserisce in automatico
questi dati :
 
Io inserisco il peso sul controllo "PesoLordo" e automaticamente mi inserisce  i valori sotto 
 
Case Is <= 3 'Valore compreso tra 0÷3000
Me.CostoSpedizione = 7
                    Me.TSP = "CO"
                        Me.Corriere = "GLS Europa 1"
                          Me.TipoSpedizione = "GLS Standard Europa 1"
                               Me.ZonaSpedizione = "Unione Europea"
                                  Me.TipoOrdine = "Ebay"
                                         Me.TipoPagamento = "Ebay"
 
se dopo aggiornamento non trova un valore sul controllo SiglaProvincia  questo sopra non funziona 
quello che vorrei è che  la routine mi funzionasse anche se il valore "SiglaProvincia" è vuoto 
 
Giuseppe


vado ad intuito perchè continuo a non capire dove è la provincia in 
questo codice e quindi perchè il codice fallisca in caso di sua mancanza
 
 
forse questo codice l'hai messo nel after update della SiglaProvincia ?
 
se si potresti crearti una funzione
 
calcolaSpese()
con tutto quel codice dentro
 
 
nel after update del campo nazione potresti mettere:
 
if Me.Nazione<>"ITALIA" then
	'devo richiamare la funzione
	call calcolaSpese	
 
end if
 
 
nel after update del campo siglaprovincia  mettere:
 
call calcolaSpese	
 
 
e quindi in ogni caso il codice verrebbe eseguito
 
se non è cosi non ho capito nulla di quello che devi fare
 
ciao
BFS
 
 
 
 
 
 
 
 
 
 
 
 
 
 

 BFS
 
Può essere perchè sullo stesso controllo PesoLordo  ho all'inizio questa istruzione sotto ?
 
dal after update del controllo PesoLordo  vengono popolati i vari controlli , alcuni in base alla Nazione ( no Italia )
invece Italia in base alla Provincia 
 
Private Sub PesoLordo_AfterUpdate()
 
' Spedizioni  per  ITALIA  *************** ITALIA ***************  GLS / BRT
 
    If IsNull(Me.SiglaProvincia) Or IsNull(Me.PesoLordo) Then
        Me.CostoSpedizione = Null
    Else
 
 
           If Me.SiglaProvincia = "AQ" Or Me.SiglaProvincia = "TE" Or Me.SiglaProvincia    ecc.ecc.      Then
 
 
              Select Case PesoLordo
                Case Is <= 4
                    Me.CostoSpedizione = 6.5
                     Me.TSP = "SCT"
                      Me.Corriere = "GLS Italia"
                         Me.TipoSpedizione = "STANDARD Italia"
                            Me.ZonaSpedizione = "ITALIA"
                                Me.TipoPagamento = "Ebay"
 
                Case Is <= 5
                    Me.CostoSpedizione = 7.5
                      Me.TSP = "SCT"
                       Me.Corriere = "GLS Italia"
                         Me.TipoSpedizione = "STANDARD Italia"
                            Me.ZonaSpedizione = "ITALIA"
                                Me.TipoPagamento = "Ebay"
                Case Is <= 15
                    Me.CostoSpedizione = 9.9
                     Me.TSP = "SCT"
                      Me.Corriere = "GLS Italia"
                         Me.TipoSpedizione = "STANDARD Italia"
                            Me.ZonaSpedizione = "ITALIA"
                                Me.TipoPagamento = "Ebay"
                Case Is <= 24
                Me.CostoSpedizione = 11.5
                 Me.TSP = "SCT"
                      Me.Corriere = "GLS Italia"
                         Me.TipoSpedizione = "STANDARD Italia"
                            Me.ZonaSpedizione = "ITALIA"
                                Me.TipoPagamento = "Ebay"
            End Select
 
        Else
                   If Me.SiglaProvincia = "CT" Or Me.SiglaProvincia = "RG" Or Me.SiglaProvincia = "ME" Or Me.SiglaProvincia = "AG" Or Me.SiglaProvincia = "SR" _
                   Or Me.SiglaProvincia = "CA" Or Me.SiglaProvincia = "CI" Or Me.SiglaProvincia = "VS" Or Me.SiglaProvincia = "NU" _
                   Or Me.SiglaProvincia = "OG" Or Me.SiglaProvincia = "SS" Or Me.SiglaProvincia = "OT" Or Me.SiglaProvincia = "OR" _
                   Or Me.SiglaProvincia = "KR" Or Me.SiglaProvincia = "RC" Or Me.SiglaProvincia = "CZ" Or Me.SiglaProvincia = "CS" _
                   Or Me.SiglaProvincia = "VV" Or Me.SiglaProvincia = "PA" Or Me.SiglaProvincia = "VE" Then
 
                   Select Case PesoLordo
                Case Is <= 4
                    Me.CostoSpedizione = 6.5
                     Me.TSP = "SCT"
                      Me.Corriere = "BRT - Italia"
                         Me.TipoSpedizione = "STANDARD Italia"
                            Me.ZonaSpedizione = "ITALIA"
                                Me.TipoPagamento = "Ebay"
 
 
                Case Is <= 5
                    Me.CostoSpedizione = 6.95
                      Me.TSP = "SCT"
                       Me.Corriere = "BRT - Italia"
                         Me.TipoSpedizione = "STANDARD Italia"
                            Me.ZonaSpedizione = "ITALIA"
                                Me.TipoPagamento = "Ebay"
                Case Is <= 15
                    Me.CostoSpedizione = 9.9
                     Me.TSP = "SCT"
                      Me.Corriere = "BRT - Italia"
                         Me.TipoSpedizione = "STANDARD Italia"
                            Me.ZonaSpedizione = "ITALIA"
                                Me.TipoPagamento = "Ebay"
                Case Is <= 24
                Me.CostoSpedizione = 13.2
                 Me.TSP = "SCT"
                      Me.Corriere = "BRT - Italia"
                         Me.TipoSpedizione = "STANDARD Italia"
                            Me.ZonaSpedizione = "ITALIA"
                                Me.TipoPagamento = "Ebay"
End Select
 
Ciao Giuseppe


ok ora è chiaro
 
farei un if then per dividere i due casi
 
 
if isnull(me.siglaprovincia) then
 
	conteggi per estero
 
else
 
	conteggi per italia
endif
 
 


OK sistemato tutto  
 
Grazie   
Giuseppe