2014-10-07 2 views
2

У меня есть таблица с именемПочему неиспользуемые поля файла имеют пустое значение?

EQRECORDS

в

цен ниже
A   R REQ                        
    A   FNAME   10A                     
    A   LNAME   10A                     
    A   K FNAME     

и программ в

цен ниже
fEQRECORDS if e   k disk     
d uwvar2   s    10a inz('ANKUR') 
/free            
    setll *loval req;        
    reade uwvar2 req;        
    dow not %eof(eqrecords) and not %error;   
    dsply lname;         
    reade uwvar2 req;        
    enddo;           
    *inlr = *on;          
/end-free  

Когда первый раз Рид выполняется, если хотите увидеть значение Fna я использую Eval. Почему это показано Бланком?

Данные в таблице как ценам ниже

**FNAME  LNAME** 
VIKASH  SHUKLA 
VIKASH  SHUKLA 
ANKUR  VERMA 
ANKUR  MEHTA 
VIKASH  MISHRA 
VIKASH  GUPTA 
ANKUR  GUPTA 
BHASKAR  MISHRA 
CHINTU    
BHUVI  GUPTA 
+0

Есть ли фактическое значение в поле? Попробуйте запустить запрос к таблице без заказа, чтобы увидеть, что такое первый результат. –

+0

Да Fname имеет значение. –

+0

Моя RPG становится ржавой. Я не помню, если при использовании структуры данных вам нужно использовать текстовую нотацию. 'req.lname' –

ответ

0

сообщение точный код, который дает вам эту проблему. Это должно работать:

fEQRECORDS if e   k disk 
d uwvar2   s    10a inz('ANKUR') 
d message   s    50a inz 
    /free 
    setll *loval req; 
    reade uwvar2 req; 
    dow not %eof(eqrecords) and not %error; 
    message = %trimr(fname) + ' ' + lname; 
    dsply message; 
    reade uwvar2 req; 
    enddo; 
    *inlr = *on; 
    /end-free 
1

Я предполагаю, что вы используете 'eval' в отладчике. Если у вас есть OPTION (* NOUNREF) в H-spec или команде компиляции, в отладчике недоступны поля без ссылок. Поместите OPTION (* UNREF) в свой H-spec, чтобы они были включены.

0

У меня есть решение этой проблемы. Я использовал debug (* input) в H-spec и получил результат.

Попробуйте эту ссылку ... Descreption about debug(*input)