ONLINE HELP
 WINDEVWEBDEV AND WINDEV MOBILE

This content has been translated automatically.  Click here  to view the French version.
Help / WLanguage / WLanguage functions / Communication / Managing emails
  • Number of messages found in the mailbox (POP3 protocol)
  • Number of messages found in the mailbox (Outlook messaging)
  • The attached files
  • Progress Bar
  • Outlook messaging
WINDEV
WindowsLinuxJavaReports and QueriesUser code (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Browser code
WINDEV Mobile
AndroidAndroid Widget iPhone/iPadIOS WidgetApple WatchMac Catalyst
Others
Stored procedures
Reads an email received:
  • POP3 OR IMAP protocol: the email is stored in the mailbox on the mail server.
  • WINDEVWEBDEV - Server code or via Lotus Notes or Outlook e-mail software: the e-mail received is present on the local workstation in the Lotus Notes or Outlook inbox.
This function does not modify the current position.
The variables of the email structure (or Email variable) are filled.
The Email.Out variable is set to True if no email is found.
Reminder: Before reading an email, it is necessary to open a session with the EmailStartSession, EmailStartNotesSession or EmailStartOutlookSession function.
Java The POP3 protocol can only be used to read emails.
// Use with the POP3 protocol 
I is int
nbMSG is int = EmailNbMessage(UserName)
FOR I = 1 TO nbMSG
	IF EmailReadMessage(UserName, I) = True THEN
		IF Email.Out <> True THEN
			CU.NAME = Email.Sender
			CU.MESSAGE_TXT = Email.Message
			...
		ELSE
			Info("This message was deleted")
		END
	END
END
WINDEVWEBDEV - Server code
// Use with the Outlook messaging software 
// TABLE_EmailTable table contains all the incoming emails
// COL_Sender contains the sender name (Email.Sender variable)
// COL_Subject contains the email subject (Email.Sujet variable)
// COL_ID contains the email identifier (Email.ID variable)
// Read the selected email in the Table control
EmailReadMessage(SessionID, COL_ID)
// Retrieve the email content
Info("Email message: " + Email.Message)
Syntax

Reading an email managed by the POP3 or IMAP protocol Hide the details

<Result> = EmailReadMessage(<Session> [, <Email>] , <Message number>)
<Result>: Boolean
  • True if the message was read. In this case, the email structure is automatically updated.
  • False otherwise. To get more details on the error, use ErrorInfo with the errMessage constant.
The Email.Out variable is set to True if no message was found (no email).
<Session>: Character string, or emailPOP3Session or emailIMAPSession variable
Identifies the user session. Corresponds to:
Java Variables of type emailPOP3Session and emailIMAPSession are not supported.
<Email>: Optional Email variable
Name of the Email variable to be initialized with the message content.
Java This parameter is not available
If this parameter is not specified, the Email structure is used.
<Message number>: Integer
  • Index of message to read in POP3
  • Identifier (UID) of the message in IMAP.
WINDEVWEBDEV - Server codeReports and QueriesUser code (UMC)Ajax

Reading an email managed via Lotus Notes or Outlook Hide the details

<Result> = EmailReadMessage(<Session> [, <Email>] , <Message identifier>)
<Result>: Boolean
  • True if the message was read. In this case, the email structure is automatically updated.
  • False otherwise. To get more details on the error, use ErrorInfo with the errMessage constant.
The Email.Out variable is set to True if no message was found (no email).
<Session>: Integer, or emailOutlookSession or emailNotesSession variable
Identifier of the current email session. This identifier can be:
<Email>: Optional Email variable
Name of the Email variable to be initialized with the message content.
If this parameter is not specified, the Email structure is used.
<Message identifier>: Character string
Identifier of the message to read. This identifier is found in the Email.ID variable when reading emails.
Remarks

Number of messages found in the mailbox (POP3 protocol)

The total number of received messages is returned by EmailNbMessage.
If a message was deleted by EmailDeleteMessage in the same email session:
  • EmailNbMessage returns the number of messages found on the email server before the deletion.
  • the numbers of the deleted messages are not re-assigned.
For example: At the time of connection, four messages are on the server. These messages are numbered from 1 to 4. If message #1 is deleted:
  • EmailNbMessage returns 4.
  • Reading message 1 with the EmailReadMessage is impossible: the message no longer exists. The Email.Out variable returns True. Only the messages 2, 3, and 4 exist.
The message numbers are re-assigned during the next connection.
WINDEVWEBDEV - Server code

Number of messages found in the mailbox (Outlook messaging)

The total number of received messages is returned by EmailNbMessage.
If a message was deleted by EmailDeleteMessage in the same email session, EmailNbMessage returns the actual number of messages in the inbox folder.

The attached files

When reading a message, the attached files can be copied to the local disk (or to the server disk) using EmailSaveAttachment.
Tip It is advisable to save messages and their attached files on the local disk (or on the server disk) and then delete them from the e-mail server. This operation is used to:
  • reduce the size of the mailbox on the server,
  • improve and streamline communications on POP3 servers: only new messages will be read on the server.
WINDEVReports and QueriesAndroidAndroid Widget iPhone/iPadIOS WidgetMac CatalystUser code (UMC)

Progress Bar

To track the progress of the email, use EmailProgressBar.
WINDEVWEBDEV - Server code

Outlook messaging

The WLanguage EmailReadxxx functions operate with the Outlook data file (.pst) only. The other data files are not supported.
Business / UI classification: Business Logic
Component: wd300com.dll
Minimum version required
  • Version 9
This page is also available for…
Comments
Click [Add] to post a comment

Last update: 01/16/2025

Send a report | Local help