Marekto, Velocity Scripting для электронных писем и Soft Bounce

Скрипт скорости ниже в marketo имеет 50% мягких отказов и не может успешно отправить следующую причину:

"Ошибка преобразования скорости:; вложенное исключение: org.apache.velocity.exception.MethodInvocationException: вызов метода 'parseInt' в классе java.lang.Integer вызвал исключение java.lang.NumberFormatException: null в 518-SGV-772:250:1: статический [строка 145, столбец 30] "

Кто-нибудь знает, как изменить скрипт, чтобы решить проблему мягкой отказов?

 #foreach ($campaign_c in $campaign_cList)
   #set( $today = $date.get('yyyyMMdd'))
   #set( $strEnddate = $ams_campaign_c.enddate.replace("-",""))
   #set( $val = 1 )
   #set( $intEnddate = $val.parseInt($strEnddate))
   #set( $intToday = $val.parseInt($today))
   #set( $isFuture = "FALSE")
   #if ( $intEnddate > $intToday )
       #set( $isFuture = "TRUE")
#end
#if ( ( $campaign_c.isoutofbudget == 1)
    and ($campaign_c.marketplaceid == 1) 
    and ($campaign_c.product != "SP")
    and ($isFuture == "TRUE" ))
<tr>
<td>$campaign_c.campaignname</td>
   <td>$campaign_c.brandname</td>
   <td>$date.format('MM/dd/yyyy', ${convert.parseDate($campaign_c.enddate, 'yyyy-MM-dd')})</td>
</tr>
#end
#end

1 ответ

Я думаю, что это происходит где-то в вашем цикле во время этой строки

#set( $intEnddate = $val.parseInt($strEnddate))

Не зная, какой тип данных поступает в $ ams_campaign_c.enddate, трудно сказать, какой будет точная причина, но я бы предположил, что данные здесь не обязательно оставляют вас с целой строкой символов.

Другие вопросы по тегам