ну да, там на тип символа проверки не было.
IF vDelay like '*C*' THEN
    IF vDelay like '*I*' THEN
      let vCurrDate = peek('/BIC/ZCNTDATE',$(i),'DelayCount');
      let vnewDate = Date(Date#(vCurrDate) + Left(vDelay,Len(vDelay)-2));
    ELSEIF vDelay like '*B*' THEN
      let vCurrDate = peek('PSTNG_DATE',$(i),'DelayCount');
      let vnewDate = Date(MonthStart(AddMonths(Date#(vCurrDate),1))+Left(vDelay,Len(vDelay)-2));
    
    ELSEIF vDelay like '*K*' THEN
      let vCurrDate = peek('PSTNG_DATE',$(i),'DelayCount');
      let vnewDate = Date(MonthEnd(Date#(vCurrDate))+Left(vDelay,Len(vDelay)-2));
    ELSEIF vDelay like '*N*' THEN
      let vCurrDate = peek('PSTNG_DATE',$(i),'DelayCount');
      let vnewDate = Date(Date#(vCurrDate)+1+Left(vDelay,Len(vDelay)-2));
  END IF;
    
  ELSEIF vDelay like '*W*' THEN
...