Имя: Пароль:
1C
 
Можно ли в журналах задавать свои пиктограммы, если документ проведен/помечен?
Ø
0 balamut
 
02.08.06
11:23
?
1 АЛьФ
 
02.08.06
11:24
2(0) Использование ВК не противоречит твоим религиозным воззрениям?
2 jurii
 
02.08.06
11:25
Можно.
Но не вместо определенных оболочкой, а дополнительные...
Типа Печатался ли документ, Проверен ли ГБ и прочее...
3 balamut
 
02.08.06
11:27
Совсем не противоречит. Использую чуток пока. Подскажите плз, какая кампонента, методы? FormEx?
4 АЛьФ
 
02.08.06
11:28
2(3) Да, FormEx.
Процедура ПослеОткрытия()
  РФ = СоздатьОбъект("РасширениеФормы");
  РФ.УстановитьКартинкуМногострочнойЧасти("Документы");
КонецПроцедуры // ПослеОткрытия
Процедура ПиктограммаМногострочнойЧасти(ном)
  Если Число(ном) = 0 Тогда
    Если глЕстьДвижения(ТекущийДокумент) = 1 Тогда
      ном = 10;
    КонецЕсли;
  КонецЕсли;
КонецПроцедуры // ПиктограммаМногострочнойЧасти
5 balamut
 
02.08.06
11:30
Спасибо, пробую.
6 balamut
 
02.08.06
12:36
Спасибо за помощь. Получил, что хотел.
Уважаемый Альф, а описания метода УстановитьКартинкуМногострочнойЧасти()и процедуры ПиктограммаМногострочнойЧасти(ном)
 нету в файле справки? У себя не нашел.
7 АЛьФ
 
02.08.06
12:41
2(6) Их описание есть в справке к 1С++.
8 VV
 
02.08.06
12:46
7)ном = 10; а где этот ном взять?
9 АЛьФ
 
02.08.06
12:53
2(8) Это номер пиктограммы в установленной картинке. По аналогии с пиктограммами в таблице значений.
10 balamut
 
02.08.06
12:58
Так я говорю, не нашел в своей справке 1С++.
Смотрел среди методов объекта РасширенныеФормы, поиском тоже не нашел.
11 АЛьФ
 
02.08.06
12:59
2(10) http://www.1cpp.ru/docum/html/FormEx.html#multilinepic
12 balamut
 
02.08.06
13:10
Спасибо.
А в als-файле это включено? У меня из описания предопределенны процедур там только описание: и ПриИзмененииРазмераОкна.
Это нормально или у меня не полная справка?
13 АЛьФ
 
02.08.06
13:18
2(12) als-а с последними обновлениями нет.
14 balamut
 
02.08.06
13:19
Блин потерял: У меня из описания предопределенны процедур там только описание Процедур обработки нажатий кнопок мыши и клавиатуры и ПриИзмененииРазмераОкна.
15 balamut
 
02.08.06
13:22
Понял-спасибо за помощь и разьяснения.
16 VV
 
02.08.06
14:00
ясно, что я туплю, но все же:
РФ.УстановитьКартинкуМногострочнойЧасти("Документы");
{Журнал.ЖурналСЗакладками.Форма.Основная.Модуль(426)}: Поле агрегатного объекта не обнаружено (УстановитьКартинкуМногострочнойЧасти)
17 АЛьФ
 
02.08.06
14:01
2(16) Обнови версию 1С++ (или FormEx).
18 VV
 
02.08.06
14:24
Обновил, не вылетает. Экспериментирую
Процедура ПослеОткрытия()
  Окна.Максимизировать(Форма);
  ФормаРасш.РаскрашиватьТаблицу("МногострочнаяЧасть");
    ФормаРасш.ПодсветкаЗакладки(1,1);
  ФормаРасш.УстановитьКартинкуМногострочнойЧасти("Документы");
КонецПроцедуры
Процедура ПиктограммаМногострочнойЧасти(ном)
  Если Число(ном) = 0 Тогда
    Если ТекущийДокумент.Вид() = "РеализацияОптом" Тогда
      ном = 10;
    КонецЕсли;
  КонецЕсли;
КонецПроцедуры // ПиктограммаМногострочнойЧасти
---------------------
В библиотеке картинок назначил одной картике идентификатор "Документы". Теперь в журнале вообще нет пиктограмм :(
Алексей, объясни "для особо одаренных", а?
19 АЛьФ
 
02.08.06
14:29
2(18) Почитай про правила задания пикторграмм для таблиц значений. Тут они же действуют.
"Картинка должна быть формата .bmp, содержать все пиктограммы для этой таблицы значений и состоять из последовательности пиктограмм размером 16х15 пикселей."
20 VV
 
02.08.06
14:36
но в ТЗ я задаю пиктограммы из Библиотеки картинок, которые двойные: " - +" и т.д. А сейчас попробовал у той, которой в первый раз задал Документы стереть ид - не стирает. Другой назначил - ничего.
21 Uho
 
02.08.06
14:53
я, конечно, не имею ничего против ВК, но зачем использовать ВК, когда можно сделать (0) без использования ВК (штатно :))))?
22 VV
 
02.08.06
15:01
с ВК - проще, когда разберешься.ИМХО, конечно.
23 Uho
 
02.08.06
15:04
(22) имхо, тоже самое, что и штатно, но + само использование ВК
24 АЛьФ
 
02.08.06
15:07
2(20) Дык, если у тебя картинка с двумя пиктограммами, то и параметру "ном" ты должен присваивать 0 или 1 (нумерация пиктограмм всегда с 0 начинается для этого метода). И не забывай, что при вызове УстановитьКартинкуМногострочнойЧасти() штатные пиктограммы теряются (во всяком случае пока).
(21) С ВК красивей получается.
25 Uho
 
02.08.06
15:08
(24) хм... имхо, одинаково получается по виду
26 VV
 
02.08.06
15:11
24) Сасибо, ща попробую
25) код - в студию
27 Uho
 
02.08.06
15:11
(26) а чего код-то? Убираешь колонку с пиктограммами и выводишь свою. Всё
28 АЛьФ
 
02.08.06
15:15
2(25) Точно одинаково? Уверен? Вот такую картинку можно получить "штатными средствами"?
http://www.dorex.ru/ss.jpg
29 Uho
 
02.08.06
15:24
(28) что касается пиктограмм ТЧ, то можно, только на белом фоне, что, имхо, не принципиально
30 АЛьФ
 
02.08.06
15:26
2(29) Ну вот... пошли "только"... А говорил, что "одинаково получается по виду"... :(
31 Uho
 
02.08.06
15:29
(30) если принципиальен серый цвет, тогда ладно
32 balamut
 
02.08.06
15:33
(27) Так колонка пиктограам с журналов не убирается.
33 VV
 
02.08.06
15:33
30) Хочу такую картинку!
В код заходит, в отладчике смотрел
  Если Число(ном) = 4 Тогда
    Если ТекущийДокумент.Вид() = "РеализацияОптом" Тогда
      ном = 1;
    Иначе
      ном = 0;
    КонецЕсли;
  КонецЕсли;
но ни фига нет пиктограмм. Потрать еще несколько минут, что я не так сделал?
34 Uho
 
02.08.06
15:37
(32) убирается
35 АЛьФ
 
02.08.06
15:38
2(33) Давай с начала и по шагам:
1. Добавляешь в библиотеку картинок картинку с пиктограммами. В соответствии с описанием из документации 1С (см. цитату в (19)).
2. Задаешь ей идентификатор. Например, "Документы".
3. Пишешь свой код из (18) с поправками из (33)
36 balamut
 
02.08.06
15:40
(34) Как?
37 АЛьФ
 
02.08.06
15:46
2(34) При использовании ВК не убирается.
38 balamut
 
02.08.06
15:52
В конфигураторе недает удалить колонку с пиктограммой.
А причем к удалению может быть ВК?
39 Uho
 
02.08.06
15:55
(37) balamut не про ВК спрашивал
(38) ну, подумай, как еще можно убрать колонку? :)
40 balamut
 
02.08.06
15:59
В конфигураторе не вижу как еще.
Невидимой недается. Сузить до минимума, это не убрать.
Как еще? Чтото нет соображений.
41 Uho
 
02.08.06
16:02
(40) программно
42 balamut
 
02.08.06
16:04
Я имел ввиду в конфигураторе.
43 АЛьФ
 
02.08.06
16:05
2(41) Можешь привести цитату из документации, как это сделать? :)))
44 ЙоханСон
 
02.08.06
16:08
Форма.Пиктограмма.Видимость(0)
и не будет пктограммы в журнале
45 VV
 
02.08.06
16:09
Мешалась картинка, которой задал идентификатор Документы и никак не смог его поменять. Удалил ее - сменило картинку в журнале, тормозит жутко. Но 1 и 0 не понимает - везде одна картинка.
46 Uho
 
02.08.06
16:09
(43)
"Метод Видимость позволяет установить режим отображения выбранного элемента формы или колонки многострочной части формы."
:))
47 АЛьФ
 
02.08.06
16:12
2(44)(46) Про элемент диалога "Пиктограмма" где можно почитать?
48 Uho
 
02.08.06
16:13
(47) это обычный идентификатор колонки многострочной части
49 АЛьФ
 
02.08.06
16:17
2(48) Обычный? Точно?
50 Uho
 
02.08.06
16:18
(49) это идентификатор колонки многострочной части
51 АЛьФ
 
02.08.06
16:19
2(50) Он задается пользователем? Его можно сменить? Где вообще о нем написано?
52 VV
 
02.08.06
16:21
Я вам не мешаю здесь? Как научить 1 и 0 понимать?
53 Uho
 
02.08.06
16:30
(51) нет, но это не значит, что к этой колонке нельзя применить Видимость
54 АЛьФ
 
02.08.06
16:31
2(52) Нет, не мешаешь :)
Посмотри отладчиком заходит ли он вообще в твою ветку условия. Не забывай, что если ты не меняешь "ном", то он остается таким, каким задан системой и будет попытка получить пиктограмму с этим номером из установленной тобой картинки.
55 VV
 
02.08.06
16:37
да, не зря в прошлом веке придумали отладчик. Условие мешало:
  //Если Число(ном) = 4 Тогда
    Если ТекущийДокумент.Вид() = "РеализацияОптом" Тогда
      ном = 1;
    Иначе
      ном = 0;
    КонецЕсли;
  //КонецЕсли;
Все работает, Алексей, спасибо за терпение!
56 АЛьФ
 
02.08.06
16:42
2(53) С чего ты взял? А метод Доступность можно к нему применить? А остальные методы? Где вообще о нем написано?
57 balamut
 
02.08.06
17:24
Альф, Вы еще тут? Можете ли разяснить мне, как работает метод ФиксироватьМногострочнуюЧасть(КолКолонок), если в ТЧ есть колонки, у которых видимость()=0. У меня след проблемка. В документе много колонок. Видимость их устанавливается флажками. На форму повесил реквизит диалога КолФиксКолонок и 2 кнопочки на уменьшение и увеличение значения данного реквизита. В функции СостояниеФормы()(вызов которой забит в невидимом текстовом поле)обрабатывается значение КолФиксКолонок и в ТЧ визуально фиксируется данное количество колонок. В функции анализирую сколько колонок невидимо и реально фиксирую с учетом невидимых колонок то количество, чтобы визуально было зафиксированно КолФиксКолонок видимых колонок. Все работает, но при некоторых комбинациях количество зафиксированных колонок не увеличивается или увеличивается сразу на 2.
И ошибка не в определении количества колонок, сколько надо зафиксировать, отладчиком проходил-получал ФиксироватьМногострочнуюЧасть(3), но фиксируется только две колонки (к примеру).
Не подскажите, в чем может быть дело?
58 АЛьФ
 
02.08.06
17:34
2(57) Вот весь код этого метода:
case methFixBrowse:
{
  CGetDoc7* pDoc = (CGetDoc7*)m_Form->m_GetDoc;
  if(pDoc->HasBrowse())
  {
    CBrowse *pBrowse = ((CGetDoc*)pDoc)->GetBrowse();
    if(pBrowse) pBrowse->FixHorz(ppValue[0]->GetNumeric());
    else pBkEndUI->DoMessageLine("Окно многострочной части еще не создано.",mmRedErr);
  }
  else
    pBkEndUI->DoMessageLine("Форма не имеет многострочной части.",mmRedErr);
  break;
}
Видно, что я просто вызываю метод самой таблицы для фиксации. Как дальше 1С это все отрабатывает для меня самого загадка.
59 balamut
 
02.08.06
17:55
Спасибо