Для каждого не работает, просто переходит к первому элементу, а затем выходит, как я могу это исправить?

У меня есть Two For Each, которые обращаются к разным таблицам, чтобы получить доступ к данным на них. Но на втором для каждого только вход один раз и выход без зацикливания, я пытаюсь распечатать данные из процедуры в txt-файле

Я уже проверил таблицы, и они имеют более одного значения. Перестройте базу знаний, я проверил, что это происходит только один раз. вот код:

For Each Table1 
    Where Attribute1= &Attribute1
        &Flag = 0
    For Each Table2
        WHERE Attribute2= &Attribute2
        If &Flag=0
            Print Tittle
            &Flag =1
        EndIf
        Print Transacctions
    EndFor
    Print Footer
EndFor


person r210    schedule 15.05.2019    source источник
comment
@ r210: Проверьте навигацию. Поскольку у вас есть внешний для каждого и внутренний для каждого, если задействованные таблицы связаны, GeneXus добавит фильтры к внутреннему для каждого (записи, которые соответствуют атрибутам внешнего для каждого). Если это так, вы можете переместить внутреннюю часть для каждого в подпрограмму и вызвать ее (do) внутри внешней для каждого.   -  person gusbro    schedule 16.05.2019
comment
@sebagomez: да, это опечатка   -  person r210    schedule 16.05.2019
comment
@gusbro: не забудь привести пример, я относительно новичок в Genexus, и я не могу понять, что ты пытаешься сказать (английский не мой родной язык)   -  person r210    schedule 16.05.2019
comment
@ r210: фактическое решение будет зависеть от того, что вы на самом деле пытаетесь сделать, и от модели данных. Можете ли вы обновить свой вопрос и предоставить структуру Table1 и Table2 (чтобы мы могли видеть связь).   -  person gusbro    schedule 16.05.2019


Ответы (1)


Прежде всего, проверьте навигацию по спецификации, чтобы убедиться, что gx осуществляет навигацию между двумя нужными таблицами. Еще один совет, который я хотел бы вам сказать, это поставить снифферы, чтобы увидеть, что происходит во время выполнения. И, наконец, проверьте, что в вашей БД есть более одной записи, которые соответствуют условию ГДЕ Атрибут2= &Атрибут2 и Атрибут1= &Атрибут1. Удача

person user3682921    schedule 30.05.2019