![]() |
#1 |
Участник
|
![]()
Как связать глобальную переменную с полем в таблице на форме. Например форма сылается на таблицу студентов, где содержится информация о них: ID студентов, их ФИО, год рождения и пр. Глобальная переменная - целочисленный массив NewArray должна содержать ID студентов. Как это организовать?
Всем заранее спасибо. |
|
![]() |
#2 |
Участник
|
БОбеР, выдыхай
![]() Зачем тебе? Колись, даю 99% что можно иначе решить проблему ![]() ![]() |
|
![]() |
#3 |
Участник
|
Гм... Какая знакомая постановка задачи
![]() Сдается мне преподы, переросшие Clipper начали давать Navision на вторых курсах университета по спецкурсу "Базы данных". Тему можно в Курилку снести. |
|
![]() |
#4 |
Участник
|
Ну я пока что новичок в этой системе, естественно, что на первых порах будет возникать куча вопросов.
Сам синтаксис языка псевдо паскалевский. С построением алгоритмов для решения различных задач проблем не возникает, но вот когда дело доходит непосредственно до реализации алгоритма на C\AL-е, то тут всё тормозится... Кстати, вот ещё новый вопросик. Существуют ли в фунции для преобразования типов данных, например из строкового в целочисленный и обратно? Всем большое пасиба за советы и предложения снести тему в курилку ![]() |
|
![]() |
#5 |
Участник
|
Для преобразования в строковый тип используется функция FORMAT.
Для обратного преобразования - функция EVALUATE. Параметры и той и другой функции можно посмотреть в справке. ![]() Что касается первой задачи, то, если можно, опишите подробнее, для чего вам это нужно. ![]() |
|
![]() |
#6 |
Участник
|
Спасибо kekki, с преобразованием типов разобрался.
![]() А насчет предыдущего вопроса, то он уже не актуален. В таблице отображался список студентов, содержащий их ID, ФИО, адресс и прочую информацию. Стуенту, поступившему в ВУЗ позже остальных присваивался ID больший по значению чем у предыдущих, т.е. сравнивая их ID можно было судить о том, кто учится дольше. Задача состояла в том, чтобы занести в таблицу нового поступившего студента задним числом, т.е. "впихнуть" его ID в определённую позицию. Для этого в цикле с конца и до заданной позиции требовалось увеличить значение ID каждого студента на единицу, и в конце вставить в пустое место нового студента. Сам алгоритм очень простой и не вызывал никаких трудностей, повторюсь проблема была только в том, что я не знал как связывать переменные с записями в таблицах. Ещё раз спасибо всем, кто помог. ![]() |
|
![]() |
#7 |
Administrator
|
2 Neovision
кхм... за идею сравнивания даты поступления по величине ID боюсь тут респектов не дадут |
|
![]() |
#8 |
Участник
|
ID проставляются в возрвстающем порядке, но по ним нельзя судить о дате поступления студентов, можно лишь сравнивать кто поступил раньше. Что касается точной даты постуления, то Сама таблица содержит поле date, которое и содержит дату зачисления студентов в институт.
|
|
![]() |
#9 |
Участник
|
Тут возникла ещё одна проблемка. Объявляю переменную типа FieldRef, которая будет связана с полем таблицы. При попытке произвести какие-либо действия над этой переменной выходит сообщение об ошибке: "Переменная FieldRef не была инициализирована".
![]() |
|
![]() |
#10 |
Участник
|
Для начала надо инициализировать переменную типа RecordRef, на поле которой уже будет ссылаться переменная типа FieldRef:
FieldRef := RecordRef.FIELD(FieldNo) |
|
![]() |
#11 |
Участник
|
Цитата:
Сообщение от Neovision
![]() Тут возникла ещё одна проблемка. Объявляю переменную типа FieldRef, которая будет связана с полем таблицы. При попытке произвести какие-либо действия над этой переменной выходит сообщение об ошибке: "Переменная FieldRef не была инициализирована".
![]() Если ничего не помогает, прочтите мануал. (с) народная мудрость |
|
![]() |
#12 |
Участник
|
Спасибо, всё получилось после того как объявил переенную типа RecRef и связал с ней другую типа FieldRef
![]() |
|