AXForum  
Zurück   AXForum > Microsoft Dynamics AX > DAX: База знаний и проекты
All
Kennwort vergessen?
Registrieren Forum Rules Hilfe Benutzerliste Heutige Beiträge Suchen

 
 
Themen-Optionen Thema durchsuchen Ansicht
Alt 08.04.2004, 09:53   #1  
Wamr ist offline
Wamr
----------------
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
 
1.737 / 868 (32) +++++++
Registriert seit: 15.01.2002
Ort: Москва
Blog-Einträge: 7
Проверка заполнения Mandatory полей на Datasource
Создал метод в Global, который проверяет заполнение всех полей текущей записи, у которых в DataSource формы установлено свойство Mandatory = Yes
PHP-Code:
static boolean checkFillMandatory(FormDataSource fds)
{
    
DictTable   dictTable = new DictTable(fds.table());
    
Common      cursor fds.cursor();
    
int         i;
    
FieldId     fieldId;
    
boolean     res true;
    ;

    for( 
1<= dictTable.fieldCnt(); i++ )
    {
        
fieldId dictTable.fieldCnt2Id(i);

        if(
fieldId 61000 && fds.object(fieldId).mandatory() && ! cursor.(fieldId))
        {
            
res checkFailed(strFmt("@SYS26332"dictTable.fieldObject(fieldId).label()));
        }
    }

    return 
res;

Комментарии и дополнения приветствуются.
Alt 08.04.2004, 12:00   #2  
mazzy ist offline
mazzy
Участник
Benutzerbild von mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29.472 / 4494 (208) ++++++++++
Registriert seit: 29.11.2001
Ort: Москва
Blog-Einträge: 10
Спасибо. Здорово.
А что за магическая константа 61000?
Alt 08.04.2004, 13:32   #3  
Wamr ist offline
Wamr
----------------
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
 
1.737 / 868 (32) +++++++
Registriert seit: 15.01.2002
Ort: Москва
Blog-Einträge: 7
Отсекаются поля типа createdDate\Time, RecId..
Наверное, есть более правильные способы, о которых я пока не знаю (или забыл).
This post has been rated by: mazzy (5).
Alt 08.04.2004, 13:43   #4  
Garic ist offline
Garic
NavAx
Benutzerbild von Garic
NavAx Club
 
393 / 63 (3) ++++
Registriert seit: 23.07.2002
Ort: Москва
dictField.isSystem()
__________________
С уважением, Игорь Ласийчук.
This post has been rated by: mazzy (5).
Alt 26.06.2006, 18:15   #5  
belugin ist offline
belugin
Участник
Benutzerbild von belugin
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4.622 / 2925 (107) +++++++++
Registriert seit: 16.01.2004
Blog-Einträge: 5
X++:
static boolean checkFillMandatory(FormDataSource fds)
{
    SysDictTable   dictTable = new SysDictTable(fds.table());
    Common      cursor = fds.cursor();
    int         i;
    FieldId     fieldId;
    boolean     res = true;
    ;

    for( i = 1; i <= dictTable.fieldCntWithoutSys(); i++ )
    {
        fieldId = dictTable.fieldCnt2Id(i);

        if(!cursor.(fieldId) && fds.object(fieldId).mandatory())
        {
            res = checkFailed(strFmt("@SYS26332", dictTable.fieldObject(fieldId).label()));
        }
    }

    return res;
}
This post has been rated by: mazzy (5).
Stichworte
dicttable

 

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Проверка заполнения полей Himan DAX: Программирование 9 20.04.2007 14:47
контроль заполнения полей запроса Himan DAX: Программирование 2 15.03.2007 13:00
AllowEditOnCreate для полей dataSource Lucky13 DAX: Программирование 2 19.06.2006 13:45
Как задать видимость группы полей на Datasource? wb DAX: Программирование 3 02.02.2006 16:04
доступ к свойствам полей DataSource andreynikolai DAX: Программирование 2 06.06.2002 16:55

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Gehe zu

Рейтинг@Mail.ru
Alle Zeitangaben in WEZ +3. Es ist jetzt 19:39 Uhr.
Powered by vBulletin® Version 3.8.5 (Deutsch)
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.