Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Неназначенных незавершенных заказов: 2
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Войти | Зарегистрироваться )



История благодарностей участнику Hokum ::: Спасибо сказали: 24 раз
Дата поста: В теме: За сообщение: Спасибо сказали:
06.02.14, 14:20 [Б2/К1] Конфигурирование №1 "Займы"
Да, я так и делал. Если это последний платеж (по регистру закрывалось в 0), то делал в платежке еще одну проводку по выплате процентов.
Думаю вполне можно и обработку какую-то сделать, если время позволяет. Пусть анализирует всё и создает отдельную платежку или ручную операцию по выплате процентов.
AgA,
04.02.14, 16:27 [Б2/К1] Конфигурирование №1 "Займы"
Не думаю, что нужен документ закрытия или какие-то обработки. Это в общем-то никого не волнует.
Необходим просто механизм определяющий, что надо выплатить проценты и нарисовать эту проводку.
Я вставлял все просто в платежку, и не получил никаких комментариев, что это неправильно.
Для валютного займа (по сравнению с гривной) мне мешали проводки, которые делал типовой механизм по переоценке валюты.

С отчетом все не так просто smile.gif
Фактическая дата закрытия , когда остаток по регистру бухгалтерии = 0. Я раза три переделывал его, пока не вымучил у экзаменатора наводящими вопросами и размышлениями откуда брать дату закрытия.
AgA,
15.11.13, 1:02 [Б1/К1] Конфигурирование #1 «Предпродажная подготовка автомобилей»
Я делал счет уже после настройки учетной политики, у меня там только одно субконто номенклатура суммовое.
Да, без доп.расходов закрытие месяца почему-то нормально не отрабатывает, я просто не пробовал без него.
Я до конца не разбирался с некоторыми задачами, просто не было времени на идеальное решение.
вот моя база http://www.ex.ua/171596627388
AgA,
13.11.13, 15:14 [Б1/К1] Конфигурирование #1 «Предпродажная подготовка автомобилей»
Цитата(RinLis @ 13.11.13, 11:39) *
Попался этот билет на экзамене.
Нельзя делать 287й счет по с/к номенклатура, партии, склады. По каким надо меня не оповестили...
Видимо, либо по одной номенклатуре, либо по ном+склад, либо ном+партии.


Выше я выложил решение, где субконто только номенклатура. Так не делали?
AgA,
06.11.13, 14:07 [Б2/К1] Конфигурирование №1 "Займы"
Цитата(AgA @ 05.11.13, 23:44) *
У меня возникли вопросы.
1. 951, 684 счета не валютные
а. 0делать их валютными
б. или разбивать на два суб счета валтный и гривневый.

2. Отслеживаю в платежном поручении исходящем тело займа. Наступает этот момент.
а. автоматом добавить проводки на сумму процентов.
Дт 951 ← Кт 684
Дт 684 ← Кт 31
б. поставить ограничение на выплату тела.
Сделать в платежном поручении исходящем новую операцию выплату процентов.
кнопкой заполнить считать сумму процентов иделать проводки
Дт 951 ← Кт 684
Дт 684 ← Кт 31


На 951, 684 не надо делать проводки в валюте, там система сделает все сама. Посмотрите для примера как работает типовый механизм при покупке-продаже валюты.
При закрытии займа я сделал в этом же документе дополнительные проводки по процентам, экзаменатор на все это посмотрел мельком. (а проводки у меня были корявые и не до конца заполнены). Основное внимание надо обратить на правильные запросы. Все данные, в том числе когда была первая и последняя платежка, и когда наступил момент закрытия займа - надо получать только по регистру бухгалтерии. Причем нельзя привязываться к типу документа в выборке, т.е. выбрать из регистра с отбором по регистраторам-платежкам. Надо что бы обрабатывались даже ручные операции.
AgA,
28.10.13, 13:19 Сетевая работа с 1С
Цитата(Oughtem @ 25.10.13, 23:59) *
Что, если выложить базу на ГуглДиск и коннектится к ней без всякого сервера. Кто-то пробовал?


Если нет возможности организовать сервер, или все плохо с интернетом, можно сделать распределенную базу.
Я так делал пару раз, обмен данными через дропбокс по кнопочке.
Oughtem,
22.10.13, 10:52 [Б4/К1] Конфигурирование #1 «Швейное производство по нормативам»
а на 26 не должно закрываться с фиксированной аналитики 23 ?
AgA,
19.10.13, 21:32 [Б2/К1] Конфигурирование №1 "Займы"
Попался этот билет, сдал.
Кто будет делать - делайте сразу для валюты , а то гривной все проще получается.
Экзаменатор смотрел только на запросы, все остальное его не особо интересовало.
Vofka,
16.10.13, 17:05 [Б4/К1] Конфигурирование #1 «Швейное производство по нормативам»
Цитата(TipsyKID @ 17.10.12, 13:25) *
15 минут на создания обработки табличной части документа "Отчет производства за смену"- "Обработка подбора актуальных спецификаций"



Объясните мне кто-нибудь этот пункт. Зачем нам это, если мы с помощью ОПзС не списываем материалы?

Экзамен послезавтра, эту задачу я до сих пор не смог переварить до конца 09000000.gif
AgA,
11.10.13, 11:28 Конфигурирование, билет "Сумма Евро"
На экзамене попалась моему соседу.
Решение очень простое, там написать несколько строчек надо.

Текст задачи:
Необходимо внести изменения в функциональность отчета "Продажи (диаграмма)".
В данном отчете при установленной валюте взаиморасчетов USD (и наличии показателя "Сумма USD") добавить возможность получения данных по новому показателю: "Сумма (Евро)". Значение кросс-курса данной валюты нужно получать на дату, указанную в качестве правой границы указываемого интервала ("ДатаКон").

Краткое описание решения:
1. В качестве исходного - отчет Продажи (диаграмма).
2. Добавляем новый показатель " Сумма (Евро)" с формулой «СуммаUSD * КроссКурс».
3. Кросс-курс высчитываем на ДатаКон.
Sunset1, Vofka,
10.10.13, 23:57 [Б1/К1] Конфигурирование #1 «Предпродажная подготовка автомобилей»
Простой билет по трудоемкости
Повторил для себя через через новый 287 счет (активный, НУ, субконто1 - номенклатура (сум.))

Один из вариантов решения:
1. В "закрытие месяца" добавить галку "РасчетСтоимостиАвтомобиля" и настроить обработку ее в модуле формы по аналогии с остальными.
2. В модуль документа в процедуру "ДвиженияПоРегистрам" вставляем вызов нашей процедуры:
Процедура РасчетСтоимостиАвтомобиля(СтруктураШапкиДокумента, Отказ, Заголовок)
    
    Если СтруктураШапкиДокумента.РасчетСтоимостиАвтомобиля Тогда
        
        Запрос = Новый Запрос;
        Запрос.Текст =
        "ВЫБРАТЬ
        |    ХозрасчетныйОстатки.Субконто1 КАК Номенклатура,
        |    ХозрасчетныйОстатки.СуммаОстатокДт,
        |    ХозрасчетныйОстатки.СуммаНУОстатокДт,
        |    ХозрасчетныйОстатки.НалоговоеНазначение
        |ПОМЕСТИТЬ ТабОст
        |ИЗ
        |    РегистрБухгалтерии.Хозрасчетный.Остатки(&Кон, Счет = &Счет, &ВидыСубконтоСуб, Организация = &Организация) КАК ХозрасчетныйОстатки
        |
        |ИНДЕКСИРОВАТЬ ПО
        |    Номенклатура
        |;
        |
        |////////////////////////////////////////////////////////////////////////////////
        |ВЫБРАТЬ
        |    ХозрасчетныйОбороты.Субконто1 КАК Номенклатура,
        |    ХозрасчетныйОбороты.Субконто2 КАК Склад,
        |    ХозрасчетныйОбороты.СуммаОборотДт КАК СуммаОборотДт,
        |    ХозрасчетныйОбороты.КоличествоОборотДт КАК КоличествоОборотДт,
        |    ХозрасчетныйОбороты.СуммаНУОборотДт КАК СуммаНУОборотДт,
        |    ХозрасчетныйОбороты.Субконто3 КАК Партия,
        |    ТабОст.СуммаОстатокДт КАК СуммаОстатокДт,
        |    ТабОст.СуммаНУОстатокДт КАК СуммаНУОстатокДт,
        |    ХозрасчетныйОбороты.НалоговоеНазначение КАК НалоговоеНазначение
        |ИЗ
        |    ТабОст КАК ТабОст
        |        ЛЕВОЕ СОЕДИНЕНИЕ РегистрБухгалтерии.Хозрасчетный.Обороты(
        |                &Нач,
        |                &Кон,
        |                Регистратор,
        |                Счет = &СчетОбор,
        |                &ВидыСубконтоОбор,
        |                Организация = &Организация
        |                    И Субконто1 В
        |                        (ВЫБРАТЬ
        |                            ТабОст.Номенклатура
        |                        ИЗ
        |                            ТабОст КАК ТабОст),
        |                ,
        |                ) КАК ХозрасчетныйОбороты
        |        ПО ТабОст.Номенклатура = ХозрасчетныйОбороты.Субконто1
        |            И ТабОст.НалоговоеНазначение = ХозрасчетныйОбороты.НалоговоеНазначение
        |ГДЕ
        |    ХозрасчетныйОбороты.Регистратор ССЫЛКА Документ.КомплектацияНоменклатуры
        |ИТОГИ
        |    СУММА(СуммаОборотДт),
        |    СУММА(КоличествоОборотДт),
        |    СУММА(СуммаНУОборотДт),
        |    МАКСИМУМ(СуммаОстатокДт),
        |    МАКСИМУМ(СуммаНУОстатокДт)
        |ПО
        |    Номенклатура";
        
        
        ВидыСубконтоОбор=Новый Массив;
        ВидыСубконтоОбор.Добавить(ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Номенклатура);
        ВидыСубконтоОбор.Добавить(ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Склады);
        ВидыСубконтоОбор.Добавить(ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Партии);
        
        Запрос.УстановитьПараметр("ВидыСубконтоОбор", ВидыСубконтоОбор);
        ВидыСубконтоСуб=Новый массив;
        ВидыСубконтоСуб.Добавить(ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Номенклатура);
        
        Запрос.УстановитьПараметр("ВидыСубконтоСуб", ВидыСубконтоСуб);
        Запрос.УстановитьПараметр("Кон", мКонГраница);
        Запрос.УстановитьПараметр("Нач", мНачГраница);
        Запрос.УстановитьПараметр("Организация", Организация);
        Запрос.УстановитьПараметр("Счет", ПланыСчетов.Хозрасчетный.ЗатратыНаАвтомобиль);
        Запрос.УстановитьПараметр("СчетОбор", ПланыСчетов.Хозрасчетный.ТоварыНаСкладе);
        
        Результат = Запрос.Выполнить();
        Рез=Результат.Выгрузить();
        ВыборкаНоменклатура = Результат.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
        
        Пока ВыборкаНоменклатура.Следующий() Цикл
            
            ВыборкаДетальныеЗаписи = ВыборкаНоменклатура.Выбрать();
            СуммаДляРаспределения= ВыборкаНоменклатура.СуммаОстатокДт;
            СуммаДляРаспределенияНУ= ВыборкаНоменклатура.СуммаНУОстатокДт;
            кол=0;
            Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
                Сумма=ВыборкаНоменклатура.СуммаОстатокДТ*ВыборкаДетальныеЗаписи.СуммаОборотДт/ВыборкаНоменклатура.СуммаОборотДт;
                СуммаНУ=ВыборкаНоменклатура.СуммаНУОстатокДТ*ВыборкаДетальныеЗаписи.СуммаНУОборотДт/ВыборкаНоменклатура.СуммаНУОборотДт;
                
                ПроводкаБУ     = мПроводкиБУ.Добавить();
                ПроводкаБУ.Период      = Дата;
                ПроводкаБУ.Организация     = СтруктураШапкиДокумента.Организация;
                
                
                ПроводкаБУ.НомерЖурнала  = "";
                ПроводкаБУ.Сумма   = ?(Кол=ВыборкаДетальныеЗаписи.Количество(),СуммаДляРаспределения, Сумма);
                
                СчетДт                                 = ПланыСчетов.Хозрасчетный.ТоварыНаСкладе;  
                ПроводкаБУ.СчетДт                      = СчетДт;
                КоличествоСубконто                     = СчетДт.ВидыСубконто.Количество();
                
                БухгалтерскийУчет.УстановитьСубконто(ПроводкаБУ.СчетДт, ПроводкаБУ.СубконтоДт, 1, ВыборкаДетальныеЗаписи.Номенклатура);
                БухгалтерскийУчет.УстановитьСубконто(ПроводкаБУ.СчетДт, ПроводкаБУ.СубконтоДт, 2, ВыборкаДетальныеЗаписи.Партия);
                БухгалтерскийУчет.УстановитьСубконто(ПроводкаБУ.СчетДт, ПроводкаБУ.СубконтоДт, 3, ВыборкаДетальныеЗаписи.Склад);
                ПроводкаБУ.Содержание    = НСтр("ru='Доп. расходы при поступлении товаров ';uk='Оприходованы ТМЦ '",Локализация.КодЯзыкаИнформационнойБазы() );
                Если СуммаНУ>0 тогда
                    ПроводкаБУ.НалоговоеНазначениеДт = ВыборкаДетальныеЗаписи.НалоговоеНазначение;
                    ПроводкаБУ.СуммаНУДт  = ?(Кол=ВыборкаДетальныеЗаписи.Количество(),СуммаДляРаспределения, Сумма);
                    
                КонецЕсли;
                
                ПроводкаБУ.СчетКт  = ПланыСчетов.Хозрасчетный.ЗатратыНаАвтомобиль;
                БухгалтерскийУчет.УстановитьСубконто(ПроводкаБУ.СчетКт, ПроводкаБУ.СубконтоКт, 1, ВыборкаДетальныеЗаписи.Номенклатура);
                
                Если СуммаНУ>0 тогда
                    ПроводкаБУ.НалоговоеНазначениеКт = ВыборкаДетальныеЗаписи.НалоговоеНазначение;
                    ПроводкаБУ.СуммаНУКт  = ?(Кол=ВыборкаДетальныеЗаписи.Количество(),СуммаДляРаспределения, Сумма);
                    
                КонецЕсли;
                
                СуммаДляРаспределения=СуммаДляРаспределения-Сумма;
                Кол=Кол+1;
                
            КонецЦикла;
        КонецЦикла;
        
        Если мПроводкиБУ.Количество() > 0 Тогда
            мПроводкиБУ.Записать(ложь);     
        КонецЕсли;
        
    КонецЕсли;
    
КонецПроцедуры


3. Вводим документы, в этой теме все расписано.
Я для проверки ввел одну продажу, одно списание, и одно поступление доп.расходов, потом сделал еще одно закрытие месяца с галкой "Корректировка фактической стоимости номенклатуры", вроде все отработало как надо.

з.ы. код не мой
AgA, alexfc, Elstan, Vofka,
10.10.13, 0:22 Вопрос по конфигурированию № 3
Так как показатель привязывается к партии товара, то хранить СтоимостьУПР будем в регистре накопления «ПартииТоваровНаСкладах» (добавить ресурс). В документе «ПоступлениеТоваровУслуг» этот показатель вводится вручную в отдельную колонку табличной части. Для того, чтобы управлять видимостью колонки необходимо существования отдельного права пользователя, получая которое будем устанавливать видимость и доступность колонки. При проведении документа необходимо также делать движение по регистру и этого показателя. Также нужно не забыть списывать этот показатель при списании партий. Изменение отчетов сводится к изменению макетов, по которым формируется отчет.

Решения:
1. В регистр накопления «ПартииТоваровНаСкладах» добавляем ресурс «СтоимостьУПР».
2. В табличную часть документа «ПоступлениеТоваровУслуг» добавляем реквизит «СтоимостьУПР».
3. В форме документа «ПоступлениеТоваровУслуг» в табличную часть добавляем колонку «СтоимостьУПР».
4. В модуле документа «ПоступлениеТоваровУслуг», процедура «ПодготовитьТаблицыДокумента» в структуру полей добавляем информацию о управленческой стоимости партии товара. Тем самым осуществляется движение по ресурсу «СтоимостьУПР»:
СтруктураПолей.Вставить("СтоимостьУПР", "СтоимостьУПР");

5. Добавляем механизм движения «в минус» по этому ресурсу. Для этого в общем модуле «УправлениеЗапасамиПартионныйУчет» в процедуре «ПолучитьТаблицуПартийНаСкладах» в тексте запроса выбираем и «СтоимостьУПР» из регистра:
Текст = 
    "ВЫБРАТЬ
    |    ""ПолучитьТаблицуПартийНаСкладах"" КАК QuieryId,
    |    ДокументОприходования,
    |    ДокументОприходования.Дата КАК ДокументОприходованияДата,
    |    Номенклатура,
    |    Склад,
|    ХарактеристикаНоменклатуры,
    |    СерияНоменклатуры,
    |    Качество,
    |    Заказ,
    |    КоличествоОстаток КАК Количество,
    |    СтоимостьОстаток КАК Стоимость,
    |    СтоимостьУПРОстаток КАК СтоимостьУПР";


Также, списываем СтомиостьУПР в зависимости от коэффициента списания партии:
// Ресурсы 
        Движение.Количество    = Окр(СтрокаПартии.Количество * КоэффСписания,3,1);
        Движение.Стоимость    = Окр(СтрокаПартии.Стоимость  * КоэффСписания,2,1);
        // начало добавления
        Движение.СтоимостьУПР    = Окр(СтрокаПартии.СтоимостьУПР  * КоэффСписания,2,1);
        // конец добавления

        СтрокаПартии.Количество = СтрокаПартии.Количество - Движение.Количество;
        СтрокаПартии.Стоимость  = СтрокаПартии.Стоимость  - Движение.Стоимость;
        // начало добавления
        СтрокаПартии.Стоимость  = СтрокаПартии.Стоимость  - Движение.Стоимость;
        // конец добавления

6. Для того, чтобы в документе «ПоступлениеТоваровУслуг» можно было управлять видимостью колонки «СтоимостьУПР» необходимо:
• В ПланВидовХарактеристик «ПраваПользователей» добавить предопределенное право «ПросмотрСтоимостиУПР» типа «Булево».
• В общем модуле «Пользователи» добавить функцию, которая получает это право пользователя и возвращает «ложь» или «истину» исходя из концепции 1С по правам пользователя: «Действие разрешено, если оно разрешено хотя бы в одной роли, назначенной пользователю. Действие запрещено, если оно запрещено во всех ролях».
Функция РазрешитьПросмотрСтоимостиУПР(Пользователь) Экспорт
    РазрешенПросмотр=ПолучитьЗначениеПраваПользователя(ПланыВидовХарактеристик.ПраваПользователей.ПросмотрСтоимостиУПР,ложь,Пользователь);
    
    Если РазрешенПросмотр.НайтиПоЗначению(истина)=Неопределено Тогда
        возврат ложь;
    иначе
        Возврат истина;
    КонецЕсли;
    
КонецФункции

• Вызов этой функции рекомендуется разместить в модуле формы документа «ПоступлениеТоваровУслуг» в типовой процедуре «УстановитьВидимоть» и в зависимости от возвращаемого значения управлять видимостью и доступностью колонки «СтоимостьУПР»:
Если РазрешитьПросмотрСтоимостиУПР(глТекущийПользователь) Тогда
        ЭлементыФормы.Товары.Колонки.СтоимостьУПР.Видимость=истина;
        ЭлементыФормы.Товары.Колонки.СтоимостьУПР.Доступность=истина;
    Иначе
        ЭлементыФормы.Товары.Колонки.СтоимостьУПР.Видимость=ложь;
        ЭлементыФормы.Товары.Колонки.СтоимостьУПР.Доступность=ложь;
    КонецЕсли;


7. Переделать 2-3 отчета. "ВедомостьТоварыНаСкладах", "ВедомостьПартииТоваровНаСкладах" и еще какой-то. Остальные можно не доделывать, т.к. вся доработка заключается в изменении макета отчета.
Sunset1,
09.10.13, 22:17 Возможно ли не использовать авансовые счета 3711 и 6811?
Цитата(igorenko999 @ 09.10.13, 22:38) *
открыл журнал Регистр ведомостей - Счета учета расчетов с контрагентами. Повыставлял там везде 361 и 631. Но при оформлении ПКО все равно выделяет авансы.


Лучше там все удалить, и оставить только одну строку с незаполненным контрагентом и указать счета авансов 361 и 631. Эта строка будет действовать для всех контрагентов.
igorenko999,
09.10.13, 21:22 Возможно ли не использовать авансовые счета 3711 и 6811?
Наверное имелся ввиду регистр сведений "Счета учета расчетов с контрагентами"
FLancer,
09.10.13, 19:40 Конфигурирование, билет "Управленческая цена"
Сдавал пару лет назад, попался этот билет.
Я готовился по российским билетам, они совпадают почти полностью, мой не исключение.

Краткое изложение задания
В качестве исходной использовать типовую конфигурацию «Управление торговлей» Необходимо ввести в перечень существующих номенклатурных цен понятие «УправленческаяЦена». Использование ее предполагается для суммовых оценок остатков и движения товаров. Причем предполагается, что данные вид цен может довольно часто изменяться (но не чаще одного раза в день). Т.е. необходимо обеспечить оформление отчетов, связанных с остатками и движениями товаров по еще одному показателю «СуммаУправленческая». Показатель рассчитывается как: «УправленческаяЦена»*Количество.
Как минимум, данные отчеты должны формироваться из универсальных «ОтчетОстаткиИОбороты» и «ОтчетДиаграмма».

Концепция решения:
ЦенуХ можно хранить в периодическом регистре сведений «ЦеныНоменклатуры» (периодичность день). Для этого необходимо добавить в справочник «ТипыЦенНоменклатуры» предопределенный тип «ЦенаХ». Далее, документом «УстановкаЦенНоменклатуры» установить ценыХ для номенклатуры. Необходимо изменить запросы отчетов «ОстаткиИОбороты» и «СписокКроссТаблица» таким образом, чтобы соединять записи регистра накопления, по которому формируется отчет, с регистром сведений «ЦеныНоменклатуры» и получать тем самым СуммуХ. Причем, получать суммуХ нужно только для тех регистров, в которых есть измерение типа «СправочникСсылка.Номенклатура».

Последовательность решения:
1. Добавляем в справочник «ТипыЦенНоменклатуры» предопределенный элемент «ЦенаХ».
2. Документом «УстановкаЦенНоменклатуры» регистрируем цены с типом «ЦенаХ».
3. Общий модуль «Отчеты», процедура «ЗаполнитьНачальныеНастройкиПоМетаданнымРегистра».
В цикле по измерениям ставим условие на тип измерения и пишем кусок кода из цикла по ресурсам, меняя только ИмяПоля, ПредставлениеПоля, ОписаниеПоля,ФорматнуюСтроку и Валюту:
Если МетаданныеРегистра.Измерения[Инд].Тип.СодержитТип(Тип("СправочникСсылка.Номенклатура")) Тогда        
        
        ИмяПоля           = "СуммаХ";
        ПредставлениеПоля = "СуммаХ";
        ОписаниеПоля      = "ЦенаХ * Количество#";
        ВклПоУмолчанию    = Истина;
        ФорматнаяСтрока   = "ЧЦ=15; ЧДЦ=2";
        СтрИзмерения      = "";
        СтдВалюта         = "УПР";

        Если ТипОтчета = "СписокКроссТаблица" Тогда
            Контекст.мСтруктураСвязиПоказателейИИзмерений.Вставить(ИмяПоля, Новый Структура(СтрИзмерения));
        КонецЕсли;

        Если ПустаяСтрока(ОписаниеПоля) Тогда
            ОписаниеПоля = ИмяПоля;
        КонецЕсли;

        Если (ТипОтчета = "СписокКроссТаблица") ИЛИ (ТипОтчета = "Диаграмма") Тогда
            ТекстПоляПоказатели = ТекстПоляПоказатели + ",
            |    " + СтрЗаменить("СУММА("+ОписаниеПоля+")","#", ТипПоляРегистра) + " КАК " + ИмяПоля;

            ТекстПоляИтоговЗапроса = ТекстПоляИтоговЗапроса + ",
            |    СУММА(" + ИмяПоля + ")";

            ТекстПоляУпорядочивания = ТекстПоляУпорядочивания + ",
            |    " + ИмяПоля;

            СтруктураПредставлениеПолей.Вставить(ИмяПоля, ПредставлениеПоля);
        ИначеЕсли ТипОтчета = "ОстаткиИОбороты" Тогда
            ТекстПоляПоказатели = ТекстПоляПоказатели + ",
            |    " + СтрЗаменить("СУММА("+ОписаниеПоля+")","#", "НачальныйОстаток") + " КАК " + ИмяПоля + "НачальныйОстаток,
            |    " + СтрЗаменить("СУММА("+ОписаниеПоля+")","#", "КонечныйОстаток")  + " КАК " + ИмяПоля + "КонечныйОстаток,
            |    " + СтрЗаменить("СУММА("+ОписаниеПоля+")","#", "Приход")           + " КАК " + ИмяПоля + "Приход,
            |    " + СтрЗаменить("СУММА("+ОписаниеПоля+")","#", "Расход")           + " КАК " + ИмяПоля + "Расход";

            ТекстПоляИтоговЗапроса = ТекстПоляИтоговЗапроса + ",
            |    СУММА(" + ИмяПоля + "НачальныйОстаток),
            |    СУММА(" + ИмяПоля + "КонечныйОстаток),
            |    СУММА(" + ИмяПоля + "Приход),
            |    СУММА(" + ИмяПоля + "Расход)";

            ТекстПоляУпорядочивания = ТекстПоляУпорядочивания + ",
            |    " + ИмяПоля + "НачальныйОстаток,
            |    " + ИмяПоля + "КонечныйОстаток,
            |    " + ИмяПоля + "Приход,
            |    " + ИмяПоля + "Расход";

            
            СтруктураПредставлениеПолей.Вставить(ИмяПоля+"НачальныйОстаток", ПредставлениеПоля + " нач.ост.");
            СтруктураПредставлениеПолей.Вставить(ИмяПоля+"КонечныйОстаток", ПредставлениеПоля + " кон.ост." );
            СтруктураПредставлениеПолей.Вставить(ИмяПоля+"Приход", ПредставлениеПоля+" приход");
            СтруктураПредставлениеПолей.Вставить(ИмяПоля+"Расход", ПредставлениеПоля+" расход");
        КонецЕсли;
        // Показатели заносятся в специальную таблицу
        СтрПоказатели = Контекст.мТаблицаПоказатели.Добавить();
        СтрПоказатели.ИмяПоля           = ИмяПоля;
        СтрПоказатели.ПредставлениеПоля = ПредставлениеПоля;
        СтрПоказатели.ФорматнаяСтрока   = ФорматнаяСтрока;

        // ... и добавляются в список
        Показатель = Контекст.Показатели.Добавить();
        Показатель.Имя           = ИмяПоля;
        Показатель.Представление = ПредставлениеПоля;
        Показатель.Использование = ВклПоУмолчанию;
                
КонецЕсли;



4. Общий модуль «Отчеты», процедура «ЗаполнитьНачальныеНастройкиПоМетаданнымРегистра» делаем левое соединение с регистром сведений «ЦеныНоменклатуры», причем соединяем не только по номенклатуре, но и обязательно по характеристикам. Накладываем условие на регистр по типу цен «ЦенаХ».
    |ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
    |    ЦеныНоменклатурыСрезПоследних.Цена КАК ЦенаХ,
    |    ЦеныНоменклатурыСрезПоследних.Номенклатура КАК НоменклатураХ,
    |    ЦеныНоменклатурыСрезПоследних.ХарактеристикаНоменклатуры КАК ХарактеристикаХ
    |        ИЗ
    |    РегистрСведений.ЦеныНоменклатуры.СрезПоследних(&ДатаКон, ТипЦен = &Упр) КАК ЦеныНоменклатурыСрезПоследних) КАК ВложенныйЗапрос
    |    ПО ВложенныйЗапрос.НоменклатураХ = ТаблицаРегистра.Номенклатура и ВложенныйЗапрос.ХарактеристикаХ = ТаблицаРегистра.ХарактеристикаНоменклатуры
    |//СОЕДИНЕНИЯ";



5. Устанавливаем необходимые параметры построителю отчета:
ПостроительОтчета.Параметры.Вставить("Упр",Справочники.ТипыЦенНоменклатуры.Управленческая);



Получил 5-
Batchir, Vofka, Егор Динин,
08.10.13, 13:11 [Б3 \ К1] Конфигурирование #1 «Прохладительные напитки»
Цитата(RinLis @ 19.06.13, 10:57) *
Нашла на просторах интернета как сделал этот билет человек, которому он попался на экзамене:

"Сдал недавно. Приблизительно излагаю суть задачи.
Есть оборудование, которое учитывается как необоротный актив на счете 104. Это оборудование состоит из нескольких частей - нескольких агрегатов и нескольких запчастей. В процессе эксплуатации такое оборудование может быть разобрано. Агрегаты будут учитываться на счете 1522 а запчасти попадут на склад счет 207. Изначальная стоимость оборудования равна начальной стоимости агрегатов + стоимости запчастей. Амортизируются агрегаты и запчасти пропорционально стоимости. В задаче требуется автоматизировать процесс разборки.

Как делал.
Добавил в справочник ОС табличную часть Составляющие, с колонками Составляющая(тип Объект строительства, Номенклатура) и стоимость.
Изменил процедуру ОбработкаПроведения документа СписаниеОС. После того как движения сформированы я отбираю движения Дт1522 - Кт 104, и раскладываю его на составляющие Дт1522 - Кт104 и Дт207 - Кт104. Надо еще не забыть сделать запись в регистре ПартииТоваровНаСкладах, предварительно добавив этот регистр в движения документа. По партиям оприходуем только запчасти. Обязательно надо сделать отчет. Он не сложный, делается в консоли отчетов или с помощью компоновки.

Как сдавал.
Преподаватель был в хорошем настроении. Код не смотрел. Смотрел движения документа и формы справочников. Спрашивал про то как делал . Смотрел отчет"


Когда-то несколько лет назад попался мне этот билет я его как-то так и пытался сделать. С концепцией преподаватель был согласен, но у меня тогда не получилось законченное рабочее решение, я не сдал.

Сейчас сделал по новой.
Вот мой вариант решения, только без отчета.
AgA, Ana-yulia, mister-x,

RSS Текстовая версия Сейчас: 26.04.24, 9:24
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!