Options

what is use of buffer table?

mdsrmdsr Member Posts: 163
i have seen buffer table in many location in navision but i don't understand why it is used can any one give small and simple example
thanks in advance.

Answers

  • Options
    Developer101Developer101 Member Posts: 528
    Hi. Buffer tables are used as temporary tables that do not hold data (set temporary to Yes when declaring)
    For example Excel Buffer table is used to create excel file and hold data in memory temporarily while excel file is created.
    United Kingdom
  • Options
    mdsrmdsr Member Posts: 163
    @Developer 101 Thanks can you give an example so the concept will clear regarding buffer table and what is difference between buffer table and integer table
    When to use buffer and when to use integer table.
  • Options
    aceXaceX Member Posts: 166
    Hi there @mdsr

    The Integer table is virtual table, you can't find this table in DevEnv but you can use it in report dataset. This table is used for additional loops for some cases in the reports. The most common scenario where is used is for RoundLoop and CopyLoop for the reports. In this table as filters you can use it all integer numbers in DataItemTableView property. For example you can see Report 206.

    The Buffer table can be any of the table you see in DevEnv. When you use the table as variable or as a part of the report data set, in the property Temporary you must set the value Yes (and here you must be very careful to don't forget this step when you use buffer (temp) tables cause you can use DELETE function in temp tables and if it's not declared as temp you can delete all the data from that table).
    For example I need to read data from Item table and I like to get a list from all Items under some conditions. Then I can use Item as buffer (temp table) and one more variable which is regular as Record. I set the conditions in regular an while you read the data you fill the temp table:

    RecItem.SETRANGE("Item Category Code", "DOOR");
    IF RecItem.FINDSET THEN
    REPEAT
    TempItem."No." := RecItem."No.";
    TempItem.Description := RecItem.Description;
    TempItem.INSERT;
    UNTIL RecItem.NEXT = 0;

    Integer and buffer tables are completely different kind of tables.

    BR
Sign In or Register to comment.