AXForum  
Вернуться   AXForum > Microsoft Dynamics NAV > NAV: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 07.05.2003, 12:40   #1  
Сергей Андросов is offline
Сергей Андросов
Участник
 
6 / 10 (1) +
Регистрация: 19.02.2003
? Как в датапорте изнутри узнать свой собственный ID и Name ??
Собственно - весь вопрос в сабже!
Мучают меня подозрение - что никак )
Подтвердите их или опровергните ???
Заранее спасибо!

Сергей.
Старый 07.05.2003, 13:14   #2  
Yoil is offline
Yoil
NavAx
NavAx Club
Лучший по профессии 2017
Лучший по профессии 2009
 
1,574 / 70 (6) ++++
Регистрация: 20.11.2002
Адрес: Msk
Если речь идет об ID и Name юзера - то все просто.
ID хранится в системной переменной USERID, а Name можно легко получить из таблицы USER, что-нибудь типа
IF User.GET(UPPERCASE(USERID)) THEN xUserName := User.Name;
Старый 08.05.2003, 09:13   #3  
Сергей Андросов is offline
Сергей Андросов
Участник
 
6 / 10 (1) +
Регистрация: 19.02.2003
:-)
Речь идет о номере и имени самого датапорта ))
К моему вящему сожалению!
Больше мнений ни у кого нет ???
Старый 13.05.2003, 10:07   #4  
Maks is offline
Maks
Участник
 
33 / 10 (1) +
Регистрация: 16.04.2003
есть такой фильм с Джеки Чаном, "Кто Я".

у тебя похоже такая же ситуация.

А в чем собственно суть проблемы? Какова цель?
Старый 13.05.2003, 13:02   #5  
Сергей Андросов is offline
Сергей Андросов
Участник
 
6 / 10 (1) +
Регистрация: 19.02.2003
Грубо говоря - датапорт должен работать с файлом - имя которого совпадает с именем датапорта ))
Их у меня много - под сотню и руками их делать никакого желания нет...
Строка кода
CurrDataport.FILENAME := MyName; спасла бы все...
я уже обошел это - поизголявшись пару дней...
но все равно не пойму - почему мне дают только три свойства для редактирования - а остальные даже от чтения прячут.... Кому это мешает.... прочитать то не страшно
Не пойму - почему в репорте и форме можно ID узнать - а в остальных объектах нет.
Никому ненужные ограничения - а сколько крови портят...
Странная система.... )))))))


---------------------------------------------------------------
есть такой фильм с Джеки Чаном, "Кто Я".

у тебя похоже такая же ситуация.

А в чем собственно суть проблемы? Какова цель?
Старый 21.05.2003, 22:21   #6  
Khodakovska is offline
Khodakovska
Участник
 
13 / 10 (1) +
Регистрация: 02.03.2003
Можете подсказать как в форме ID узнать?
Старый 22.05.2003, 06:10   #7  
Сергей Андросов is offline
Сергей Андросов
Участник
 
6 / 10 (1) +
Регистрация: 19.02.2003
Обратимся к встроенной справке )
--------------------------------------
f.OBJECTID
This function returns a string in the "form xxx" format, where xxx is the name or number of the application object.

String:=f.OBJECTID([UseNames])
String

Data type: text or code

f

Data type: form

UseNames

Data type: boolean

The UseNames parameter is optional. If it is set to TRUE (default value) or if it is empty, the returned string contains references to field names in the table that the record is associated with. If the parameter is set to FALSE, field numbers are used instead.
Старый 22.05.2003, 11:32   #8  
Yoil is offline
Yoil
NavAx
NavAx Club
Лучший по профессии 2017
Лучший по профессии 2009
 
1,574 / 70 (6) ++++
Регистрация: 20.11.2002
Адрес: Msk
На самом деле OjectID - это строка с именем объекта, причем перед именем будет написано еще слово form (для случая формы).
Чтобы узнать теперь ID формы, нужно
1) Отсечь от ObjectID слово form
т.е. что-то вроде NormalName := COPYSTR(f.ObjectID, 6, STRLEN(f.ObjectID)-5);
2) Описать переменную типа Objects Record Объект (таблица Объект из Object Designer не видна, ее ID - 2000000001)
3) Найти в этой таблице свою форму

Objects.SETRANGE(Имя, NormalName);
Objects.SETRANGE(Тип, 2); //тип 2 - это как раз формы)
Objects.FIND('-');

Вот теперь мы имеем инфу по форме :

Objects.Имя - имя формы (которое у нас, правда, уже лежит в NormalName)
Objects."Список версий" - список версий (то, что видно в OD)
Objects.ID - ID
Objects.Дата - Дата последнего изменения

Все то же верно и для отчетов (нужно только делать Objects.SETRANGE(Тип, 3); //тип 3 - это как раз репорты). А вот насчет остального не знаю...
Старый 24.05.2003, 22:26   #9  
Khodakovska is offline
Khodakovska
Участник
 
13 / 10 (1) +
Регистрация: 02.03.2003
Спасибо большое за ответ .Я тут как-то у Бельгийца пыталась узнать у него стаж работы с программой 5 лет ,говорит что никогда о таком и не слышал.
Старый 25.05.2003, 22:30   #10  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Khodakovska, это можно воспринимать двояко.

Первый подход - какие они там лопухи. 5 лет работают и такого не знают.

Второй подход - буржуи не задаются такими вопросами и решают свои задачи другими способами. Не залезая в программирование по локоть.

Например. Использоваои ли вы, Khodakovska, за долгий срок своей работы метатег <meta "robots" content="nofollow">. А почему? Ведь классный тег. А вы его не использовали.

Нужен ли бельгийцу ID формы? А почему?
Как же он живет без такого сакрального значния?
Старый 25.05.2003, 23:42   #11  
Khodakovska is offline
Khodakovska
Участник
 
13 / 10 (1) +
Регистрация: 02.03.2003
Цитата:
Первый подход - какие они там лопухи. 5 лет работают и такого не знают.
Я не думаю что все лопухи .Просто сейчас работаю с одной фирмой на одного клиента вместе с другими программистами. Вот им и задала такой вопрос.
Цитата:
Второй подход - буржуи не задаются такими вопросами и решают свои задачи другими способами. Не залезая в программирование по локоть.
Еще и как залезают. Иногда программу лучше переписать полностью чем перевести на новую версию т .к. практически весь код заменен.
Цитата:
Например. Использоваои ли вы, Khodakovska, за долгий срок своей работы метатег . А почему? Ведь классный тег. А вы его не использовали.
Не думаю что 7 месяцев работы с программой такой уж большой срок. Так что хотелось бы по подробнее узнать о классном теге может быть пригодиться.
Цитата:
Нужен ли бельгийцу ID формы? А почему?
Думаю, что нужен т.к. просили показать.
Старый 25.05.2003, 23:59   #12  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Изначально опубликовано Khodakovska
Думаю, что нужен т.к. просили показать.
Логично. Тогда согласен.
Наверное, был не прав.
Старый 27.05.2003, 08:38   #13  
Grizzly is offline
Grizzly
Участник
 
85 / 10 (1) +
Регистрация: 30.01.2003
Адрес: Омск
2mazzy
Цитата:
Изначально опубликовано mazzy
Использоваои ли вы, Khodakovska, за долгий срок своей работы метатег <meta "robots" content="nofollow">. А почему? Ведь классный тег. А вы его не использовали.
Так что же все-таки такое этот таинственный метатег? Или Вы, mazzy, опять ошиблись форумом?
Старый 27.05.2003, 09:24   #14  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
почему ОПЯТЬ ошибся?

Это для интернета и поисковых машин. Я привел пример того, что вряд ли используется внедренцами. Но не потому, что плохой инструмент. А потому, что внедренцы задачи решают другие и другими средствами.
http://www.yandex.ru/info/webmaster2.html

После размышления, мне все таки кажется, что Бельгиец прав, что пытается решить проблемы клиентов на Аттейне, не интересуясь такими сугубо программистскими методами как FormID. Проблемы клиентов Аттейна (да и Аксапты) не в том, чтобы узнать ID, а в решении учетных задач. А про ID абсолютно все должен знать консультант по Delphi, например.

Хотя что-то в рассуждениях Khodakovska все же есть. Надо еще подумать.
Старый 28.05.2003, 17:43   #15  
AnGL is offline
AnGL
Участник
Аватар для AnGL
Сотрудники Microsoft Dynamics
 
111 / 45 (2) +++
Регистрация: 17.12.2002
Добрый день !

А почему нельзя просто жестко завести ID и Название.
Ведь если Вы запускаете датапорт номер 50000 с именем Test1, то это он и есть.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Вынести поле "Name" в G/L Entry avokado NAV: Программирование 6 06.04.2006 16:22
Обработка записей из файла в датапорте Greggy NAV: Программирование 2 19.10.2004 13:53

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 05:12.