Переключение на Главную Страницу Страницы: 1 ... 3 4 [5] 6  ОтправитьПечать
Очень популярная тема (более 25 ответов) Вопрос по ТП (число прочтений - 16091 )
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Вопрос по ТП
Ответ #60 - 08. Сентября 2010 :: 14:44
Печать  
Neo писал(а) 08. Сентября 2010 :: 14:18:
Ну и как тогда быть?  Улыбка

например сделай через ОбработкаОжидания
  
Наверх
 
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3051
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Вопрос по ТП
Ответ #61 - 08. Сентября 2010 :: 15:04
Печать  
читайте про ФормаПриСоздании
  

1&&2&&3
Наверх
 
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Вопрос по ТП
Ответ #62 - 08. Сентября 2010 :: 15:22
Печать  
Все можно сделать, используя только 1С++ (правда привязок ты не поимеешь). Читать здесь
Примерно так должно получиться:
Код
Выбрать все
Процедура ПриОткрытии()
  _Форма = СоздатьОбъект("Форма");
  _Форма.УстановитьФорму(Форма);
КонецПроцедуры

Процедура ФормаПриСоздании(_Ф)
  ОбъектТП = _Ф.СоздатьЭлементУправления("ТабличноеПоле", ИдентификаторЭлементаДиалога)
КонецПроцедуры 


  
Наверх
 
IP записан
 
Neo
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 327
Зарегистрирован: 12. Ноября 2007
Re: Вопрос по ТП
Ответ #63 - 09. Сентября 2010 :: 13:52
Печать  
Всем спасибо, получилось))

Прикрутил в рабочей базе простенький пример, вот только почему-то стандартная форма списка работает чуть побыстрее, тем на ТП. Пробовал на справочнике контрагенты, примерно 40000 элементов.

Код такой:

=========================================

 ОбъектТП = _Ф.СоздатьЭлементУправления("ТабличноеПоле", "кнТаблица_");
 
 Колонка = ОбъектТП.Колонки.Добавить("Код");
 Колонка.Заголовок = "Код";
 Колонка.Данные = "Код";
 
 Колонка = ОбъектТП.Колонки.Добавить("Наименование");
 Колонка.Заголовок = "Наименование";
 Колонка.Данные = "Наименование";
 
     оПоставщикДанных=СоздатьОбъект("ПоставщикДанныхODBC.MSSQL");
     оПоставщикДанных.БазаДанных=СоздатьОбъект("ODBCDataBase");
оПоставщикДанных.БазаДанных.Присоеденить1С();
Если оПоставщикДанных.БазаДанных.ЕстьСоединение()=0 Тогда
Предупреждение("Нет ODBC соединения!");
Возврат;
КонецЕсли;

     ТекстЗапроса = "
     |SELECT
     |спр.code as Код,
     |спр.descr as [Наименование]
     |FROM $Справочник.Контрагенты as спр (nolock)
     |";

     оПоставщикДанных.УстТекстЗапроса(ТекстЗапроса);
     оПоставщикДанных.УстКлючПорядка("Наименование");
     
     ОбъектТП.ПоставщикДанных=оПоставщикДанных;
     ОбъектТП.ОбновитьСтроки();
     
     // быстрый поиск
     ОбъектТП.ПоставщикДанных.Поля.Получить("Наименование").ТипБыстрогоПоиска = 1;
     
     ОбъектТП.АвтоШирина();
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Вопрос по ТП
Ответ #64 - 09. Сентября 2010 :: 14:04
Печать  
закоментарь строки
т.е вот так ( а то у тебя создается лишний конект )

     //оПоставщикДанных.БазаДанных.Присоеденить1С();
     //Если оПоставщикДанных.БазаДанных.ЕстьСоединение()=0 Тогда
     //      Предупреждение("Нет ODBC соединения!");
     //      Возврат;
     //КонецЕсли;

  
Наверх
 
IP записан
 
Neo
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 327
Зарегистрирован: 12. Ноября 2007
Re: Вопрос по ТП
Ответ #65 - 09. Сентября 2010 :: 14:10
Печать  
Так же...

На ТП перед быстрым поиском идет задержка на пару секунд. А в стандартой форме все моментально ищется
  
Наверх
 
IP записан
 
Neo
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 327
Зарегистрирован: 12. Ноября 2007
Re: Вопрос по ТП
Ответ #66 - 09. Сентября 2010 :: 14:13
Печать  
Причем задержка есть даже на справочнике в 5 элементов  Улыбка Не принципильно конечно, т.к. задержка маленькая (1-2 с), но стандартная форма отрабатывает моментально. Может, эта такая особенность работы ТП?
  
Наверх
 
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Вопрос по ТП
Ответ #67 - 09. Сентября 2010 :: 14:57
Печать  
  
Наверх
 
IP записан
 
Neo
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 327
Зарегистрирован: 12. Ноября 2007
Re: Вопрос по ТП
Ответ #68 - 10. Сентября 2010 :: 10:29
Печать  
А если специально не обновлять данные, то при работе с ТП не происходит обращений к базе, а данные берутся из какого-то временного объекта?
  
Наверх
 
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Вопрос по ТП
Ответ #69 - 10. Сентября 2010 :: 10:45
Печать  
Может сначала документацию почитаешь, а? Подмигивание
Конкретно по этому вопросу: http://www.1cpp.ru/docum/icpp/html/TableField.html#refreshtimeout
  
Наверх
 
IP записан
 
Neo
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 327
Зарегистрирован: 12. Ноября 2007
Re: Вопрос по ТП
Ответ #70 - 10. Сентября 2010 :: 10:59
Печать  
Ну, там же не указано, что стоит по умолчанию. О том, что есть возможность обновлять, я в курсе. Просто было интересно, каким образом берутся данные при настройках по умолчанию... а потом уже пробовать играть настройками
  
Наверх
 
IP записан
 
Neo
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 327
Зарегистрирован: 12. Ноября 2007
Re: Вопрос по ТП
Ответ #71 - 10. Сентября 2010 :: 14:04
Печать  
Игры с таймаутом действительно помогли. Чем меньше ТаймаутБыстрогоПоиска, тем быстрее ищет  Улыбка
  
Наверх
 
IP записан
 
Neo
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 327
Зарегистрирован: 12. Ноября 2007
Re: Вопрос по ТП
Ответ #72 - 10. Сентября 2010 :: 14:08
Печать  
А почему в доке не указаны значения по умолчанию? Например, ТаймаутБыстрогоПоиска видимо был по умолчанию порядка 1000 или даже больше...

И чем руководствоваться при установке параметров? Например, если поставить минимальный таймаут =1, то при этом будет большая нагрузка на ресурсы компа или нет?
  
Наверх
 
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Вопрос по ТП
Ответ #73 - 10. Сентября 2010 :: 16:42
Печать  
Neo писал(а) 10. Сентября 2010 :: 14:08:
А почему в доке не указаны значения по умолчанию? Например, ТаймаутБыстрогоПоиска видимо был по умолчанию порядка 1000 или даже больше...

Опять-таки выдержки из документации:
Цитата:
ТаймаутБыстрогоПоиска / QuickSearchTimeout

Доступ: чтение и запись.

Что мешает посмотреть значение этого атрибута до установки?
  
Наверх
 
IP записан
 
Neo
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 327
Зарегистрирован: 12. Ноября 2007
Re: Вопрос по ТП
Ответ #74 - 13. Сентября 2010 :: 08:16
Печать  
Цитата:
Что мешает посмотреть значение этого атрибута до установки?


Да ничто собственно не мешает. Просто не очень удобно. Представляешь, если бы по каждому методу в каком-нибудь языке программирования приходилось бы вначале самому выяснять методом научного тыка, какое там значение по умолчанию. И при изучении так намного понятней, если заранее знаешь, каково поведение объекта по умолчанию.  
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: 1 ... 3 4 [5] 6 
ОтправитьПечать