VIEW AS WEB PAGE

 VIEW AS WEB PAGE 

Q: WHEN WE BUILT EMAILS, WHY DO WE USE VAWP ?

IF WE WANT TO ALLOW SUBSCRIBERS TO VIEW THE EMAIL IN WEB VERSIONS, WE USE "VAWP"

Q: HOW TO INCLUDE VAWP INTO MY EMAIL BUILTS ?

IN YOUR "ADD CONTENT" TAB , CLICK ON "INSERT  CODE SNIPPET" TOOL AND UNDER "SYSTEM SNIPPETS" SELECT "VIEW EMAIL AS A WEB PAGE" , BELOW CODE SNIPPET WILL BE WRITTEN IN YOUR EMAIL CONTENT :


To view this email as a web page, click <a href="%%view_email_url%%">here.</a>

%%view_email_url%% IS A EAMIL PERSONALIZATION STRING , IF YOU WANT TO LEARN MORE CLICK HERE.

Q: WHAT IS MESSAGECONTEXT IN EMAIL BUILTS AND WHY WE NEED THEM ?

IF YOU WANT TO PRE-DEFINE THE  CONTEXT AND WANT TO DISPLAY THE CONTENT BASED ON THOSE DEFINITIONS, WE USE  "_MESSAGECONTEXT". 
SAY FOR EXAMPLE , IF YOU INCLUDE VAWP IN YOUR EMAIL 


<a href="%%view_email_url%%" target="_blank">View email in your browser</a>

AND IF YOU CLICK THE LINK AND OPEN IT IN A WEB PAGE, THIS VAWP LINK WILL ALSO APPEAR IN WEB PAGE WHICH BECOMES COUNTER INTUTIVE TO EMAIL DESIGN.

TO OVERCOME THIS SITUATION WE WOULD USE  _MESSAGECONTEXT
%%[ if _MessageContext != "VAWP" or _MessageContext != "LANDINGPAGE "  then ]%%
<a href="%%view_email_url%%" target="_blank">View email in your browser</a>
%%[ endif]%%

YOU CAN REFERENCE  _MESSAGECONTEXT TO CONTROL WHAT HAPPENS WHEN.
IF YOU WANT TO LEARN MORE CLICK HERE. AND GOTO MESSAGECONETENT SECTION.

Q: VAWP IS NOT WORKING AND IS  DISPLAYING A MESSAGE "THE SYSTEM IS TEMPORARILY UNAVAILABLE, WE APOLOGIZE FOR INCONVENIENCE" WHAT CAUSES THIS ISSUE ?

VWAP LINK IS ACTIVE ALWAYS, HOWEVER THERE ARE SEVERAL REASONS FOR IT NOT TO
WORK.


REASON 1 : EITHER YOU HAVE OVERWRITTEN OR UPDATED THE DATA EXTENSION
FROM WHICH YOU PERFORMED THE SEND AND BROKE THE LINK.


REASON 2 : IF YOU DELETED THE DATA EXTENSION FROM WHERE YOU SEND.
BECAUSE THE LINK WORKS BY COLLECTING THE DATA FROM THE DATASOURCE OF
SUBSCRIBER AND PERFORM LOOKUP TO CREATE THE EMAIL. IF ANYTHING IS BROKEN
FROM THE SEND AND THE EMAIL IT WILL BREAK THE LINK.



Q:  CONTENTS ARE NOT MATCHING IN EMAIL AND VWAP,  WHAT IS CAUSING THIS ISSUE ?

DATA CONTAINED IN EMAIL ARE STATIC IN NATURE WHEREAS VWAP RENDERS EMAIL CONTENT IN WEB VIA LOOKUP TO THE DATASOURCE FOR THE SUBSCRIBER, IF YOU ARE USING THE SAME DATA EXTENSION IN MULTIPLE JOURNEYS AND SENDS AND IF YOU ARE UPDATING THE DATA EXTENSION VIA UPDATE ACTIVITY OR UPSERT FUCNTION, IT WILL BREAK THE LINK BETWEEN EMAIL AND WEB PAGE RENDERING OF THE EMAIL CONTENT.


Q:  WE ARE OVERWRTIING THE DATA EXTENSION EVERYTIME WE PERFORM THE JOURNEY SEND AND DUE TO WHICH OUR VAWP IS NOT WORKING, HOW SHOULD WE FIX THIS?

THERE ARE SEVERAL WAYS TO KEEP THE VAWP WORKING :
1. IMPLEMENT SEND LOGGING 
IMPLEMENT SEND LOGGING BY CREATING A SENDLOG DATA EXTENSIONS TEMPLATE AND LOG THE SEND WITH REQUIRED PERSOANLIZATION DATA.

FOR EXAMPLE : YOU ARE USING "FIRSTNAME" AND "LASTNAME" FOR PERSONALIZATION  

STEP 1. CREATE CUSTOM ATTRIBUTE "FIRSTNAME" AND "LASTNAME" IN YOUR SEND LOG DATA EXTENSION
STEP 2. CREATE AN AMPSCRIPT BLOCK TO REFERENCE SEND LOG DATA FOR PERSONALIZATION
%%[
IF _messageContext != "VAWP" then
/* Set variables for looking up in send logging data extension */
Set @SubID = SubscriberID   /* subscriber id of the record */
Set @Job_ID = JobID  /* job id for the send */
Set @FIRSTNAME = lookup("Send_logging_DE","FIRSTNAME","SubID",@SubID ,"JobID",@Job_ID )
Set @LASTNAME = lookup("Send_logging_DE","LASTNAME","SubID",@SubID ,"JobID",@Job_ID )
ENDIF
]%%

2. IMPORT ACTIVITY

USE IMPORT ACTIVITY AND IMPORT THE REPORT INTO A DATA EXTENSION AND REFERNECE PERSONALIZATION USING THIS DATA EXTENSION. 

%%[
IF _messageContext != "VAWP" then
/* Set variables for looking up in send logging data extension */
Set @SubID = SubscriberID   /* subscriber id of the record */
Set @Job_ID = JobID  /* job id for the send */
Set @FIRSTNAME = lookup("REFERENCE_DE","FIRSTNAME","SubID",@SubID ,"JobID",@Job_ID )
Set @LASTNAME = lookup("REFERENCE_DE","LASTNAME","SubID",@SubID ,"JobID",@Job_ID )
ENDIF
]%%

3.  USING UPSERT FUNCTION 
%%[
  IF _IsTestSend == false AND _messageContext != "VAWP" then
    UpsertDE('LOG_DE',1,'SubscriberKey', _SubscriberKey, 'JobID', jobid,
'FIRSTNAME ',FIRSTNAME , 'LASTNAME ', LASTNAME )
  ENDIF
]%%

%%[
  IF _messageContext != "VAWP" then
   SET @SubscriberKey = AttributeValue('_SubscriberKey'
   SET @FIRSTNAME = AttributeValue('FIRSTNAME ')
   SET @LASTNAME = AttributeValue('LASTNAME ')
  ELSE
    SET @copyDERowSet = LookupOrderedRow('LOG_DE',1,'SubscriberKey ASC',
    'SubscriberKey',_SubscriberKey, 'JobID', jobid)
    SET @copyRow = Row(@copyDERowSet, 1)
    SET @SubscriberKey = Field(@copyRow, 'SubscriberKey')
    SET @FIRSTNAME = Field(@copyRow,'FIRSTNAME ')
    SET @LASTNAME = Field(@copyRow,'LASTNAME ')
  ENDIF
]%%


Bonus : We want to implement a count down widget for Promotional Event, how to achieve it? Ans - Utilize VAWP and show the count down widget in Web Page. VAWP renders the data from the data source that has been referenced in the context which is real time in nature.





Comments


Knowledge Article

Most Viewed

CLOUD PAGE ENABLEMENT - PART 1

EMAIL NOT SENT IN JOURNEY BUILDER

CONSIDERATIONS FOR JOURNEY BUILDER

Journey Builder REST API Documentation

Preference Center Demystified

Popular Posts

CLOUD PAGE ENABLEMENT - PART 1

EMAIL NOT SENT IN JOURNEY BUILDER

CONSIDERATIONS FOR JOURNEY BUILDER

Journey Builder REST API Documentation

Preference Center Demystified

SEND LOG EANBLEMENT

Share with Friends

Disclaimer:

The information provided on this technical blog is for general informational purposes only. As a SFMC (Salesforce Marketing Cloud) Technical Architect, I strive to offer accurate and up-to-date content related to SFMC and its associated technologies. However, please note that technology is constantly evolving, and the information provided may become outdated or inaccurate over time.

The content published on this blog represents my personal views and experiences as a SFMC Technical Architect and does not necessarily reflect the official views or opinions of any organization or employer I may be affiliated with.

While I make every effort to ensure the accuracy and reliability of the information presented, I cannot guarantee its completeness, suitability, or applicability to your specific circumstances. Therefore, it is essential to verify any information provided and make your own independent assessments or seek professional advice if needed.

Furthermore, any actions taken based on the information provided on this blog are at your own risk. I shall not be held liable for any damages, losses, or inconveniences arising from the use of the information presented here.

Please keep in mind that SFMC and its associated technologies are complex and require technical expertise for proper implementation and management. It is recommended to consult with qualified professionals or official SFMC documentation for comprehensive guidance.

Finally, please note that any product or company names mentioned on this blog are trademarks or registered trademarks of their respective owners. The mention of these trademarks or registered trademarks does not imply any endorsement or affiliation with the blog.

By accessing and using this blog, you agree to the terms of this disclaimer. If you do not agree with any part of this disclaimer, please refrain from using this blog.