MAV Direct ODBC

Обсуждение MAV Direct ODBC

Модератор: Andrew™

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion и MAV который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Аватара пользователя
Andrew™
SQL профи
Сообщения: 651
Зарегистрирован: 05 Июль 2005, 16:32
Откуда: Москва, Зеленоград

Lookup Button control template

Сообщение Andrew™ »

Для организации работы выбирается ENTRY контрол для которого будет работать лукап, далее настраиваются правила:
1. поиска записи по этому вводному полю - Selected record, т е если у нас есть справочник товаров, то по вводному полю ищем по наименованию.
2. подкачки записи при входе в форму - Constraint record, т е если у нас есть справочник товаров, то подкачиваем запись справочник не по наименованию а по ID товара, что более логично и правильно.
Можно установить зависимость лукап контрола от других полей - Reset Fields, например есть лукап по фирмам, далее лукап по адресам фирмы, выбрали фирму, выбрали адрес, а потом заново выбрали новую фирму, лукап по адресу проверит правильность адреса, если адрес по правилу п.1 не удовлетворяет, то лукап очистится.
Реализован механизм авто ввода - Auto entry, что это такое:
Вы начинаете набирать в водном поле что то и на каждое изменение вводного поля будет происходить поиск по п.1, если в результате поиска запись из справочника будет найдена, она будет подставлена в ENTRY поле и будет выделена та часть значения, какая ещё пользователем не была введена, т е он может либо продолжить ввод, либо увидев, что уже нашёл искомую запись перейти на ввод следующего поля в форме. Для строковых полей лучше всего высталять условие поиска "начинается на"
Гость

SingleFileTree

Сообщение Гость »

Контрольный пример для C6.1 ABC

шаблонная версия

Структура каталогов закачивается в талицу MSSQL верно
все Tree_Id и PARENT Tree_id формируются верно.

Но в дереве виден только первй уровень Parent=0
Плюсики и минусики отсутствуют - как раскрыть ветки
В чем грабли ?
wowa
Прохожий
Сообщения: 2
Зарегистрирован: 07 Июль 2005, 19:25

Первый глюк

Сообщение wowa »

Контрольный пример для С6.1 шаблонная версия

1.

Процедура RunSQLscript

Метод MAV:WindowManager.Process

File = c:\temp\mssql.sql

Если такого файла по какой либо причине нет, то:

IF SELF.File._Open(File)
SELF.ShowError('Open file - ' & File)
RETURN
END

ошибка не возвращается, а создается пустой файл
с заданным именем

SELF.File._Bytes() возвращает 0

SELF.Buffer.Reset(ALL('<0>',SELF.File._Bytes()))

Программа падает


2.
Аналогично предыдущему письму - в конторольном примере не работает SingleTree - виден первый уровень, как увидеть остальные
непонятно. При попытке изменить, удалить запись на этом уровне все падает
Аватара пользователя
Admin
Администратор
Сообщения: 4010
Зарегистрирован: 05 Июль 2005, 15:59
Откуда: Хабаровск
Благодарил (а): 53 раза
Поблагодарили: 33 раза
Контактная информация:

Сообщение Admin »

Вот Вам еще немного рекламы по поводу MAV
Читаем статью ...
http://zero.clarionlife.net/Articles/OT ... alin.shtml
Гость

Re: SingleFileTree

Сообщение Гость »

Anonymous писал(а):Контрольный пример для C6.1 ABC

шаблонная версия

Структура каталогов закачивается в талицу MSSQL верно
все Tree_Id и PARENT Tree_id формируются верно.

Но в дереве виден только первй уровень Parent=0
Плюсики и минусики отсутствуют - как раскрыть ветки
В чем грабли ?

Возми текущие примеры с сайта или в настройках дерева на закладке Condditional Behaviour в строке Default убей Where - фильтр строку

Демка немного не обновлённая оказалась и была поправлена, раньше для загрузки дерева устанавливалось условие закрузки первого уровня, а дальше шла рекурсивная загрузка всех веток дерева, что на больших объёмах приводило к тормозам, теперь задаётся условие для загрузки всего дерева, и дерево грузиться в момент

А я сейчас в отпуске, Псков, появлюсь на работе 25 числа сего месяца
wowa
Прохожий
Сообщения: 2
Зарегистрирован: 07 Июль 2005, 19:25

Сообщение wowa »

Убив Where - получаем все подкаталоги на первом уровне.

Жаль - придется ждать 25 (с нетерпением)
Арсений

Сообщение Арсений »

1. Что значит "Ознакомительная версия"? Могу ли я использовать ее в своих проектах?
2. Если нет, то что я должен для этого сделать?
3. Есть ли русская версия шаблонов?
Аватара пользователя
Admin
Администратор
Сообщения: 4010
Зарегистрирован: 05 Июль 2005, 15:59
Откуда: Хабаровск
Благодарил (а): 53 раза
Поблагодарили: 33 раза
Контактная информация:

Сообщение Admin »

По моему это полностью рабочая версию. Но крайне желательно при использовании постоянно заплатить (Андрей уточнит).
Русской версии насколько я знаю - нет!
Арсений

Insert, Identity

Сообщение Арсений »

Решена ли проблема связанная с получением значения Identity поля после добавления записи?

Если да, то где спрятаны эти возможности?

Спасибо.
Аватара пользователя
Admin
Администратор
Сообщения: 4010
Зарегистрирован: 05 Июль 2005, 15:59
Откуда: Хабаровск
Благодарил (а): 53 раза
Поблагодарили: 33 раза
Контактная информация:

Сообщение Admin »

Это к спецам или к Мялину ...
Арсений

По поводу identity

Сообщение Арсений »

А вот интересно, как работает функция mavinsert? Т.е. если она посылает обычный запрос вида insert into ... values ..., то может быть добавить в туда (ну или сделать новую функцию) еще и select max(IdentityField) from ... чтобы она так или иначе вернула нужное значение?

Или в моей идее что-то не так?
Аватара пользователя
StillZero
Ветеран
Сообщения: 458
Зарегистрирован: 06 Июль 2005, 2:17
Откуда: Хабаровск
Поблагодарили: 1 раз
Контактная информация:

Сообщение StillZero »

ваще велкам на sql.ru в форум, там поиск по слову IDENTITY, max(IDEN_FIELD) нельзя - у тебя же не однопользовательская прога, по моему надо scope_identity использовать, посмотри в BOL
Арсений

Сообщение Арсений »

StillZero писал(а):ваще велкам на sql.ru в форум, там поиск по слову IDENTITY, max(IDEN_FIELD) нельзя - у тебя же не однопользовательская прога, по моему надо scope_identity использовать, посмотри в BOL
дык, в одну транзакцию завернуть обе инструкции - и вот оно счастье
Tolmachev Igor

Re: Insert, Identity

Сообщение Tolmachev Igor »

Арсений писал(а):Решена ли проблема связанная с получением значения Identity поля после добавления записи?

Если да, то где спрятаны эти возможности?

Спасибо.
В словаре - в таблице - в поле на закладке Attributes
ставишь Read Only, что бы библиотека знала - это поле не изменяется клиентским приложением при MAVINSERT и MAVUPDATE.
в поле Initial Value пишешь запрос, который будет выполняться при MAVInsert сразу за ним (Запрос можно указать переменной через воскл.знак)
Значение, которое вернул запрос - в этом поле
пример запроса: Select @@identity
Арсений

Re: Insert, Identity

Сообщение Арсений »

Tolmachev Igor писал(а): Значение, которое вернул запрос - в этом поле
пример запроса: Select @@identity
Спасибо. А как в программе пощупать это значение после добавления?
Ответить