По теме из базы знаний
- Очень долгое обновление типовой БП с релиза 2.0.41.х. Простой способ лечения.
- Выгрузка документов из типовой "Торговля и склад" редакции 9.2 (7.7) и загрузка в типовую «Бухгалтерия предприятия» редакции 3.0 (8.3)
- Перенос данных из УПП 1.3 / КА 1.1 в БП 3. Переносятся документы, справочники и начальные остатки
- Перенос данных из 1С:Бухгалтерия 7.7 в БП 3.0. Переносятся остатки, документы и справочники
- Обработка "Списание доходов будущих периодов" в 1С Бухгалтерия 8.3 и расширение
Найденные решения
(1)
говнокод... т.е. не оптимальный запрос... писал очень давно, но для понимания - пойдет.
в печатную форму типо договора
говнокод... т.е. не оптимальный запрос... писал очень давно, но для понимания - пойдет.
&НаСервере
Функция ПолучитьРеквизитыДокумента(ЭтотДоговор)
РеквизитыДокумента = Новый Структура("НомерДоговора, ДатаДоговора, Организация, Контрагент,
| РуководительДолжность, РуководительФИО,
| КонтрагентРуководительДолжность, КонтрагентРуководительФИО,
| ОрганизацияИНН, КонтрагентИНН, ОрганизацияКПП, КонтрагентКПП,
| ОрганизацияПолное, КонтрагентПолное,
| ОрганизацияАдрес, ОрганизацияПочтовыйАдрес,
| КонтрагентАдрес, КонтрагентПочтовыйАдрес,
| ОрганизацияТелефон, КонтрагентТелефон,
| ОрганизацияНомерСчета, ОрганизацияГородБанка,
| ОрганизацияНаименованиеБанка, ОрганизацияКоррСчет,
| КонтрагентНомерСчета, КонтрагентГородБанка,
| КонтрагентНаименованиеБанка, КонтрагентКоррСчет,
| ОрганизацияБИК, КонтрагентБИК");
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
| ДоговорыКонтрагентов.Организация.Наименование КАК Организация,
| ДоговорыКонтрагентов.Владелец.Наименование КАК Контрагент,
| ДоговорыКонтрагентов.Организация.НаименованиеПолное КАК ОрганизацияПолное,
| ДоговорыКонтрагентов.Владелец.НаименованиеПолное КАК КонтрагентПолное,
| ДоговорыКонтрагентов.Номер КАК НомерДоговора,
| ДоговорыКонтрагентов.Дата КАК ДатаДоговора,
| ДоговорыКонтрагентов.Организация.ИНН КАК ОрганизацияИНН,
| ДоговорыКонтрагентов.Организация.КПП КАК ОрганизацияКПП,
| ДоговорыКонтрагентов.Владелец.ИНН КАК КонтрагентИНН,
| ДоговорыКонтрагентов.Владелец.КПП КАК КонтрагентКПП,
| ДоговорыКонтрагентов.Организация.ОсновнойБанковскийСчет.НомерСчета КАК ОрганизацияНомерСчета,
| ДоговорыКонтрагентов.Организация.ОсновнойБанковскийСчет.Банк.Город КАК ОрганизацияГородБанка,
| ДоговорыКонтрагентов.Организация.ОсновнойБанковскийСчет.Банк.Наименование КАК ОрганизацияНаименованиеБанка,
| ДоговорыКонтрагентов.Организация.ОсновнойБанковскийСчет.Банк.КоррСчет КАК ОрганизацияКоррСчет,
| ДоговорыКонтрагентов.Организация.ОсновнойБанковскийСчет.Банк.Код КАК ОрганизацияБИК,
| ДоговорыКонтрагентов.Владелец.ОсновнойБанковскийСчет.НомерСчета КАК КонтрагентНомерСчета,
| ДоговорыКонтрагентов.Владелец.ОсновнойБанковскийСчет.Банк.Город КАК КонтрагентГородБанка,
| ДоговорыКонтрагентов.Владелец.ОсновнойБанковскийСчет.Банк.Наименование КАК КонтрагентНаименованиеБанка,
| ДоговорыКонтрагентов.Владелец.ОсновнойБанковскийСчет.Банк.КоррСчет КАК КонтрагентКоррСчет,
| ДоговорыКонтрагентов.Владелец.ОсновнойБанковскийСчет.Банк.Код КАК КонтрагентБИК,
| ДоговорыКонтрагентов.Владелец.Ссылка КАК КонтрагентСсылка,
| ДоговорыКонтрагентов.РуководительКонтрагента КАК КонтрагентРуководительФИО,
| ДоговорыКонтрагентов.ДолжностьРуководителяКонтрагента КАК КонтрагентРуководительДолжность,
| ДоговорыКонтрагентов.Владелец.КонтактнаяИнформация.(
| Вид КАК Вид,
| Представление КАК Представление) КАК КонтактнаяИнформация
|ИЗ
| Справочник.ДоговорыКонтрагентов КАК ДоговорыКонтрагентов
|ГДЕ
| ДоговорыКонтрагентов.Ссылка = &Ссылка";
Запрос.УстановитьПараметр("Ссылка", ЭтотДоговор);
РезультатЗапроса = Запрос.Выполнить();
ВыборкаЗапроса = РезультатЗапроса.Выбрать();
ВыборкаЗапроса.Следующий();
ЗаполнитьЗначенияСвойств(РеквизитыДокумента, ВыборкаЗапроса);
ВыборкаПоКонтактам = ВыборкаЗапроса.КонтактнаяИнформация.Выбрать();
Пока ВыборкаПоКонтактам.Следующий() Цикл
Если Строка(ВыборкаПоКонтактам.Вид) = "Юридический адрес" Тогда
РеквизитыДокумента.КонтрагентАдрес = ВыборкаПоКонтактам.Представление;
КонецЕсли;
Если Строка(ВыборкаПоКонтактам.Вид) = "Почтовый адрес" Тогда
РеквизитыДокумента.КонтрагентПочтовыйАдрес = ВыборкаПоКонтактам.Представление;
КонецЕсли;
Если Строка(ВыборкаПоКонтактам.Вид) = "Телефон" Тогда
РеквизитыДокумента.КонтрагентТелефон = ВыборкаПоКонтактам.Представление;
КонецЕсли;
КонецЦикла;
Возврат РеквизитыДокумента;
КонецФункции
ПоказатьОстальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(2) я понимаю вопрос глупый, но помогите плиз, ткните носом ибо возникла необходимость такая: есть ВПН печатная типо договор, висит на реализации товара, нужно в подвал формы вывести реквизиты клиента, если через ссылка - контрагент , выводится только название через справочник контрагенты. Туплю, не могу найти где они есть
(1)
говнокод... т.е. не оптимальный запрос... писал очень давно, но для понимания - пойдет.
в печатную форму типо договора
говнокод... т.е. не оптимальный запрос... писал очень давно, но для понимания - пойдет.
&НаСервере
Функция ПолучитьРеквизитыДокумента(ЭтотДоговор)
РеквизитыДокумента = Новый Структура("НомерДоговора, ДатаДоговора, Организация, Контрагент,
| РуководительДолжность, РуководительФИО,
| КонтрагентРуководительДолжность, КонтрагентРуководительФИО,
| ОрганизацияИНН, КонтрагентИНН, ОрганизацияКПП, КонтрагентКПП,
| ОрганизацияПолное, КонтрагентПолное,
| ОрганизацияАдрес, ОрганизацияПочтовыйАдрес,
| КонтрагентАдрес, КонтрагентПочтовыйАдрес,
| ОрганизацияТелефон, КонтрагентТелефон,
| ОрганизацияНомерСчета, ОрганизацияГородБанка,
| ОрганизацияНаименованиеБанка, ОрганизацияКоррСчет,
| КонтрагентНомерСчета, КонтрагентГородБанка,
| КонтрагентНаименованиеБанка, КонтрагентКоррСчет,
| ОрганизацияБИК, КонтрагентБИК");
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
| ДоговорыКонтрагентов.Организация.Наименование КАК Организация,
| ДоговорыКонтрагентов.Владелец.Наименование КАК Контрагент,
| ДоговорыКонтрагентов.Организация.НаименованиеПолное КАК ОрганизацияПолное,
| ДоговорыКонтрагентов.Владелец.НаименованиеПолное КАК КонтрагентПолное,
| ДоговорыКонтрагентов.Номер КАК НомерДоговора,
| ДоговорыКонтрагентов.Дата КАК ДатаДоговора,
| ДоговорыКонтрагентов.Организация.ИНН КАК ОрганизацияИНН,
| ДоговорыКонтрагентов.Организация.КПП КАК ОрганизацияКПП,
| ДоговорыКонтрагентов.Владелец.ИНН КАК КонтрагентИНН,
| ДоговорыКонтрагентов.Владелец.КПП КАК КонтрагентКПП,
| ДоговорыКонтрагентов.Организация.ОсновнойБанковскийСчет.НомерСчета КАК ОрганизацияНомерСчета,
| ДоговорыКонтрагентов.Организация.ОсновнойБанковскийСчет.Банк.Город КАК ОрганизацияГородБанка,
| ДоговорыКонтрагентов.Организация.ОсновнойБанковскийСчет.Банк.Наименование КАК ОрганизацияНаименованиеБанка,
| ДоговорыКонтрагентов.Организация.ОсновнойБанковскийСчет.Банк.КоррСчет КАК ОрганизацияКоррСчет,
| ДоговорыКонтрагентов.Организация.ОсновнойБанковскийСчет.Банк.Код КАК ОрганизацияБИК,
| ДоговорыКонтрагентов.Владелец.ОсновнойБанковскийСчет.НомерСчета КАК КонтрагентНомерСчета,
| ДоговорыКонтрагентов.Владелец.ОсновнойБанковскийСчет.Банк.Город КАК КонтрагентГородБанка,
| ДоговорыКонтрагентов.Владелец.ОсновнойБанковскийСчет.Банк.Наименование КАК КонтрагентНаименованиеБанка,
| ДоговорыКонтрагентов.Владелец.ОсновнойБанковскийСчет.Банк.КоррСчет КАК КонтрагентКоррСчет,
| ДоговорыКонтрагентов.Владелец.ОсновнойБанковскийСчет.Банк.Код КАК КонтрагентБИК,
| ДоговорыКонтрагентов.Владелец.Ссылка КАК КонтрагентСсылка,
| ДоговорыКонтрагентов.РуководительКонтрагента КАК КонтрагентРуководительФИО,
| ДоговорыКонтрагентов.ДолжностьРуководителяКонтрагента КАК КонтрагентРуководительДолжность,
| ДоговорыКонтрагентов.Владелец.КонтактнаяИнформация.(
| Вид КАК Вид,
| Представление КАК Представление) КАК КонтактнаяИнформация
|ИЗ
| Справочник.ДоговорыКонтрагентов КАК ДоговорыКонтрагентов
|ГДЕ
| ДоговорыКонтрагентов.Ссылка = &Ссылка";
Запрос.УстановитьПараметр("Ссылка", ЭтотДоговор);
РезультатЗапроса = Запрос.Выполнить();
ВыборкаЗапроса = РезультатЗапроса.Выбрать();
ВыборкаЗапроса.Следующий();
ЗаполнитьЗначенияСвойств(РеквизитыДокумента, ВыборкаЗапроса);
ВыборкаПоКонтактам = ВыборкаЗапроса.КонтактнаяИнформация.Выбрать();
Пока ВыборкаПоКонтактам.Следующий() Цикл
Если Строка(ВыборкаПоКонтактам.Вид) = "Юридический адрес" Тогда
РеквизитыДокумента.КонтрагентАдрес = ВыборкаПоКонтактам.Представление;
КонецЕсли;
Если Строка(ВыборкаПоКонтактам.Вид) = "Почтовый адрес" Тогда
РеквизитыДокумента.КонтрагентПочтовыйАдрес = ВыборкаПоКонтактам.Представление;
КонецЕсли;
Если Строка(ВыборкаПоКонтактам.Вид) = "Телефон" Тогда
РеквизитыДокумента.КонтрагентТелефон = ВыборкаПоКонтактам.Представление;
КонецЕсли;
КонецЦикла;
Возврат РеквизитыДокумента;
КонецФункции
Показать
В одном месте данная инфа не хранится. Посмотрите процедуры формирования шапки любой типовой печатки (типа ТОРГ-12). Увидите там вызов общего модуля с функцией типа "СведенияОбОрганизации". Нет конфигуратора под рукой чтобы написать точнее, но насколько я помню в данную функцию передают желаемые (из списка возможных) поля для вывода, а в обратку функция выдает строку, которую и вставляют в печатную форму.
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот