Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

FI Substitution

0 Likes
791

Hi,

How can I substitute for a field thats not in the 'Substitutable Fields' list?

I saw OSS Note#42615, but that requires changing the standard.

Is there any other way out?

Thanks in advance!

-Arthi

Hi,

How can I substitute for a field thats not in the 'Substitutable Fields' list?

I saw OSS Note#42615, but that requires changing the standard.

Is there any other way out?

Thanks in advance!

-Arthi

5 REPLIES 5
Read only

Former Member
0 Likes
721

Hi,

I did it our system using this note. But you should update table GB01 by yourself with open sql statement.

Svetlin

Read only

0 Likes
721

Thanks Svetlin.

But is there any other option?

Thanks,

Arthi.

Message was edited by: Arthi Nagarajan

Read only

0 Likes
721

Hi,

Another way to implement a substitution in FI is to use BTEs(tr.code FIBF) in FI ( process No 1120 ). But fields are limited again. See FM 'SAMPLE_PROCESS_00001120'.

Svetlin

Read only

0 Likes
721

Thanks Svetlin, But I already looked up that option and as you said, the fields are limited and the field that I want to sunstitute does not exist there.

Read only

0 Likes
721

Hi Arthi,

I have had your same problem in my last project (I needed some PO fields inside a CO validation).

A few days before I found a <a href="/people/brad.williams/blog/2005/04/25/userexits--how-do-i-access-inaccessible-data">great weblog</a> explaining how to get inaccessible <b>GLOBAL DEFINED</b> variables, tables and other data from inside a User-Exit (but the same concept is applicable to validations.

the main concept is:


  data: global_field_name(100).
  field-symbols: <fs> type any.

  global_field_name = '(MAIN_PROGRAM_NAME)field_name'.

  assign (global_field_name) to <fs>.

if field_name is globally defined in program MAIN_PROGRAM_NAME, you can get it.

MAIN_PROGRAM_NAME must be loaded in memory. (For a list of program look in debug in the "Calls" section")

I hope this will help.

Manuel