Имя: Пароль:
1C
1C 7.7
v7: в ТП нет горизонтального скролинга?
0 monsterZE
 
24.12.12
17:09
сабж
1 Ёпрст
 
24.12.12
17:10
есть
2 Mikeware
 
24.12.12
17:18
Есть, если нужно
3 monsterZE
 
24.12.12
17:22
у меня чет все время колонки к общему размеру ТП масштабирует.. =\
4 Ёпрст
 
24.12.12
17:22
автоширину поди используешь?
5 monsterZE
 
24.12.12
17:23
(4) пробывал и авто и так задавал
6 monsterZE
 
24.12.12
17:29
ВертСкроллер в мануале явно обозначен, а про горизонтальный ни слова.. руками проставляю ширину колонок - подгоняет под общий размер
7 Ёпрст
 
24.12.12
17:40
установи автоширина у тп в 0 и выстави ширина у каждой колонки ручонками
8 monsterZE
 
24.12.12
17:45
(7) так вроде у автоширины тп нет параметров?
9 monsterZE
 
25.12.12
13:45
вобщем наоборот - гор.скроллекр появился когда добавил

ТП.ОбновитьСтроки();    
ТП.АвтоШирина();
10 monsterZE
 
25.12.12
14:10
для использования быстроко поиска нужны какие-то телодвижения?
таймаут отличный от нуля - не фунциклирует
11 antoneus
 
25.12.12
14:43
Поставщик данных какой?
12 palpetrovich
 
25.12.12
14:46
че-т туплю, а что такое ТП в v7?
13 monsterZE
 
25.12.12
14:48
(12) ТП - ТабличноеПоле
(11)
   Источник            = СоздатьОбъект("ODBCDataProvider.MSSQL");
   Источник.БазаДанных = СоздатьОбъект("ODBCDataBase");
   Источник.БазаДанных.Присоеденить1С();
   ТП.ПоставщикДанных = Источник;
14 palpetrovich
 
25.12.12
14:50
(13) а, 1С++, спасибо
15 antoneus
 
25.12.12
14:52
Поле = Источник.Поля.<ИмяПоляДляПоиска>;
Поле.ТипБыстрогоПоиска = 1;

и Присоеденить1С необязательно, ODBCdatabase создается уже подключенная.
16 monsterZE
 
25.12.12
15:13
(15) искать может только в полях в УстКлючПорядка?
17 monsterZE
 
25.12.12
15:26
(15) вобще, где про это читать?
.Поля
.ТипБыстрогоПоиска
--
листаю док по ПоставщикДанных
по поиску ничего подобного не находит..??
18 antoneus
 
25.12.12
15:42
19 monsterZE
 
25.12.12
16:11
--
ТП.ПоставщикДанных = Источник;
ТП.ОбновитьСтроки();    
ТП.ПоставщикДанных.Поля.ИмяПоляДляПоиска.ТипБыстрогоПоиска = 1;
20 monsterZE
 
26.12.12
16:37
надо мне по дабл-клику открыть форму документа:
в ТабличноеПолеВыбор()
делаю Сообщить(ТП.ТекущиеДанные.Получить("Док"));
поле Док - ссылка на документ
при добавлении в колонки ТП попросило добавить еще и Док_вид
ладно, добавил
мне на ТП его не нужно отображать - сделал Колонка.Видимость = 0;
теперь его значение невозможно получить в ТП.ТекущиеДанные.Получить("Док") ???
21 antoneus
 
26.12.12
16:54
Колонку добавлять необязательно, добавь поле в поставщике

Поле = Источник.Поля.Добавить("Док");
Поле.АвтоУдаление = 0;

в текущих данных поимеешь свой док.
22 monsterZE
 
26.12.12
17:01
(21) спасибо!
@#$ и как я про это должен был догадаться? =)
23 monsterZE
 
26.12.12
17:03
к (21) это типа поля указанные в запросе, но не отраженные в ТП в поставщике данных не остаются?
24 antoneus
 
26.12.12
17:08
(23) типа того
25 antoneus
 
26.12.12
17:08
ну, кроме ключа порядка и ид поля
26 monsterZE
 
26.12.12
17:18
еще такая весч
есть у ТП автообновление
но оно меняет текущую строку
механизм запомнил строку - передвинул курсор
при автообновлении реален? =)
27 ADirks
 
26.12.12
17:21
(26) надо ИД поле (УстИДПоле()) тщательней задавать, тогда всё будет как надо. Поле должно иметь уникальное значение в рамках всего запроса.
28 ADirks
 
26.12.12
17:24
кстати, документация по 1С++, и т.ч. ТП есть здесь http://www.1cpp.ru/forum/YaBB.pl?num=1303385763
Лучше брать chm - она наиболее полна, в als есть далеко не всё
29 monsterZE
 
26.12.12
17:27
(27) ясно
(28) спасибо, забрал
документация это хорошо, но без примеров тяжело воспринимается..
30 ADirks
 
26.12.12
17:38
(29) доку писали сами разработчики, а им примеры ни к чему, сам понимаешь :)
31 monsterZE
 
26.12.12
17:44
Источник.УстТекстЗапроса(ТекстЗапроса);
Источник.УстКлючПорядка("ДатаДок,ВремяДок");
Источник.УстИДПоле("УнкИД");

|    ,Жур.IDDoc as УнкИД

все равно строчку на первую скидывает..?
32 monsterZE
 
26.12.12
17:47
столбец должен присутствовать в тп?
33 monsterZE
 
26.12.12
17:54
чет пробывал на разных =) результат один
34 ADirks
 
26.12.12
17:56
а (ДатаДок,ВремяДок) тоже уникально?
35 monsterZE
 
26.12.12
18:03
теоретически - да
в пределах одного вида документа
но у меня таких (видов) в выборке несколько
36 monsterZE
 
26.12.12
18:07
а ИДДок уникально только в пределах одного вида?
37 ADirks
 
26.12.12
18:08
А должно быть уникальным. Сделай лучше Date_Time_IDDoc

а ещё из-за неуникальности ключа порядка ТП может 1С ронять
38 antoneus
 
27.12.12
10:01
(37) нет
39 monsterZE
 
27.12.12
10:41
поменял на
|    ,Жур.Date_Time_IDDoc as УнкИД

ничего не изменилось
может не там вставлен кусок?
   Источник.УстановитьТекстовыйПараметр("НачДата",   НачДата);
   Источник.УстановитьТекстовыйПараметр("КонДата",   КонДата);
   Источник.УстановитьТекстовыйПараметр("ВыбКлиент", ВыбКлиент);
   Источник.УстТекстЗапроса(ТекстЗапроса);
   Источник.УстКлючПорядка("ДатаДок,ВремяДок");
     Источник.УстИДПоле("УнкИД");
   
   Поле = Источник.Поля.Добавить("Док");
   Поле.АвтоУдаление = 0;
   Поле = Источник.Поля.Добавить("Док_вид");
   Поле.АвтоУдаление = 0;
   Поле = Источник.Поля.Добавить("УнкИД");
   Поле.АвтоУдаление = 0;
   
   ТП.ПоставщикДанных = Источник;
   ТП.ОбновитьСтроки();
40 monsterZE
 
27.12.12
10:51
(38) это ты к 36? =)
41 antoneus
 
27.12.12
10:55
(40) ага
42 antoneus
 
27.12.12
11:08
попробуй

УстИдПоле("Док");
УстКлючПорядка("УнкИд");
43 antoneus
 
27.12.12
11:09
Док - iddoc, УнкИд - date_time_iddoc
44 monsterZE
 
27.12.12
11:10
э... а может это происходить из-за пересоздания ТП ? =)
а то просто пока тренировался все в одной процедуре было
   лФорма=СоздатьОбъект("Форма");
   лФорма.УстановитьФорму(Форма);
   ТП = лФорма.СоздатьЭлементУправления("ТабличноеПоле","ТабличноеПоле");

   ТП.СтильЗаголовков         = 0;
   ТП.СтильАктивногоЗаголовка = 0;
...
45 monsterZE
 
27.12.12
11:11
(44) да ну не
46 monsterZE
 
27.12.12
11:14
(42) так работает
47 monsterZE
 
27.12.12
11:15
у меня стояло
Источник.УстКлючПорядка("ДатаДок,ВремяДок");
48 monsterZE
 
27.12.12
11:16
мля.. уже постил же =))
(42) спасибо!
49 trad
 
27.12.12
11:21
при написании журналов обычно делают так:
|    ,Жур.Date_Time_IDDoc as Позиция
|    ,Жур.IDDoc as УнкИД
Источник.УстКлючПорядка("Позиция");
Источник.УстИДПоле("УнкИД");
50 trad
 
27.12.12
11:23
а, ну да, в (42) тоже самое написано
51 monsterZE
 
27.12.12
11:47
крутобл =) привязочки прикрутил..
осталось конт.меню переделать (пока от формекса) ну и еще по мелочи старые проци переписать..
52 Ёпрст
 
27.12.12
11:48
(51) проще взять готовый класс - там и контекстное меню есть и панель струментов и всякие "положение колонки на след. строке, вместе со следующими и т.д"
53 Ёпрст
 
27.12.12
11:48
и писать ничего особо не надо
54 monsterZE
 
27.12.12
11:56
(53) так все уже написано.. =) я же просто с обычной ТЗ переделываю.. без излишеств, но все, что надо - есть.

но полюбопытствую про ссылку на готовый класс =)
а так - полистываю репозитарий на 1спп
55 Ёпрст
 
27.12.12
11:57
(54) там пофик кто является поставщиком - прямой запрос или тз, или итз..
56 Ёпрст
 
27.12.12
11:57
57 Ёпрст
 
27.12.12
11:58
ну и примеры там тоже валяются
58 monsterZE
 
27.12.12
13:14
хм.. вот еще че =)
мое контекстное меню правильно позиционируется только при нажатии правой кнопки мыши.. а оно еще может вызываться по вин-кнопке и тогда позиционируется, считая ТП кнопкой =)
вроде попробывал сам вызывать процедуру.. но не помогло. можно, не?

ИначеЕсли КодКлавиши=93 Тогда // WIN-PROP
   ТСтрока  = ТП.ТекущаяСтрока;
   ТКолонка = ТП.ТекущаяКолонка;
   ТТипРегиона = 3;
   ТабличноеПолеПриКонтекстномМеню(ТТипРегиона, ТКолонка, ТСтрока);
59 Ёпрст
 
27.12.12
13:17
на дюнаврап пользуй меню..
60 Ёпрст
 
27.12.12
13:17
там нет болезни такой
61 antoneus
 
27.12.12
13:48
(58) в формексе объект Сервис метод ВыбратьЗначение кури
62 antoneus
 
27.12.12
13:48
а, недочитал