1С Простая консоль запросов |
|
|
|
Автор: А.Волос
|
1с очень многое сделал за программиста, благодаря чему стало возможным писать программы в очень короткие сроки!
Простая консоль запросов. При использовании минимально простых средств разработки, она вполне функциональна!
Интерфейс интуитивно понятен:
- В правом верхнем окне Добавить(+), и вводим текст запроса, вида:
ВЫБРАТЬ
ЦеныНоменклатурыСрезПоследних.ВидЦены,
ЦеныНоменклатурыСрезПоследних.Номенклатура
ИЗ
РегистрСведений.ЦеныНоменклатуры.СрезПоследних(, ВидЦены = &ТипЦены) КАК ЦеныНоменклатурыСрезПоследних
Можно ввести запрос и без параметров.
- В левом верхнем окне Добавить(+), впечатываем имя параметра и выбираем из списка его тип.
Так добавляется любое необходимое количество параметров.
- Нажимаем "Выполнить запрос".
Результат программа помещает в нижнее окно - элемент формы типа ТабличныйДокумент.
|
Обновлено 06.04.2014 11:57 |
Подробнее...
|
|
Отображение регистра в табличный документ |
|
|
|
Автор: А.Волос
|
26.03.2014 11:10 |

Пользователь выбирает в переключателе (Регистр сведений либо Регистр накоплений). Далее выбирает в списке выбора имя регистра, который желает отобразить. Нажимает Выполнить. Регистр отображается в табличном документе, в поле выбора на форме отображается сформированный программой запрос!
|
Обновлено 23.09.2014 15:48 |
Подробнее...
|
Выбери документ - получи значения реквизитов! |
|
|
|
Автор: А.Волос
|
06.03.2014 08:20 |

Предлагаю вниманию публики интересную на мой взгляд программу (1с внешняя обработка).
- выбираем из раскрывающего списка имя типа документа, программа помещает во второй раскрывающийся список номера всех документов выбранного типа. - далее выбираем из второго списка номер конкретного документа выбранного типа, программа выводит имена и значения всех реквизитов табличных частей документа. - вывод результата в табличное поле.
История: Программист Alexander Speshilov написал несколько интересных функций (не помню точно имя сайта источника), результат работы которых: вывод имен всех реквизитов системы. В частности функция ПолучитьВсеХранимыеРеквизитыКонфигурации().
Эта великолепная функция выводит имена всех реквизитов всех документов. Взяв идею из этой функции переделаем код так, чтобы программа выводила ЗНАЧЕНИЯ реквизитов всех табличных частей выбранного пользователем из раскрывающегося списка документа.
|
Обновлено 23.09.2014 16:17 |
Подробнее...
|
Сканируем табличную часть документа 1с |
|
|
|
Автор: А.Волос
|
19.02.2014 06:32 |

Зная имена вкладок и колонок табличной части документа, легко просканировать табличную часть документа.
Посмотрим на примере документов типа "РеализацияТоваровУслуг".
Процедура КнопкаВыполнитьНажатие(Кнопка)
ТипДокумента = ЭлементыФормы.ПолеВыбора2.Значение;
НомерДок = ЭлементыФормы.ПолеВыбора1.Значение;
Если СокрЛП(ТипДокумента) = "" Тогда
Предупреждение("Выберите тип документа");
ИначеЕсли СокрЛП(НомерДок) = "" Тогда
Предупреждение("Выберите номер документа");
Иначе
ДокСсылка = СсылкаНаДокумент(ТипДокумента,НомерДок);
ДокОбъект = ДокСсылка.ПолучитьОбъект();
ТабТоварыТЗ = мПодготовитьТаблицыДокументаПоТовары(ДокОбъект);
ТабУслугиТЗ = мПодготовитьТаблицыДокументаПоУслуги(ДокОбъект);
ТабТараТЗ = мПодготовитьТаблицыДокументаПоТаре(ДокОбъект);
ПоказатьТаблицу(ТабТоварыТЗ);
ПоказатьТаблицу(ТабУслугиТЗ);
ПоказатьТаблицу(ТабТараТЗ);
КонецЕсли;
КонецПроцедуры
|
Подробнее...
|
Автор: А.Волос
|
17.02.2014 18:47 |

Ниже показан код внешней обработки для 1с, в которой программа находит имена реквизитов документа, формирует запрос к БД, и как результат выводятся имена и значения всех реквизитов документа, тип и номер которого пользователь
выберет в выпадающих списках формы.
Функции МассивИменРеквизитовОбъекта() и ИспользуетсяОбщийРеквизит()
найдены в интернете.
Процедура КнопкаВыполнитьНажатие(Кнопка)
ТипДокумента = ЭлементыФормы.ПолеВыбора2.Значение;
НомерДок = ЭлементыФормы.ПолеВыбора1.Значение;
Если СокрЛП(ТипДокумента) = "" Тогда
Предупреждение("Выберите тип документа");
ИначеЕсли СокрЛП(НомерДок) = "" Тогда
Предупреждение("Выберите номер документа");
Иначе
ДокОснование = СсылкаНаДокумент(НомерДок);
//Найдем массив имен реквизитов документа
МассивИменРеквизитов = МассивИменРеквизитовОбъекта(ДокОснование);
Если СокрЛП(ТипДокумента) = "АвансовыйОтчет" Тогда
МассивИменРеквизитов = АвансовыйОтчетМассивИменРеквизитов(МассивИменРеквизитов);
КонецЕсли;
строкаЗапроса = СформироватьЗапрос(ТипДокумента, МассивИменРеквизитов);
Сообщить(строкаЗапроса);
Запрос = Новый Запрос();
Запрос.УстановитьПараметр("Номер", НомерДок);
Запрос.Текст = строкаЗапроса;
Док = Запрос.Выполнить().Выгрузить();
ПоказатьТаблицу(Док);
КонецЕсли;
КонецПроцедуры
|
Подробнее...
|
|
|
|
<< Первая < Предыдущая 1 2 3 4 5 6 7 Следующая > Последняя >>
|
Страница 4 из 7 |