> cómo puedo fijar si la cantidad > 0 debido y después de 30 días de fecha de facturación
agregar >0 a la columna del amountdue y <> DONDE (((AmountDue) >0) Y ((DateDue)<> e (), - 30)))
)
Para enviar el email. usted podría funcionar con el código siempre que usted abra la base de datos, cuando usted abre una forma específica, cuando usted chasca un botón o aún lo llama de una macro y utiliza una tarea programada de enviarla en un momento específico. Depende de cómo usted quiere hacerlo.
Para el código. aquí está un ejemplo simple. modificando algo del código otros han fijado. Pegar estas dos funciones en un módulo en su base de datos y corregir la función “YourSavedQueryName cambiante” de SendReport al nombre real de su pregunta y “
[email protected]” a su email address así como todo lo demás (tales como nombres de campo) esos necesita cambiado. Entonces llamar la función de SendReport de dondequiera que usted quisiera (como encendido un tecleo del botón o de una macro) enviar el informe.
Función pública OutlookSend (MailUser de ByVal como secuencia, ByVal MsgSubject como secuencia, ByVal msgbody como secuencia) como boleano
appOutLook dévil como Outlook.Application
MailOutLook dévil como Outlook.MailItem
En el error ErrHandler indicado
Si no "" de IsNull (MailUser) y <> del MailUser entonces
Fijar el appOutLook = CreateObject (“Outlook.Application
”)
Fijar MailOutLook = appOutLook.CreateItem (el olMailItem
)
Recipiente = MailUser
Con MailOutLook
. A = recipiente
. Tema = MsgSubject
. Cuerpo = msgbody
.DeleteAfterSubmit = verdad 'esto dejaría perspectiva enviar la nota sin almacenarla en su compartimiento enviado
. Enviar
Terminar con
Fijar MailOutLook = nada
Fijar el appOutLook = nada
Terminar si 'no IsNull (MailUser)
ExitHere:
Salir la función
ErrHandler:
Seleccionar el caso Err.Number
Caso 0
Curriculum vitae ExitHere
Caso
MsgBox “error” y Err.Number y “(” y Err.Description y ") en OutlookSend”
Extremo selecto
Función del final
Función pública SendReport ()
MyMsgBody dévil, MySubject, MyMailAddress como secuencia
ItemCount dévil como número entero
En el error ErrHandler indicado
Si DCount (“*”, “YourSavedQueryName”) > 0 entonces
Dbs déviles como base de datos, rst como DAO.Recordset
Fijar los dbs = CurrentDb
Fijar el rst = dbs.OpenRecordset (“YourSavedQueryName
”)
rst.MoveFirst
ItemCount = 0
Hacer hasta rst.EOF
¡item1 = rst! AmountDue
¡item2 = rst! WorkOrder
¡item3 = rst! [Fecha de facturación]
MyMsgBody = MyMsgBody y item1 y vbTab y item2 y vbTab y item3 y vbCrLf
ItemCount = ItemCount + 1
rst.MoveNext
Lazo
rst. Cierre
MyMailAddress = “
[email protected]”
MySubject = “informe debido de las facturas: ” Y ItemCount y “artículos”
Si no el "" de IsNull (MyMsgBody) y <> de MyMsgBody entonces enría = OutlookSend (MyMailAddress,
MySubject, MyMsgBody)
Terminar si
ExitHere:
Salir la función
ErrHandler:
Seleccionar el caso Err.Number
Caso 0
Curriculum vitae ExitHere
Caso
MsgBox “error” y Err.Number y “(” y Err.Description y ") en SendReport”
Extremo selecto
Función del final