EditInPlace + DIM
Модератор: Дед Пахом
Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
-
- Полимат
- Сообщения: 1810
- Зарегистрирован: 25 Март 2009, 21:55
- Благодарил (а): 24 раза
- Поблагодарили: 10 раз
EditInPlace + DIM
Привет всем!
Есть Browse в него добавляю поле Users SHORT,DIM(20), поле(вернее поля [...]) используется как EditInPlace, при компиляции появляются ошибки. Если отключить EIP то все компилируется без ошибок, как-то можно это обойти? Ну не хочется плодить однотипные поля.
outwaresusers FILE,DRIVER('TOPSPEED'),NAME('outwaresusers.TPS')
OUT:WaresKey KEY(+OUT:WARES),DUP,NOCASE,OPT
RECORD RECORD
OUT:NWARES SHORT
OUT:WARES STRING(60)
OUT:PRICE DECIMAL(11,4)
OUT:PRICEOut DECIMAL(11,4)
OUT:EXPENSES DECIMAL(9,2)
OUT:SumGr DECIMAL(9,2)
OUT:Users SHORT,DIM(20)
END
END
Clarion 6.3 9058 ABC (Windows XP SP3)
Спасибо за внимание!
Есть Browse в него добавляю поле Users SHORT,DIM(20), поле(вернее поля [...]) используется как EditInPlace, при компиляции появляются ошибки. Если отключить EIP то все компилируется без ошибок, как-то можно это обойти? Ну не хочется плодить однотипные поля.
outwaresusers FILE,DRIVER('TOPSPEED'),NAME('outwaresusers.TPS')
OUT:WaresKey KEY(+OUT:WARES),DUP,NOCASE,OPT
RECORD RECORD
OUT:NWARES SHORT
OUT:WARES STRING(60)
OUT:PRICE DECIMAL(11,4)
OUT:PRICEOut DECIMAL(11,4)
OUT:EXPENSES DECIMAL(9,2)
OUT:SumGr DECIMAL(9,2)
OUT:Users SHORT,DIM(20)
END
END
Clarion 6.3 9058 ABC (Windows XP SP3)
Спасибо за внимание!
“Есть всего 2 типа языков: те, на которые все жалуются и те, которыми никто не пользуется.” — Бьерн Страуструп
-
- ✯ Ветеран ✯
- Сообщения: 5163
- Зарегистрирован: 28 Май 2009, 15:54
- Откуда: Москва
- Благодарил (а): 11 раз
- Поблагодарили: 26 раз
Re: EditInPlace + DIM
Я так понимаю, ругается на имя метода класса, не нравятся квадратные скобки. Что делать? В 'Column Specific' на закладке 'Class' измени 'Object Name' с EditInPlace::OUT:Users[1] на EditInPlace::OUT:Users1, например. И всё покатит.
We are hard at work… for you. 

-
- Полимат
- Сообщения: 1810
- Зарегистрирован: 25 Март 2009, 21:55
- Благодарил (а): 24 раза
- Поблагодарили: 10 раз
Re: EditInPlace + DIM
Спасибо, помогло!
Век живи-век учись, и все равно умрешь дураком.
А как сделать при подсчитывании Sum(Totaling) колонок в Browse используя массив LOC:Sum SHORT,DIM(20). Ситуация схожа с вышеуказанной, но к сожалению -
Век живи-век учись, и все равно умрешь дураком.

А как сделать при подсчитывании Sum(Totaling) колонок в Browse используя массив LOC:Sum SHORT,DIM(20). Ситуация схожа с вышеуказанной, но к сожалению -
не проходитkreator писал(а):... измени 'Object Name' с EditInPlace::OUT:Users[1] на EditInPlace::OUT:Users1, ...

“Есть всего 2 типа языков: те, на которые все жалуются и те, которыми никто не пользуется.” — Бьерн Страуструп
-
- ✯ Ветеран ✯
- Сообщения: 5163
- Зарегистрирован: 28 Май 2009, 15:54
- Откуда: Москва
- Благодарил (а): 11 раз
- Поблагодарили: 26 раз
Re: EditInPlace + DIM
В закладке 'Totaling' ставишь:
Total Target Field: LOC:Sum[1]
Total Type: Sum
Field To Total: OUT:Users[1]
Total Based On: Each Record Read
Такой вариант не проходит?
Total Target Field: LOC:Sum[1]
Total Type: Sum
Field To Total: OUT:Users[1]
Total Based On: Each Record Read
Такой вариант не проходит?
We are hard at work… for you. 

-
- Полимат
- Сообщения: 1810
- Зарегистрирован: 25 Март 2009, 21:55
- Благодарил (а): 24 раза
- Поблагодарили: 10 раз
Re: EditInPlace + DIM
нет не проходит
с полем Field To Total: OUT:Users[1] проблем нет, а вот с итоговым Total Target Field: LOC:Sum[1] проблемаkreator писал(а):В закладке 'Totaling' ставишь:
Total Target Field: LOC:Sum[1]
Total Type: Sum
Field To Total: OUT:Users[1]
Total Based On: Each Record Read
“Есть всего 2 типа языков: те, на которые все жалуются и те, которыми никто не пользуется.” — Бьерн Страуструп
-
- ✯ Ветеран ✯
- Сообщения: 5163
- Зарегистрирован: 28 Май 2009, 15:54
- Откуда: Москва
- Благодарил (а): 11 раз
- Поблагодарили: 26 раз
Re: EditInPlace + DIM
Ну исправь вручную файл с расширением *.clw, на который ругается. Найди процедуру ResetFromView.
Закоментируй - ! OUT:Users[1]:Sum REAL ! Sum variable for browse totals
Напиши своё - OUT:Users1:Sum REAL ! Sum variable for browse totals
Ну и дальше по тексту тоже исправь.
Вариант №2 - поправить шаблоны, чтобы генерилась переменная без квадратных скобок.
Вариант №3 - вставить текст выше в Embeds. Только проблема - как закоментировать ненужный блок. В Clarion# есть конструкция !~ ~!. Обычный Clarion это не поддерживает.
Закоментируй - ! OUT:Users[1]:Sum REAL ! Sum variable for browse totals
Напиши своё - OUT:Users1:Sum REAL ! Sum variable for browse totals
Ну и дальше по тексту тоже исправь.
Вариант №2 - поправить шаблоны, чтобы генерилась переменная без квадратных скобок.
Вариант №3 - вставить текст выше в Embeds. Только проблема - как закоментировать ненужный блок. В Clarion# есть конструкция !~ ~!. Обычный Clarion это не поддерживает.
We are hard at work… for you. 

-
- Полимат
- Сообщения: 1810
- Зарегистрирован: 25 Март 2009, 21:55
- Благодарил (а): 24 раза
- Поблагодарили: 10 раз
Re: EditInPlace + DIM
Жаль, что только так. Мда ведь вроде как стандартная ситуация, или в кларионе не любят массивы. Понятно что в ручную можно ВСЕ написать, но зачем шаблоны? Насчет закоментировать, а OMIT не подойдет?
“Есть всего 2 типа языков: те, на которые все жалуются и те, которыми никто не пользуется.” — Бьерн Страуструп
-
- ✯ Ветеран ✯
- Сообщения: 5163
- Зарегистрирован: 28 Май 2009, 15:54
- Откуда: Москва
- Благодарил (а): 11 раз
- Поблагодарили: 26 раз
Re: EditInPlace + DIM
Посмотри, в какие точки в процедуре ResetFromView ставяться нужные тебе операторы. И вставь туда сделанные вручную коды циклов.
А, вообще, понятие массива в базах данных не нужно. Все равно в Appgen'е нужно написать 20 строчек.
И последний аргумент. Когда-нибудь придется переводить Вашу программу под SQL. А там массивов нет изначально.
А, вообще, понятие массива в базах данных не нужно. Все равно в Appgen'е нужно написать 20 строчек.
И последний аргумент. Когда-нибудь придется переводить Вашу программу под SQL. А там массивов нет изначально.
We are hard at work… for you. 
