arefaste/1C_Forums huggingface dataset:
Основная таблица документа порушилась, пробую обратно собрать документ из журнала и движений.
При создании документа использую указанную в движениях старую ссылку.
Всё нормально, но при записи получаю ошибку:
Ошибка при вызове метода контекста (Записать): Попытка вставки неуникального значения в уникальный индекс:
Microsoft SQL Server Native Client 10.0: Cannot ins ert duplicate key row in object 'dbo._DocumentJournal3690' with unique index '_Docume3690_ByDoc_R'. The duplicate key val ue is (0x000000d2, 0xbb7f0026186306fc11e4ecb1537f7aec).
HRESULT=80040E2F, SQLSrvr: SQLSTATE=23000, state=1, Severity=E, native=2601, line=1

Немного не догоняю такое поведение. Ведь у меня новый документ имеет абсолютно те же параметры, что и старый. Почему система не принимает его за старый?
Как обойти эту ошибку?
Можно конечно в лоб: Через T-SQL произвести удаление из таблицы журнала документов, но правильно ли это? Можно ли переиндексировать журнал документов средствами 1с?
---
я не пользовался обслуживанием индексов.
Это ж вроде просто.
---
если все-таки пеняете на SQL, то пересчет индексов по отдельной таблице спасет
---
Это совсем просто, о друг мой!

Вы взяли и установили запрос как источник данных динамического списка. Так вот там в запросе у Вас левое соединение добавляет повторных документов или вообще не стоит основная таблица.
---
Догнать-то его поведение немудрено: вставка неуникального значения, о чём он и пишет. Тут было бы странно, будь оно как-то иначе.
Либо T-SQL, либо Тестирование и исправление. Кстати, а почему не сразу Тестирование и исправление с флажком "Создавать отсутствующие объекты"?
---
vasyak319, ТИИ с такими настройками в РИБ? это же как рак.
В любой ПБ бывает такое, что просачиваются частичные данные другой ПБ, если оно их заполнит, то они в результате перетрут реальные данные той ПБ.
Удивляет, то что не должно было быть вставки новой записи в журнал документов - объект у меня практически клонирован.
Разве что ВерсияДанных(timestamp) объекта в журнале документов тоже присутствует как индекс.

(4) как сделать пересчет индексов в отдельно взятой таблице? ОбслуживаниеИндексов.sql от speshuric-а поможет?
---
declare @tablename as varchar(max)='_DocumentJournal3690'

DBCC DBREINDEX (@tablename)
---
ture, спасибо!
времени не хватает читать :)
Оказывается я в спешке забыл, что мне эти журналы и их индексы вообще ни к чёрту - главное набить объектов и выгрузить из ИБ-донора. Ведь журнал документов это вспомогательная, не основная подсистема.
---
я не пользовался обслуживанием индексов.
Это ж вроде просто.
---
тип перепутал. теперь все поправил
---
Вот это может помочь, если не ошибаюсь: http://infostart.ru/public/197614/
Правда придется модифицировать немного, так как эта обработка приводит журнал в соответствие с документами, а не наоборот
---
Fragster, да, для живой ИБ - то что надо. Но (9)
Как выбрать данные из двух таблиц, удовлетворяющие определенному условию?
---
```1c
    ВЫБРАТЬ
    ЗаказыПокупателейОстатки.Номенклатура,
    ЗаказыПокупателейОстатки.КоличествоОстаток КАК ЗаказаноПокупателями,
    ЗаказыПоставщикамОстатки.КоличествоОстаток КАК ЗаказаноПоставщикам
    ИЗ
    РегистрНакопления.ЗаказыПокупателей.Остатки(&ДатаОтч) КАК ЗаказыПокупателейОстатки
    ВНУТРЕННЕЕ СОЕДИНЕНИЕ
    РегистрНакопления.ЗаказыПоставщикам.Остатки(&ДатаОтч) КАК ЗаказыПоставщикамОстатки
    ПО
    ЗаказыПокупателейОстатки.Номенклатура = ЗаказыПоставщикамОстатки.Номенклатура
```
---
```1c
    ВЫБРАТЬ
    ЗаказыПокупателейОстатки.Номенклатура,
    ЗаказыПокупателейОстатки.КоличествоОстаток КАК ЗаказаноПокупателями,
    ЗаказыПоставщикамОстатки.КоличествоОстаток КАК ЗаказаноПоставщикам
    ИЗ
    РегистрНакопления.ЗаказыПокупателей.Остатки(&ДатаОтч) КАК ЗаказыПокупателейОстатки
    ВНУТРЕННЕЕ СОЕДИНЕНИЕ
    РегистрНакопления.ЗаказыПоставщикам.Остатки(&ДатаОтч) КАК ЗаказыПоставщикамОстатки
    ПО
    ЗаказыПокупателейОстатки.Номенклатура = ЗаказыПоставщикамОстатки.Номенклатура
```
Как вместе с данными некоторой таблицы получить общие итоги из этой же таблицы?
---
```1c
    ВЫБРАТЬ
    ПродажиОбороты.Номенклатура КАК Номенклатура,
    ПродажиОбороты.СуммаОборот КАК СуммаПродаж,
    ПродажиОбороты.СуммаОборот / СовокупныеОбороты.СуммаОборот * 100 КАК ПроцентнаяДоля
    ИЗ
    РегистрНакопления.Продажи.Обороты(&ДатаНач, &ДатаКон) КАК ПродажиОбороты
    ВНУТРЕННЕЕ СОЕДИНЕНИЕ
    РегистрНакопления.Продажи.Обороты(&ДатаНач, &ДатаКон) КАК СовокупныеОбороты
    ПО
    ИСТИНА
    УПОРЯДОЧИТЬ ПО
    ПроцентнаяДоля УБЫВ
```
---
```1c
    ВЫБРАТЬ
    ПродажиОбороты.Номенклатура КАК Номенклатура,
    ПродажиОбороты.СуммаОборот КАК СуммаПродаж,
    ПродажиОбороты.СуммаОборот / СовокупныеОбороты.СуммаОборот * 100 КАК ПроцентнаяДоля
    ИЗ
    РегистрНакопления.Продажи.Обороты(&ДатаНач, &ДатаКон) КАК ПродажиОбороты
    ВНУТРЕННЕЕ СОЕДИНЕНИЕ
    РегистрНакопления.Продажи.Обороты(&ДатаНач, &ДатаКон) КАК СовокупныеОбороты
    ПО
    ИСТИНА
    УПОРЯДОЧИТЬ ПО
    ПроцентнаяДоля УБЫВ
```
Хочу подчиненную форму "приклеить" к форме-владельцу, но оно "клеится" не правильно - на форму ниже. Смотрите картинку:

Мой код всего этого действа:

... и взлетает с зафихрениями.
Ткните в строчку, что бы подчиненная форма "склеилась" как надо.
---
ikar-nikolay, во-первых, там же Сложенные окна с закладками, а во-вторых, был не прав. А вот это верно:
ручками (через шифт) соединить и это соединение запомнится в настройках...
Т. е. фактически я программно создал два свободных соединяемых окна, а потом интерактивно их соединил. При следующем исполнении кода эти окна открылись в предыдущем состоянии. Такие дела...
---
ikar-nikolay, нет такого. Разверните форму-владельца на весь экран и визуально получите то, что хотите.
---
PetroP, тогда не понимаю, что за откровенное надувательство тут, стрелка "склеенные окна"?
---
ikar-nikolay, Хочу подчиненную форму "приклеить" к форме-владельцуА откуда вы придумали, что в 1С можно управлять формами и их положением на экране?
---
Так это два свободных окна. У вас же на скрине только одно из них.
---
PetroP, ну тогда логичный вопрос - как "склеить" два свободных? Попробую просто назначить подчиненную форму свободной...

...
Сделал свободным и второе окно - оно отвязалось от края и появилось по центру, но не приклеенное ни на миллиметр. :(((
---
ikar-nikolay, как "склеить" два свободных? Никак, или свободные, или рядом.
В 1С нельзя работать с формами, как вам хочется.
---
AlexO, я спросил мнение экспертов, что бы не искать несуществующего метода... сам такого в книгах не встречал...

Нашел в справке:
Для окон в режиме размещения Свободное доступна установка соединения окон. Если для пары окон, находящихся в одинаковом состоянии, установлено свойство Соединяемое (в контекстном меню заголовка окна), то данные окна могут соединяться. Чтобы соединить окна, находящиеся в состоянии Обычное с установленным свойством Свободное, требуется при их перемещении нажать клавишу Shift. Для соединенных окон также можно устанавливать способность соединяться с другими окнами.

Теоретически можно сделать обе формы свободными и соединяемыми, ручками (через шифт) соединить и это соединение запомнится в настройках...

Спасибо, всем откликнувшимся!!!
---
ikar-nikolay, да, покрутил-повертел, "склеить" программно не удалось - только соединить в одно окно с закладками.
---
PetroP, это как? можно скрин и код? Мне кажется, что это будет поудобнее, чем вариант с боковой панелью...
---
ikar-nikolay, во-первых, там же Сложенные окна с закладками, а во-вторых, был не прав. А вот это верно:
ручками (через шифт) соединить и это соединение запомнится в настройках...
Т. е. фактически я программно создал два свободных соединяемых окна, а потом интерактивно их соединил. При следующем исполнении кода эти окна открылись в предыдущем состоянии. Такие дела...
---
PetroP, это-то понятно... спасибки за помощь. Оставляю первоначальный вариант, т.к. документов много для "сливательных" действий.
---
... или подскажите код раскрытия на весь экран, что б как-будто щелкнул на кнопке "развернуть", а не так, что даже меню не видно... это я про свойство - рабочий стол.
Как определить количество документов и количество разных значений реквизита в таблице записей документа?
---
```1c
    ВЫБРАТЬ
    КОЛИЧЕСТВО(РегистрацияПростоевВОрганизации.Ссылка) КАК Случаев,
    КОЛИЧЕСТВО(РАЗЛИЧНЫЕ РегистрацияПростоевВОрганизации.ФизЛицо) КАК Работников
    ИЗ
    Документ.РегистрацияПростоевВОрганизации КАК РегистрацияПростоевВОрганизации
    ГДЕ
    РегистрацияПростоевВОрганизации.Проведен
```
---
```1c
    ВЫБРАТЬ
    КОЛИЧЕСТВО(РегистрацияПростоевВОрганизации.Ссылка) КАК Случаев,
    КОЛИЧЕСТВО(РАЗЛИЧНЫЕ РегистрацияПростоевВОрганизации.ФизЛицо) КАК Работников
    ИЗ
    Документ.РегистрацияПростоевВОрганизации КАК РегистрацияПростоевВОрганизации
    ГДЕ
    РегистрацияПростоевВОрганизации.Проведен
```
1С:Предприятие 8.3 Управление торговлей, редакция 11.1 .
В программе созданы два вида цен "Розничная", которая устанавливается в ручную для товаров и "Дилерская", которая рассчитывается на основе розничной путем вычитания определенного процента из величины розничной. При формировании заказа покупателя в нем указываются товары, которые должны продаваться по цене "Дилерская", а часть по цене розничная. Но заказ можно оформить только по одному типу цен. Как сделать так, чтобы в одном заказе по одним товарам цена была розничная, а по другим дилерская?
---
KAtrin1C, начать можно с простого ручного редактирования: УТ 11 позволяет в разных строках заказа использовать разные цены.
Лучше использовать уточнения по ценовым группам в соглашениях:
1. создаете ценовые группы
2. Определяете их для номенклатуры
3. Создаете соглашение с клиентом или типовое и в нем уточнения по ценовым группам
---
KAtrin1C, начать можно с простого ручного редактирования: УТ 11 позволяет в разных строках заказа использовать разные цены.
Лучше использовать уточнения по ценовым группам в соглашениях:
1. создаете ценовые группы
2. Определяете их для номенклатуры
3. Создаете соглашение с клиентом или типовое и в нем уточнения по ценовым группам
---
KAtrin1C, Как сделать так, чтобы в одном заказе по одним товарам цена была розничная, а по другим дилерская?
В соглашении/ договоре очистить поле "вид цен", тогда вы сможете указывать в создаваемом документе для каждой строки свой виды цен.

Либо, как заметили выше, задействовать в соглашениях ценовые группы.
---
Ап
---
почему бы не использовать скидки?
---
Как же мы любим усложнять себе жизнь =)
Пытаюсь найти как вызвать форму выбора документов расчетов с контрагентами в 1с8 Бухгалтерии 3. Эту форму можно увидеть например при выборе 3го субконто(документ расчетов с контрагентами) в операции введенной вручную. Как бы ее вызвать из своей обработки?!
---
```1c
    СтруктураПараметров = Новый Структура;
    СтруктураПараметров.Вставить("Организация", ТвояОрганизация);
    СтруктураПараметров.Вставить("Контрагент", ТвойКонтрагент);
    // другие необходимые параметры...

    ПараметрыФормы = Новый Структура("ПараметрыОбъекта", СтруктураПараметров);
    ОткрытьФорму("Документ.ДокументРасчетовСКонтрагентом.ФормаВыбора", ПараметрыФормы);
```
---
```1c
    СтруктураПараметров = Новый Структура;
    СтруктураПараметров.Вставить("Организация", ТвояОрганизация);
    СтруктураПараметров.Вставить("Контрагент", ТвойКонтрагент);
    // другие необходимые параметры...

    ПараметрыФормы = Новый Структура("ПараметрыОбъекта", СтруктураПараметров);
    ОткрытьФорму("Документ.ДокументРасчетовСКонтрагентом.ФормаВыбора", ПараметрыФормы);
```
Как проверить достаточность остатков товаров на складах, указанных в документе?
---
```1c
    ВЫБРАТЬ
    ВложенныйЗапрос.Номенклатура,
    ВложенныйЗапрос.Размещение КАК Склад,
    ВложенныйЗапрос.КоличествоСписываемое,
    ТоварыНаСкладахОстатки.КоличествоОстаток
    ИЗ
    (ВЫБРАТЬ
    ВнутреннийЗаказТовары.Номенклатура КАК Номенклатура,
    ВнутреннийЗаказТовары.Размещение КАК Размещение,
    СУММА(ВнутреннийЗаказТовары.Количество *ВнутреннийЗаказТовары.Коэффициент) КАК КоличествоСписываемое
    ИЗ
    Документ.ВнутреннийЗаказ.Товары КАК ВнутреннийЗаказТовары
    ГДЕ
    ВнутреннийЗаказТовары.Ссылка = &Ссылка
    СГРУППИРОВАТЬ ПО
    ВнутреннийЗаказТовары.Номенклатура,
    ВнутреннийЗаказТовары.Размещение
    ) КАК ВложенныйЗапрос
    ЛЕВОЕ СОЕДИНЕНИЕ
    РегистрНакопления.ТоварыНаСкладах.Остатки(&МоментВремениДокумента,
    Склад В (ВЫБРАТЬ РАЗЛИЧНЫЕ
    ВЫРАЗИТЬ(ВнутреннийЗаказТоварыДляОтбора.Размещение КАК Справочник.Склады)
    ИЗ
    Документ.ВнутреннийЗаказ.Товары КАК ВнутреннийЗаказТоварыДляОтбора
    ГДЕ
    ВнутреннийЗаказТоварыДляОтбора.Ссылка = &Ссылка
    И
    НЕ ВЫРАЗИТЬ(ВнутреннийЗаказТоварыДляОтбора.Размещение КАК Справочник.Склады) ЕСТЬ NULL )
    И
    Номенклатура В (ВЫБРАТЬ РАЗЛИЧНЫЕ
    ВнутреннийЗаказТоварыДляОтбора.Номенклатура
    ИЗ
    Документ.ВнутреннийЗаказ.Товары КАК ВнутреннийЗаказТоварыДляОтбора
    ГДЕ
    ВнутреннийЗаказТоварыДляОтбора.Ссылка = &Ссылка)) КАК ТоварыНаСкладахОстатки
    ПО
    ВложенныйЗапрос.Номенклатура = ТоварыНаСкладахОстатки.Номенклатура И ВложенныйЗапрос.Размещение = ТоварыНаСкладахОстатки.Склад
```
---
```1c
    ВЫБРАТЬ
    ВложенныйЗапрос.Номенклатура,
    ВложенныйЗапрос.Размещение КАК Склад,
    ВложенныйЗапрос.КоличествоСписываемое,
    ТоварыНаСкладахОстатки.КоличествоОстаток
    ИЗ
    (ВЫБРАТЬ
    ВнутреннийЗаказТовары.Номенклатура КАК Номенклатура,
    ВнутреннийЗаказТовары.Размещение КАК Размещение,
    СУММА(ВнутреннийЗаказТовары.Количество *ВнутреннийЗаказТовары.Коэффициент) КАК КоличествоСписываемое
    ИЗ
    Документ.ВнутреннийЗаказ.Товары КАК ВнутреннийЗаказТовары
    ГДЕ
    ВнутреннийЗаказТовары.Ссылка = &Ссылка
    СГРУППИРОВАТЬ ПО
    ВнутреннийЗаказТовары.Номенклатура,
    ВнутреннийЗаказТовары.Размещение
    ) КАК ВложенныйЗапрос
    ЛЕВОЕ СОЕДИНЕНИЕ
    РегистрНакопления.ТоварыНаСкладах.Остатки(&МоментВремениДокумента,
    Склад В (ВЫБРАТЬ РАЗЛИЧНЫЕ
    ВЫРАЗИТЬ(ВнутреннийЗаказТоварыДляОтбора.Размещение КАК Справочник.Склады)
    ИЗ
    Документ.ВнутреннийЗаказ.Товары КАК ВнутреннийЗаказТоварыДляОтбора
    ГДЕ
    ВнутреннийЗаказТоварыДляОтбора.Ссылка = &Ссылка
    И
    НЕ ВЫРАЗИТЬ(ВнутреннийЗаказТоварыДляОтбора.Размещение КАК Справочник.Склады) ЕСТЬ NULL )
    И
    Номенклатура В (ВЫБРАТЬ РАЗЛИЧНЫЕ
    ВнутреннийЗаказТоварыДляОтбора.Номенклатура
    ИЗ
    Документ.ВнутреннийЗаказ.Товары КАК ВнутреннийЗаказТоварыДляОтбора
    ГДЕ
    ВнутреннийЗаказТоварыДляОтбора.Ссылка = &Ссылка)) КАК ТоварыНаСкладахОстатки
    ПО
    ВложенныйЗапрос.Номенклатура = ТоварыНаСкладахОстатки.Номенклатура И ВложенныйЗапрос.Размещение = ТоварыНаСкладахОстатки.Склад
```
Добрый день.
Добавил динамический реквизит на управляемую форму

```1c
    НовыйЭлементФормы = ФормаОбъекта.Элементы.Вставить(Рекв_Имя, Тип(Рекв_Тип),Рекв_Родитель,Рекв_ПередЭлементом);
```

Затем установил действие

```1c
    НовыйЭлементФормы.УстановитьДействие("НачалоВыбора","ПодключаемыйОбработчик_НачалоВыбора");
```

В форму элемента добавил код

```1c
    Процедура ПодключаемыйОбработчик_НачалоВыбора(Элемент, СтандартнаяОбработка)
    СтандартнаяОбработка = Ложь;

    Оповещение = Новый ОписаниеОповещения("ФормаВыбораСчетаМСФО_Завершение", ЭтотОбъект);

    ПараметрыОткрытия = Новый Структура;
    ПараметрыОткрытия.Вставить("Объект", Объект);
    ПараметрыОткрытия.Вставить("ИмяТЧ", ");

    ОткрытьФорму("ОбщаяФорма.ФормаВыбораСчетаМСФО", ПараметрыОткрытия, ЭтаФорма, , , ,Оповещение, РежимОткрытияОкнаФормы.БлокироватьОкноВладельца);
    КонецПроцедуры
```

После этого при начале выбора открывается моя общая форма и открывается стандартная форма выбора.
Вопрос: "Почему открывается стандартная форма, ведь я указал СтандартнаяОбработка = Ложь"?

p.s.
Если создать элемент не динамически, то всё нормально(открывается только моя форма)
---
Потому что ты мимо параметра промахиваешься и присваиваешь Ложь не туда. Должно быть

```1c
    Процедура ПодключаемыйОбработчик_НачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
```
---
Потому что ты мимо параметра промахиваешься и присваиваешь Ложь не туда. Должно быть

```1c
    Процедура ПодключаемыйОбработчик_НачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
```
Был такой exe-шник на семерке. По клику на внешний отчёт - стартовал его в открытой 1Ске. Очень удобно, когда отчетов/обработок уйма и различных каталогах...

Есть ли, что нибудь похожее на 8ке?
---
Можно использовать drug&drop - перетащить файл обработки из папки проводника на открытую 1С. Вполне удобно и быстро.
---
Берете батник

```1c
    c:
    cd "C:\Program Files\1cv81\bin\"
    1cv8.exe ENTERPRISE /s bases\ut_sql /N USERROBOT /P PASSWORDROBOTA /DisableStartupMessages /UC 222 /Execute "E:\Robozavr\ExtForms\ActualPoint.epf"
```

вместо "E:\Robozavr\ExtForms\ActualPoint.epf" пишете %1
ставите свои параметры

и прописываете этот батник в ассоциации
---
makfromkz, неудобно. каждый раз параметры переписывать...
---
1v7, можно пойти вот по этому пути: http://infostart.ru/public/17182/ во втором варианте:
Если же нужно запустить ERT в уже загруженной сессии 1С:Предприятия, тогда сценарий будет еще короче:

 set wshShell = wScript.createObject("wScript.shell")
 wshShell.appActivate "1С:Предприятие"
 wshShell.sendKeys "^(o)"
 wshShell.sendKeys wScript.arguments.unnamed.item(0)
 wshShell.sendKeys "~"

 При желании можно даже проассоциировать ert-файлы с RunErt.vbs, тогда по двойному клику из Проводника они будут открываться на исполнение внутри V7. Разумеется, ERT надо заменить на EPF
---
Может это поможет 1С Tool Kit - программа для работы со списком информационных баз 1С
возможность указать ассоциацию операционной системы с файлами расширения *.dt, *.cf, *.1cd, *.epf, *.erf – что позволяет простым двойным щелчком мыши открыть любой файл с этими расширениями
---
ksv74, не то
---
Можно использовать drug&drop - перетащить файл обработки из папки проводника на открытую 1С. Вполне удобно и быстро.
Добрый день, есть обработка, которая формирует счета-фактуры на основании ттн по контрагентам за период. Подскажите, как сделать, чтобы она дописывала новые счета-фактуры на основании новых ттн, а которые уже сделаны за этот период пропускала?
---
как вариант - делать проверку:
Док = СоздатьОбъект("Документ");
Если Док.ВыбратьПодчиненныеДокументы(, , ВашТТН) = 1 Тогда
    Продолжить;
КонецЕсли;

То есть пропускаем, если есть подчиненный док
---
gasha, а которые уже сделаны за этот период пропускала? Зная реалии работы наших бухгалтеров, по уму уже сделанное надо не просто пропускать, а проверять - не изменялась ли ТТН после формирования счета-фактуры? И, если изменялась, то изменять и счет-фактуру. Или создавать корректирующий, если уж действовать строго по НК.
---
Cooler, Согласен, спасибо, что напомнили, т.к. таких случаев предостаточно, пока бы с этим вопросом разобраться(2) mar82, спасибо за предложение, буду пробовать сейчас.
---
как вариант - делать проверку:
Док = СоздатьОбъект("Документ");
Если Док.ВыбратьПодчиненныеДокументы(, , ВашТТН) = 1 Тогда
    Продолжить;
КонецЕсли;

То есть пропускаем, если есть подчиненный док
Существует обработка выгрузки нескольких данных из накладных реализации товара в файл формата dbf по шаблону(предопределенная таблица), но она для управляемой формы. Кто может переписать форму для обычного приложения? 1с 8.2 бухгалтерия 2.0. Желательно до завтра за вознаграждение. За исходником обращаться в личку.
---
Who, кидайте - сделаю
---
Who, Управляемые формы замечательно работают в обычном приложении.
Встройте в конфигурацию или запустите БП2 в управляемом режиме и пользуйтесь бесплатно.
---
ekaruk, Пробовал встроить - почему то пустую таблицу выдает (не производит отбора и записи). И после запуска бух 2.0 в управляемом режиме и запуске обработки тоже выдает пустой файл.
---
Who, может, что-то в реквизитах документа версии 2.0 и 3.0 отличается? И надо не столько под обычные формы переделывать, сколько сам алгоритм формирования?
---
Who, Ну тогда проблема не в форме.
Данные другие. Нужно не форму, а алгоритм работы менять.
---
вознаграждение может оговариваться, для опытного специалиста работы на 7-10 минут
---
Возможно, так кто возмется помочь? В долгу не останусь
---
Who, ну, я в принципе в данный момент свободен. Но опыт программирования в 8-ке небольшой, да и даме надо уступить дорогу - вдруг захочет поучаствовать?
---
Cooler, Я пас. У меня БП2.0 нет.
---
ekaruk, и только то? Ну, это не проблема, любой дистрибутив 1С находится в Инете за пару минут. С поиском могу подсобить, безвозмездно.
---
Cooler, У меня есть доступ к с users.1c.ru.
Скачивать и ставить ради одной обработки нецелесообразно.
---
Cooler, ну глянь в личке, может что придумаешь
---
Ну а вдруг ещё пригодится? =)
конечно узко квалифицированные специалисты обычно другим не занимаются, но всё же
---
Ещё есть желающие помочь на возмездной основе?
---
Who, кидайте - сделаю
---
ZOMI, кинул
---
решение получено, благодарю всех участников
Подскажите пожалуйста есть ли какая-то возможность что бы при загрузку сайта в полеHTMLдокумента не загружались картинки?
---
kojinandrej, прятать не подойдет?

```1c
    Картинки = ЭлементыФормы.ПолеHTMLДокумента1.Документ.getElementsByTagName("img");
    Для каждого Картинка Из Картинки Цикл
    Картинка.style.display = "none";
    КонецЦикла;
```

или Картинка.src = "";
---
kojinandrej, прятать не подойдет?

```1c
    Картинки = ЭлементыФормы.ПолеHTMLДокумента1.Документ.getElementsByTagName("img");
    Для каждого Картинка Из Картинки Цикл
    Картинка.style.display = "none";
    КонецЦикла;
```

или Картинка.src = "";
---
Alexey_, в прицепе работает, дайте ему премию =).

по идее так можно менять почти все в хтмл...
---
Что никто с таким вопросом не задавался???
---
kojinandrej, первое что в голову пришло, получи текст html в строку и удали ссылки на картинки а потом выведи в хтмл поле...
---
полеHTMLДокумента в 1С реализовано с помощью WebBroweser Control.
Как вариант в ветке реестра HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main значение "Display Inline Images" установить в no

но надо учитывать, что это и на IE повлияет
---
alexx2510, А если это не Windows?!

Удаление элементов из HTML наверное более универсальный метод.
И я бы сделал это через DOM:

```1c
    ЧтениеHTML = Новый ЧтениеHTML;
    ЧтениеHTML.УстановитьСтроку(ИсходныйТекстHTML);

    ПостроительDOM = Новый ПостроительDOM;
    ДокументDOM = ПостроительDOM.Прочитать(ЧтениеHTML);

    УдалитьКартинкиИзDOM(ДокументDOM); //рекурсивно!

    ЗаписьHTML = Новый ЗаписьHTML;
    ЗаписьHTML.УстановитьСтроку();

    ЗаписьDOM = Новый ЗаписьDOM;
    ЗаписьDOM.Записать(ДокументDOM, ЗаписьHTML);

    ТекстHTMLБезКартинок = ЗаписьHTML.Закрыть();
    .........
    .........

    Процедура УдалитьКартинкиИзDOM(ДокументDOM)
    Для каждого элементDOM Из ДокументDOM.ДочерниеУзлы Цикл
    Если ТипЗнч(элементDOM) = Тип("ЭлементКартинкаHTML") Тогда
    ДокументDOM.УдалитьДочерний(элементDOM)
    Иначе
    УдалитьКартинкиИзDOM(элементDOM);
    КонецЕсли;
    КонецЦикла;
    КонецПроцедуры
```
---
Поможет только удаление "src=...." из полученного текста. Вариант установки/изменения в реестре я даже не рассматриваю, т.к. это ударит по IE (неизвестно, когда он пригодится в варианте необходимости с картинками).
Удалять можно 2-мя способами - через поиск в тексте и через DOM. Я-бы выбрал 1-й вариант (он проще в написании).