Newsgroup: it.comp.appl.access
Titolo: Ci riprovo:strano comportamento del codice

Cari ragazzi,ciao a tutti.
Provo a riproporvi un problema assolutamente strano, non riesco ad
immaginare cosa possa essere anche perche' lo fa solo con Start MailTo.
Allora: con  un commandbutton vado ad aprire una finestra Nuovo Messaggio di
Outlook e vado a prendere i dati per i campi To: ,Subject:, dai controlli
della form.
Il codice è questo:
Dim strOggetto As String
strOggetto = Me!Azienda
Call Shell("start mailto:" & [EmailCollega] & "?subject=" & strOggetto,
vbHide)
Accade che quando attivo l'evento, il campo Subjet si aggiorna dal controllo
e funziona, ma se il nome dell'azienda è composto da 2 nomi
es. "Coca Cola", mi visualizza solo "Coca" e non il nome per intero.
La stessa cosa invece NON accade se sempre con Outlook invio un
allegato.Come potrete vedere il concetto è lo stesso:va a
prendere l'indirizzo da un controllo e nel campo oggetto del messaggio
inserisce "esclusione Coca Cola", quindi senza troncarmi
la parola.Ecol l'altro codice:
Dim str As String
Dim strVar As String
str = Me![Email]
strVar = Me![Azienda]
DoCmd.SendObject acReport, "Esclusioni", "RichTextFormat(*.rtf)",
"
paolo....@libero.it
" & "", "Esclusione " & strVar, "", True, """"
La mia sensazione (umana) è che è come se nel primo caso "vedesse" lo spazio
tra le due parole come una interruzione,perchè effettivamente taglia
proprio nello spazio la parola.Nel secondo caso invece la considera una
stringa intera.Bohhhhh!!!!
Qualcuno ha una idea su cosa puo' essere????
Grazie a tutto il ng
Eddie
Ps.Ho postato il codice per essere notevolmente piu' chiaro

 Ps.Ho postato il codice per essere notevolmente piu' chiaro
non conosco i due prodotti, ma la tua sensazione mi pare giusta, i.e. se
tu da IE provi a mandare un URL con parametri che contengono spazi
generalmente nello spazio il sistema inserisce un + e tratta i parametri
in modo corretto mentre NS prende errore. Prova a racchidere il
parametro tra apici e vedi che succede
-- 
Alessandro Cara

 Alessandro Cara

 parametro tra apici e vedi che succede
Anche quello che dici tu č giusto....infatti se alla prima stringa dň il


 Coca_Cola...sta malissimo!!!!
immagino di essere stato poco chiaro.
Quello che volevo dire e' che alcuni prodotti (es IE ed immagino anche
Outlook -stessa parrocchia-) prima di avviare i dati al target esaminano
gli stessi e li "aggiustano" altri prodotti non lo fanno.
Nel tuo caso ripeto prova a inviare 
subject="& oggetto 
come
subject='" & oggetto & "'"
cioe' chiudendolo fra apici
oppure, essendo un parametro della request line, sostituendo lo spazio
con "+" o %20 (valore esadecimale dello spazio) in questo caso
il target capisce che i valori "+" o %20 sono uno spazio.
Questo che hai citato e' un problema abbastanza comune sotto internet,
fatto sta che in tecnologia ASP-VBS vengono fornite istruzioni(replace,
server.urlencode) che servono proprio per superare questo problema.
Lo spazio, come altri caratteri, come ben sai, e' un carattere speciale
e quindi deve essere trattato come tale.
a.cara

 il target capisce che i valori "+" o %20 sono uno spazio.
[Cut]
Caro Alessandro,
in effetti non ti avevo capito bene, ma non è colpa tua, non è che io sia un
mago della programmazione....sto solo cercando di fare
per piacere, per onore e per dimostrare a mio fratello(programmatore c++)
che non sono da meno anche se ho cominciato a 40 anni,
del mio meglio....:-))))
Non ho capito bene in effetti: se chiudo tra apici la stringa, lei (essa?)
:-) riconosce che deve valutare uno spazio come un carattere speciale??
Oppure devo dichiararlo espressamente??? Ed in che modo??.......comunque ci
tenevo ad informarti che (la fantasia e la creativita' , è vero, non
hanno limiti) sono riuscito ad ingannare Outlook ( non che sia difficile,
visto l'idiozia del programma) in questo modo:
Visto che l'azione SendObjet a  differenza del MailTo mi permetteva di
inserire nella stringa tutta la frase che volevo,spazi compresi,(ed è qui
che mi scervello!!!Cacchio è la stessa applicazione!!)...ho pensato di
ingannare Outlook simulando un SendObject, cioè , non inviando nulla ma
usufruendo dei parametri
di impostazione...et voilà...quello che non mi veniva concesso da una parte
me lo offrono dall'altra e percio' col codice:
DoCmd.SendObject , , , str, "", "", "Notizie su " & strOggetto, "", True, ""
mi ritrovo quello che volevo e cioè nell'oggetto del messsaggio:
Notizie su Coca Cola
Vai a capire...
Comunque grazie della tua cortesia e del tuo interesse, se mi fai un esempio
di come si dichiarano i caratteri speciali te ne saro' grato. E' proprio
vero
che spesso da un pensiero, da una osservazione apparentemente distante, si
arriva ad avere lo spunto per la soluzione.
Grazie ancora a te e a questo meraviglioso Ng
Eddie
Ps. Domani postero' sul Ng una richiesta di chiarimento sul concetto del
valore Null, spero di avere anche un tuo parere