Options

You cannot enter 'some text here' in Integer

TheDoubleHTheDoubleH Member Posts: 67
edited 2011-09-09 in NAV Three Tier
I am relatively new to the RTC, and have run into a weird error.

I have some code, that finds the value of different fields in a table. When I run the report in CLassic, it works just like it is supposed to - but when running in it RTC (using a layout) I am getting an error: "You cannot enter 'Profit=Price-Cost' in Integer."

it seems like the RTC thinks it's smart enough to tell us what tyoe of data based on the first record?
FieldValueText := FORMAT(ItemFieldRef.VALUE);

CASE Field.Type OF
  Field.Type::Decimal :
    BEGIN
      IF FieldValueText = '0' THEN
        FieldValueText := '';
    END;
  Field.Type::Integer :
    BEGIN
      IF FieldValueText = '0' THEN
        FieldValueText := '';
    END;
  Field.Type::Option :
    BEGIN
      EVALUATE(OptionNo,FORMAT(ItemFieldRef.VALUE));
      FieldValueText := SELECTSTR(OptionNo + 1,ItemFieldRef.OPTIONCAPTION);
    END;
END;
Kind Regards

Henrik Helgesen,
President | Helgesen Consulting
about.me | LinkedIN

Answers

  • Options
    TheDoubleHTheDoubleH Member Posts: 67
    Turns out that the geniuses at Microsoft thought that the excecution of a command does not need to have the same behaviour if executed in classic versus RTC. #-o

    FieldRef.VALUE for a option field in Classic returns an integer
    FieldRef.VALUE for a option field in RTC returns the verbose option

    IF ISSERVICETIER THEN BEGIN
      FieldValueText := FORMAT(ItemFieldRef.VALUE);
    END ELSE BEGIN
      EVALUATE(OptionNo,FORMAT(ItemFieldRef.VALUE));
      FieldValueText := SELECTSTR(OptionNo + 1,ItemFieldRef.OPTIONCAPTION);
    END;
    
    Kind Regards

    Henrik Helgesen,
    President | Helgesen Consulting
    about.me | LinkedIN
Sign In or Register to comment.