Moving forward, by now you should already completed doing these 2 things:
- User can insert any attachment into the form
- The attachment will be save into my own table within the Oracle database.
The email process must be create at point [Processing > Processes] on [Page Processing] , right after the 'CopyFile' process (refer to my previous post)
- Right click on [Processes] > Create
- Select [PL/SQL] and Next
- Give a name to identify the procesess and click Next
- On the [Enter PL/SQL Page Process], paste below code;
DECLARE
l_id number;
BEGIN
l_id := APEX_MAIL.SEND( p_to => 'fred@flintstone.com',
p_from => 'barney@rubble.com',
p_subj => 'APEX_MAIL with attachment',
p_body => 'Please review the attachment.',
p_body_html => '<b>Please</b> review the attachment' );
FOR c1 IN (SELECT filename, blob_content, mime_type
FROM attachment_files
WHERE ID = :P1_YOUR_ID ) loop
APEX_MAIL.ADD_ATTACHMENT( p_mail_id => l_id,
p_attachment => c1.blob_content,
p_filename => c1.filename,
p_mime_type => c1.mime_type);
END LOOP;
END;
BEGIN
wwv_flow_mail.push_queue(
P_SMTP_HOSTNAME => 'localhost',
P_SMTP_PORTNO => '25'
);
END;
Please see the code and change whenever suit with your table name and page item. For example code below:
FOR c1 IN (SELECT filename, blob_content, mime_type
FROM attachment_files
WHERE ID = :P1_YOUR_ID ) loop
The [attachment_files] comes from my table which I have created previously in so called Part 1.
You can have multiple 'File Browse...'. You may also need to change the PL/SQL code if have more [File Browse]. Do comment below if you still need help.
I will try my best to help. :)