Как добавить колонку с вычисляемым полем в браузер

Программирование на Атлантисе (VIP, FCOM, ARD), FastReport

Модераторы: m0p3e, edward_K, Модераторы

Алексей
Местный житель
Сообщения: 2896
Зарегистрирован: 24 июн 2005, 12:12
Откуда: Иркутская область

Re: Как добавить колонку с вычисляемым полем в браузер

Сообщение Алексей »

а чем эта команда отличается от cfsSetProp('Field: SCHFACT.DPOST','Index','5'); ? хотя вроде ширина выставляется, но т.к. поле последнее - то не заметна просто.

а вот индекс задать не удалось ни так
cfsSetProp(mycol2,'Index','5');
и ни так
cfsSetProp(mycol2,cfpIndex,byte(5));
zna
Местный житель
Сообщения: 552
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Челябинск
Контактная информация:

Re: Как добавить колонку с вычисляемым полем в браузер

Сообщение zna »

Отличается тем, что ширина колонки с помощью cfpDefWidth устанавливается :-)
А свойство cfpIndex = byte(4) у Вас может, перекрывается с другой колонкой. Попробуйте ту, другую колонку в конец передвинуть.
Автоматом сдвинуть колонки вряд ли получиться..
Den
Местный житель
Сообщения: 1844
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Ярославская область ОАО "Часовой завод Чайка" г. Углич
Контактная информация:

Re: Как добавить колонку с вычисляемым полем в браузер

Сообщение Den »

Попробуйте переназначить индекс как Вам нужно Всем колонкам бравсе этого при иннициализации окна:

допустим в бравсе 10 колонок...

var ColArray : array [1..1] of string;
var SpisCol : array [1..10] of integer;
....
SpisCol[1]:=0;
SpisCol[2]:=1;
SpisCol[3]:=2;
SpisCol[4]:=3;
SpisCol[5]:=5;
SpisCol[6]:=4;
SpisCol[7]:=6;
SpisCol[8]:=8;
SpisCol[9]:=7;
SpisCol[10]:=9;

SetLimit(ColArray,0)
cfsEnumObjects ('MyBrowse', ColArray, False);
// в цикле по собранным колонкам бравсе выставляем индексы
for (li2:= 1; li2 <= Count(ColArray); inc(li2))
{
if cfsGetProp(ColArray[li2], 'index', ifield) = 0
{
cfsSetProp(ColArray[li2], 'index',SpisCol[li2]);
}
}

ну или совсем экзотический способ сделать сначала cfsDestroyObject ))
RAJAH
Местный житель
Сообщения: 932
Зарегистрирован: 18 фев 2008, 12:49

Re: Как добавить колонку с вычисляемым полем в браузер

Сообщение RAJAH »

Апнем!
Пытаюсь в версии 9.1 добавить в интерфейс поле - значение внешнего атрибута. Создаю cnf-файл, удаляю оттуда всё лишнее, включаю его в проект. Проект не компилируется строчником - выдаёт ошибку:

Код: Выделить всё

 Ошибка: Ошибка интерпретации имени поля: "ExtAttr: KATMARSH,281474976711026,0,0,0,0,Схема строповки"
объекта "ExtAttr: KATMARSH,281474976711026" (стр.21, поз.80 в iShemStropMK.cnf)
        FieldName = 'ExtAttr: KATMARSH,281474976711026,0,0,0,0,Схема
ok.

iShemStropMK.cnf(21)
 Ошибка: Удален объект "ExtAttr: KATMARSH,281474976711026" (стр.21, поз.80 в iShemStropMK.cnf)
        FieldName = 'ExtAttr: KATMARSH,281474976711026,0,0,0,0,Схема строповки';
ok.

iShemStropMK.cnf(21) Предупреждение: нельзя редактировать указанное свойство
Объект: 'ExtAttr: KATMARSH,281474976711026'; свойство: 'FieldName'; значение: 'ExtAttr: KATMARSH,281474976711026,0,0,0,0,Схема строповки' (стр.21, поз.80 в iShemStropMK.cnf)
Загрузка скрипта из "Управления конфигуратором" в самой "Галактике" проходит успешно - поле появляется.
edward_K
Заслуженный деятель интернет-сообщества
Сообщения: 5188
Зарегистрирован: 29 мар 2005, 17:49
Откуда: SPB galaxy spb

Re: Как добавить колонку с вычисляемым полем в браузер

Сообщение edward_K »

Компилить нужно на той же базе, где есть соотв. AttrNam. Ну или хотя бы его залить в базу для компиляции - проверяйте тщательней - это старая фишка.
Ответить