title: Crash "Field symbol has not yet been assigned" when calling REUSE_ALV_GRID_DISPLAY
body: <p>While displaying an ALV I get a crash report when executing the program. To create an ALV I have followed a few tutorials and stuff and at the moment it looks like this:</p>
  
  <pre><code>TYPE-POOLS: slis. 
  *build field catalog
  DATA: it_fieldcat TYPE slis_t_fieldcat_alv,
      wa_fieldcat TYPE slis_fieldcat_alv,
      repid TYPE sy-repid.
  
  REFRESH it_fieldcat.
  CLEAR wa_fieldcat.
  wa_fieldcat-reptext_ddic = 'Table ID'.
  wa_fieldcat-fieldname    = 'table_id'.
  wa_fieldcat-tabname      = 'lt_where_used_data_of_coll'.
  wa_fieldcat-outputlen    = '18'.
  APPEND wa_fieldcat TO it_fieldcat.
  
  CLEAR wa_fieldcat.
  wa_fieldcat-reptext_ddic = 'Table Description'.
  wa_fieldcat-fieldname    = 'table_description'.
  wa_fieldcat-tabname      = 'lt_where_used_data_of_coll'.
  wa_fieldcat-outputlen    = '40'.
  APPEND wa_fieldcat TO it_fieldcat.
  
  CLEAR wa_fieldcat.
  wa_fieldcat-reptext_ddic = 'Numer of Records Found'.
  wa_fieldcat-fieldname    = 'nr_of_records'.
  wa_fieldcat-tabname      = 'lt_where_used_data_of_coll'.
  wa_fieldcat-outputlen    = '30'.
  APPEND wa_fieldcat TO it_fieldcat.
  
  *pass data and field catalog to ALV function module
  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
  EXPORTING
    i_callback_program      = repid
    it_fieldcat             = it_fieldcat
    i_structure_name        = 'lty_where_used_data_of_coll'
  TABLES
    t_outtab                = lt_where_used_data_of_coll.
  </code></pre>
  
  <p>'lt_where_used_data_of_coll' is my local table that I have already filled with a working function earlier in my program. This function works and I have tested it and the table fills itself with data. My next step was displaying this data to the end user. The error report I receive when executing this program is:</p>
  
  <p><strong>Short text:</strong> <code>Field symbol has not yet been assigned.</code></p>
  
  <p><strong>What happened?:</strong> </p>
  
  <pre><code>Error in the ABAP Application Program.
      The current ABAP program "SAPLSLVC" had to be terminated because it has
      come across a statement that unfortunately cannot be executed.
  </code></pre>
  
  <p><strong>Error analysis:</strong></p>
  
  <pre><code>You attempted to access an unassigned field symbol
  (data segment "-1").
  </code></pre>
  
  <p><strong>Trigger Location of Runtime Error</strong>:</p>
  
  <pre><code>    Program                                 SAPLSLVC
      Include                                 LSLVCF36
      Row                                     3,273
      Module type                             (FORM)
      Module Name                             FILL_DATA_TABLE
  </code></pre>
  
  <p>I really don't know how to start finding my mistake. It seems like it runs bad when calling a function from ABAP itself. </p>
  
  <p>Any help is much appreciated. </p>
  
  <p><strong>EDIT:</strong> As was suggested I implemented another way of displaying an ALV that can be found below. This way works fine and gives no errors. Question still remains why the older method does give me an error. </p>
  
  <p>I replaced the entire block of code above with this:</p>
  
  <pre><code>DATA alv TYPE REF TO cl_salv_table. DATA message TYPE REF TO cx_salv_msg.
  
  *initialize ALV
  TRY.
    cl_salv_table=&gt;factory(
      IMPORTING
        r_salv_table = alv
      CHANGING
        t_table      = lt_where_used_data_of_coll ).
  CATCH cx_salv_msg INTO message.
    " error handling
  ENDTRY.
  *display ALV
  alv-&gt;display( ).
  </code></pre>