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 15.07.2004, 14:14   #1  
funnut ist offline
funnut
Участник
 
17 / 10 (1) +
Registriert seit: 08.07.2004
Ort: mscw
? как вывести номер строки в гриде?
необходимо в форме salesTable в гриде для salesline вывести номера строк по порядку 1,2,3 ...
(поле linrnum было модифицировано при создании строк и зранит длугие значения)
Alt 15.07.2004, 14:34   #2  
maxsmirnov ist offline
maxsmirnov
экс-модератор
 
268 / 25 (1) +++
Registriert seit: 08.07.2003
Ort: Москва
ну считайте все лайннумы и присвойте им номера по порядку.
Alt 15.07.2004, 14:45   #3  
funnut ist offline
funnut
Участник
 
17 / 10 (1) +
Registriert seit: 08.07.2004
Ort: mscw
поле лайннум мне менять нельзя
оно используется для сортировки по приоритету
Alt 15.07.2004, 15:17   #4  
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
вот что меня всегда удивляло - как беспечно народ относится к быстродействию.

funnut, во-первых грид обычно не содержит ВСЕ строки. Это значит, что если вы смотрите середину таблицы, то грид ничего не знает о первых записях таблицы.
поэтому грид вы упоминаете совершенно напрасно. вам они никак не поможет.

Значит номера строк надо хранить в таблице.

Далее, ответьте пожалуйста, как вы собираетесь вставлять строчку в середину длинного (в несколько тысяч строк) заказа, если у вас есть целочисленная нумерация строчек?

Если же вы запретили вставлять строчки в середину - то рассчитывайте max по вашему полю и инициализируйте его при создании.

А можно главный вопрос? Зачем вам это в заказе?
Alt 15.07.2004, 15:22   #5  
Hamster ist offline
Hamster
Участник
 
687 / 13 (2) ++
Registriert seit: 15.05.2003
>А можно главный вопрос? Зачем вам это в заказе?

Дай угадаю зачем.....

Логистика заказчика использует номер строки заказа при всех движениях товара, угадал?
Alt 15.07.2004, 15:26   #6  
Maxim Gorbunov ist offline
Maxim Gorbunov
Administrator
Соотечественники
Лучший по профессии 2009
 
2.483 / 646 (26) +++++++
Registriert seit: 27.11.2001
Ort: Dubai, UAE
Универсальный способ для любого FormDataSource
PHP-Code:
display LineNum lineNum(SalesLine _salesLine)
{
    
SalesLine   line;
    
LineNum     ret;
    ;
    
line this.getFirst();
    
ret 1;
    while (
line && !line.equal(_salesLine)) {
        
line this.getNext();
        
ret++;
    }

    return 
ret;

P.S: Разумеется, при переходе к последней записи таблицы быстродействие значительно снизится (при больших наборах данных), так как будут считываться все записи.
__________________
Not registered yet? Register here!
Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me
Alt 15.07.2004, 15:32   #7  
ppson ist offline
ppson
Участник
Benutzerbild von ppson
Ex AND Project
1C
 
2.104 / 115 (8) +++++
Registriert seit: 25.06.2002
Ort: SPb, Msk
Zitat:
Изначально опубликовано Hamster
Логистика заказчика использует номер строки заказа при всех движениях товара, угадал?
Есть и такое счастье у менеджеров по продажам .
Но в этом случае важно отслеживать не сам заказ, строки, т.е. вполне возможно необходимо осуществлять сквозную номерацию строк заказов ... ? при помощи номерной серии ... ? групп нумерации ... ? recId ... ?
__________________
Alt 15.07.2004, 15:47   #8  
Hamster ist offline
Hamster
Участник
 
687 / 13 (2) ++
Registriert seit: 15.05.2003
>вполне возможно необходимо осуществлять сквозную номерацию строк заказов ... ?
Возможно.... Если хватит сил объяснить этим менеджерам что такое "сквозная нумерация"
Alt 15.07.2004, 15:54   #9  
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
а вы не объясняйте термин "сквозная нумерация"

Скажите что вот это (и покажите пальцем) код строки. Код строки никогда не изменяется в заказе.

Zitat:
Логистика заказчика использует номер строки заказа при всех движениях товара, угадал?
Во всех движениях и во всех документах? Это ж сколько в Аксапте перепахивать придется...

Тем более номер строки использовать НЕЛЬЗЯ!
Представьте, что вы создали заказ перенумеровали строки по порядку, а затем выписали частичную накладную. В этой частичной накладной номера строк будут с дырками. Или НЕ БУДУТ совпадать с номерами строк в заказах

Спрашивается. А нафига?
Alt 15.07.2004, 15:54   #10  
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
Zitat:
Изначально опубликовано Hamster
Логистика заказчика использует номер строки заказа при всех движениях товара, угадал?
Кстати, в Аксапте такая фигня уже есть.
Называется Лот (inventTransID)
Alt 15.07.2004, 16:06   #11  
funnut ist offline
funnut
Участник
 
17 / 10 (1) +
Registriert seit: 08.07.2004
Ort: mscw
пасиба

ну хотят менеджеры видеть номера строк и всё тут
х.. с ними пусть тормозят
Alt 15.07.2004, 16:18   #12  
funnut ist offline
funnut
Участник
 
17 / 10 (1) +
Registriert seit: 08.07.2004
Ort: mscw
Re: Универсальный способ для любого FormDataSource
Zitat:
Изначально опубликовано Maxim Gorbunov
PHP-Code:
display LineNum lineNum(SalesLine _salesLine)
{
    
SalesLine   line;
    
LineNum     ret;
    ;
    
line this.getFirst();
    
ret 1;
    while (
line && !line.equal(_salesLine)) {
        
line this.getNext();
        
ret++;
    }

    return 
ret;

P.S: Разумеется, при переходе к последней записи таблицы быстродействие значительно снизится (при больших наборах данных), так как будут считываться все записи.
глючит это дело:
переходишь к последней строке цифры начинаются с единицы
с низу вверх
Alt 15.07.2004, 16:20   #13  
funnut ist offline
funnut
Участник
 
17 / 10 (1) +
Registriert seit: 08.07.2004
Ort: mscw
Zitat:
Изначально опубликовано mazzy
вот что меня всегда удивляло - как беспечно народ относится к быстродействию.

funnut, во-первых грид обычно не содержит ВСЕ строки. Это значит, что если вы смотрите середину таблицы, то грид ничего не знает о первых записях таблицы.
поэтому грид вы упоминаете совершенно напрасно. вам они никак не поможет.

Значит номера строк надо хранить в таблице.

Далее, ответьте пожалуйста, как вы собираетесь вставлять строчку в середину длинного (в несколько тысяч строк) заказа, если у вас есть целочисленная нумерация строчек?

Если же вы запретили вставлять строчки в середину - то рассчитывайте max по вашему полю и инициализируйте его при создании.

А можно главный вопрос? Зачем вам это в заказе?
грид ведь знает номер текущей строки
Alt 15.07.2004, 16:35   #14  
Maxim Gorbunov ist offline
Maxim Gorbunov
Administrator
Соотечественники
Лучший по профессии 2009
 
2.483 / 646 (26) +++++++
Registriert seit: 27.11.2001
Ort: Dubai, UAE
Zitat:
Изначально опубликовано funnut
грид ведь знает номер текущей строки
Zitat:
Изначально опубликовано funnut
переходишь к последней строке цифры начинаются с единицы
Вы сами себе и ответили. Grid может максимум узнать номер строки в display-буфере.

Про переход к последней записи в предыдущем сообщении, я, конечно, ошибся. Axapta работает интеллектуальнее
__________________
Not registered yet? Register here!
Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me
Alt 15.07.2004, 16:42   #15  
funnut ist offline
funnut
Участник
 
17 / 10 (1) +
Registriert seit: 08.07.2004
Ort: mscw
но ведь когда нажиманшь на скрол бар в гриде он всегда показывает номер строеки
независимо от того перешел ты к ней пролистав все или сразу перешел скажем к последней строке
Alt 15.07.2004, 17:16   #16  
Maxim Gorbunov ist offline
Maxim Gorbunov
Administrator
Соотечественники
Лучший по профессии 2009
 
2.483 / 646 (26) +++++++
Registriert seit: 27.11.2001
Ort: Dubai, UAE
при переходе к последней записи, номер не пишется
__________________
Not registered yet? Register here!
Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me
Alt 15.07.2004, 17:18   #17  
funnut ist offline
funnut
Участник
 
17 / 10 (1) +
Registriert seit: 08.07.2004
Ort: mscw
и что делать?
Alt 15.07.2004, 17:23   #18  
Maxim Gorbunov ist offline
Maxim Gorbunov
Administrator
Соотечественники
Лучший по профессии 2009
 
2.483 / 646 (26) +++++++
Registriert seit: 27.11.2001
Ort: Dubai, UAE
Лучший вариант - использовать номер лота
__________________
Not registered yet? Register here!
Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me
Alt 15.07.2004, 17:36   #19  
funnut ist offline
funnut
Участник
 
17 / 10 (1) +
Registriert seit: 08.07.2004
Ort: mscw
Zitat:
Изначально опубликовано Maxim Gorbunov
Лучший вариант - использовать номер лота
номер лота не рулит
мне нужно именно цифры от 1 до количество строк в заказе
Alt 16.07.2004, 12:31   #20  
dn ist offline
dn
Участник
Самостоятельные клиенты AX
 
486 / 159 (6) ++++++
Registriert seit: 26.03.2003
Ort: Москва
На вскидку, на методе active() источника данных SalesTable формируешь map для строк этого заказа - (номер лота строки - порядковый номер). А в дисплей методе на источнике данных SalesLine возвращаешь по номеру лота порядковый номер.
Stichworte
grid, x++

 

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
ComExcelDocument_RU по именнованной ячейки вывести номер ее строки. Poleax DAX: Программирование 37 15.10.2008 14:06
Открытие формы с деталями активной записи в гриде sweeper DAX: Программирование 4 19.09.2008 15:55
Отследить момент создания строки в гриде dreamer DAX: Программирование 2 20.06.2007 13:38
Как задать высоту строки в гриде в символах. Logger DAX: Программирование 8 11.08.2005 13:03
Выбраные строки в гриде. bagyr DAX: Программирование 28 25.03.2005 10:01

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 02:31 Uhr.
Powered by vBulletin® Version 3.8.5 (Deutsch)
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.