Una famiglia di sistemi di gestione per database relazionali di Microsoft progettati per semplificare l'uso.
In questo caso lavori solo sul record corrente della maschera.
Mimmo
Questo browser non è più supportato.
Esegui l'aggiornamento a Microsoft Edge per sfruttare i vantaggi di funzionalità più recenti, aggiornamenti della sicurezza e supporto tecnico.
Ciao a tutti sto modificando un db trovato in rete per gestire un piccolo magazzino, ho le seguenti tabelle
Articoli
Movimenti
La maschera per visualizzare tutti i movimenti ha la possibilità di avvisare quando un prodotto è sotto la scorta minima, c'è anche un report che fa vedere la lista di tutti i prodotti che sono sotto la scorta minima.
in questa maschera seguendo un tutorial ho creato un pulsante per l'invio della mail e funziona benissimo, solo che invia una mail singola di un singolo prodotto e non di tutti i prodotti la mia esigenza sarebbe di inviare una mail unica con tutti i prodotti da riordinare possibilmente in automatico quando rileva prodotti sotto la scorta minima.
Non so se mi sono spiegato bene nel caso chiedetemi pure altre informazioni, ringrazio in anticipo per l'aiuto.
Una famiglia di sistemi di gestione per database relazionali di Microsoft progettati per semplificare l'uso.
Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.
In questo caso lavori solo sul record corrente della maschera.
Mimmo
Ciao,
Hai risolto?
Mimmo
Ciao,
con il tuo codice tratti il solo record corrente della maschera, per creare un elenco devi gestire un recordset come nel seguente:
Private Sub Comando59_Click()
Dim myRst As Recordset
Dim OutApp As Object ' late binding
Dim OutMail As Object ' late binding
Dim strMsg As String ' contiene il testo del messaggio
Dim strDest As String ' contiene l'indirizzo email
Set myRst = Me.RecordsetClone
myRst.MoveFirst
Set OutApp = CreateObject("Outlook.Application")
Set OutMail = OutApp.CreateItem(0) ' creo una email vuota
' codice html mail
strMsg = "<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'>"
strMsg = strMsg & "<html xmlns='http://www.w3.org/1999/xhtml'>"
strMsg = strMsg & "<body>"
strMsg = strMsg & "<p>Ciao il prodotto che segue è sotto il limite di scorta minima e deve essere riordinato al più presto"
strMsg = strMsg & "<br /><br />dettaglio del prodotto sotto il minimo di sicurezza:</p>"
strMsg = strMsg & "<table width='800px' border='1' cellpadding='2'>"
strMsg = strMsg & "<tr>"
strMsg = strMsg & "<td ><p align='center'><strong>Codice SAP</strong></p></td>"
strMsg = strMsg & "<td ><p align='center'><strong>Scorta minima</strong></p></td>"
strMsg = strMsg & "<td ><p align='center'><strong>Rimanenza</strong></p></td>"
'strMsg = strMsg & "<td ><p align='center'><strong>Data scadenza</strong></p></td>"
strMsg = strMsg & "</tr>"
Do While Not myRst.EOF
strMsg = strMsg & "<tr>"
strMsg = strMsg & "<td><p align='center'>" &myRst("ID_discipline") & "</p></td>"
strMsg = strMsg & "<td><p align='center'>" & myRst("Discipline") & "</p></td>"
strMsg = strMsg & "<td><p align='center'><strong><font color=red>" & myRst("Campo1") & "</font></strong></p></td>"
'strMsg = strMsg & "<td><p align='center'><font color=red>" & ScortaMinima & "</font></p></td>"
strMsg = strMsg & "</tr>"
myRst.MoveNext
Loop
strMsg = strMsg & "</table>"
strMsg = strMsg & "<br />"
strMsg = strMsg & "<p>Si prega di procedere al più presto<br />"
'strMsg = strMsg & "In attesa di un vostro riscontro porgiamo cordiali saluti. <br /><br />"
'strMsg = strMsg & "MyName<br />"
'strMsg = strMsg & "<a href='http://www.mysite.come'>www.mysite.com</a><br />"
'strMsg = strMsg & "Tel. +00 00000000 Fax +00 0000001</p>"
strMsg = strMsg & "</body>"
strMsg = strMsg & "</html>"
'strDest = txtEmail
With OutMail
.To = ""
.CC = ""
.BCC = ""
.Subject = "Prodotti da ordinare"
.HTMLBody = strMsg
.Display
End With
Set OutMail = Nothing
Set OutApp = Nothing
Set myRst = Nothing
End Sub
Devi sostituire i nomi dei campi nel loop di creazione della tabella.
Ciao Mimmo
Ciao
Dovresti postarci il codice con cui effettui l'invio di email.
Mimmo
Ciao Mimmo allora il codice che ho messo sul pulsante è il seguente
Private Sub Comando59_Click()
Dim OutApp As Object ' late binding
Dim OutMail As Object ' late binding
Dim strMsg As String ' contiene il testo del messaggio
Dim strDest As String ' contiene l'indirizzo email
Set OutApp = CreateObject("Outlook.Application")
Set OutMail = OutApp.CreateItem(0) ' creo una email vuota
' codice html mail
strMsg = "<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'>"
strMsg = strMsg & "<html xmlns='http://www.w3.org/1999/xhtml'>"
strMsg = strMsg & "<body>"
strMsg = strMsg & "<p>Ciao il prodotto che segue è sotto il limite di scorta minima e deve essere riordinato al più presto"
strMsg = strMsg & "<br /><br />dettaglio del prodotto sotto il minimo di sicurezza:</p>"
strMsg = strMsg & "<table width='800px' border='1' cellpadding='2'>"
strMsg = strMsg & "<tr>"
strMsg = strMsg & "<td ><p align='center'><strong>Codice SAP</strong></p></td>"
strMsg = strMsg & "<td ><p align='center'><strong>Scorta minima</strong></p></td>"
strMsg = strMsg & "<td ><p align='center'><strong>Rimanenza</strong></p></td>"
'strMsg = strMsg & "<td ><p align='center'><strong>Data scadenza</strong></p></td>"
strMsg = strMsg & "</tr>"
strMsg = strMsg & "<tr>"
strMsg = strMsg & "<td><p align='center'>" & Codice_sap & "</p></td>"
strMsg = strMsg & "<td><p align='center'>" & ScortaMinima & "</p></td>"
strMsg = strMsg & "<td><p align='center'><strong><font color=red>" & Testo27 & "</font></strong></p></td>"
'strMsg = strMsg & "<td><p align='center'><font color=red>" & ScortaMinima & "</font></p></td>"
strMsg = strMsg & "</tr>"
strMsg = strMsg & "</table>"
strMsg = strMsg & "<br />"
strMsg = strMsg & "<p>Si prega di procedere al più presto<br />"
'strMsg = strMsg & "In attesa di un vostro riscontro porgiamo cordiali saluti. <br /><br />"
'strMsg = strMsg & "MyName<br />"
'strMsg = strMsg & "<a href='http://www.mysite.come'>www.mysite.com</a><br />"
'strMsg = strMsg & "Tel. +00 00000000 Fax +00 0000001</p>"
strMsg = strMsg & "</body>"
strMsg = strMsg & "</html>"
'strDest = txtEmail
With OutMail
.To = ""
.CC = ""
.BCC = ""
.Subject = "Prodotti da ordinare"
.HTMLBody = strMsg
.Display
End With
Set OutMail = Nothing
Set OutApp = Nothing
End Sub
e produce il seguente risultato
come vedi mi invia una singola mail per ogni prodotto, vorrei che mandasse una mail con tutti i prodotti sotto la scorta minima come il report di cui allego foto
si può fare ?
Ciao
Dovresti postarci il codice con cui effettui l'invio di email.
Mimmo