Показать сообщение отдельно
Старый 12.08.2004, 10:50   #21  
Владимир Максимов is offline
Владимир Максимов
Участник
КОРУС Консалтинг
 
1,713 / 1201 (44) ++++++++
Регистрация: 13.01.2004
Записей в блоге: 3
Это все замечательно, но как вытащить из AXAPTA реальные, физические имена полей таблицы?

Т.е. поле типа Dimension - это поле типа массив. Хорошо, по DictField я определяю, что это массив из 4 элементов. Но ведь я получу имена вроде:

Dimension[1]
Dimension[2]
Dimension[3]
Dimension[4]

Но физически, на MS SQL им соответсвуют поля
Dimension
Dimension2_
Dimension3_
Dimension4_

Еще одна неприятность заключается в том, что количество символов в именах таблиц на MS SQL сервере ограничено 30 символами. В AXAPTA - несколько больше. В этом случае в MS SQL имя таких таблиц искусственно обрезается до 26 символов+4 цифры.

Короче, я просто не представляю как решить в общем случае задачу однозначной идентификации имен полей и таблиц AXAPTA и физических имен на MS SQL.

Поэтому, лучше не мудрить и писать скрипты напрямую в MS SQL (хранимые процедуры) и вызывать их из Crystal Reportе (если это возможно).

Правда, не совсем понятно, почему нельзя то же самое сделать через Connection напрямую из AXAPTA. И не нужно "лишний" продукт покупать.