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

Хранилище

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

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




Свернуть

> Добро пожаловать на наш форум

Здравствуйте уважаемый посетитель. К сожалению вы не были распознаны форумом как зарегистрированный пользователь. Для полноценного использования возможностей нашего форума вам необходимо зарегистрироваться. Если вы уже зарегистрированы на форуме, то вам необходимо пройти авторизацию, используя Ваш логин и пароль.

Логин:   
Пароль:
 

Форум:

Новые темы (за 20 дней):

Последние сообщения:

Наши сервисы:

Дополнительно:

Новости для бухгалтера:

 
Ошибка при расчете ЕСВ, 1С Бухгалтерия 7.7 для Украины
Автор marmidon — 27.08.16, 11:59 — 0 комментариев
Добрый день. Пользуюсь платформой 7.70.027 конфигурация "Бухгалтерский учет" для Украины (7.70.319) При начислении заработной платы в Своде отчислений в Фонды программа неверно указывает сумму начислений (на скриншоте отметил стрелочками). Отсюда идет неверный расчет ЕСВ. Причем ошибка только у одного человека. Проблема появилась при начислении за июль, а до этого было нормально. Как это исправить?

Просмотров: 35, оставить комментарий | Просмотр полной темы | Просмотр раздела "1С Бухгалтерия 7.7 для Украины"   
Официальное обновление по ИТС, Тематическое общение
Автор alexfc — 26.08.16, 18:04 — 0 комментариев
В августе пробежалась черная кошка 1С по рядам франчайзинговых компаний Киева.
В результате у 15 фирм отозван партнерский договор. Теперь они не франчи.
Поэтому совет сотрудникам франч-компаний:
-будьте внимательны. Любым посторонним клиентам все обновления только через подписку ИТС.

А вброс был стандартный. Дайте отчет по ЕСВ , сколько будет стоить, сбросьте счет.
После сброса счета , данной компании финиш.
32541850.gif
Просмотров: 30, оставить комментарий | Просмотр полной темы | Просмотр раздела "Тематическое общение"   
Не выводятся данные без выбранной колонки, Система компоновки данных
Автор ignsv — 26.08.16, 11:45 — 4 комментариев
Отчет на СКД вытаскивает данные с РБ Хозрасчетный (остатки и обороты за период) далее к этой таблице до соединяются обороты по разным условиям. При условии если нач остатка и кон остатка не было за период данные не попадают в отчет (только оборот). При этом мои обороты вытаскиваются(соединяемые), Данные не выводятся в отчет до тех пор пока не выбирается поле Оборот(Сумма или количество) из основной таблицы (остатки и обороты) но мне они не нужны в отчете ( я их детализирую сам). В итоге думаю либо программно постобработкой прятать такую колонку, либо "объяснить" СКД что данные нужно выводить даже без вывода "служебной" колонки. (на этапе отладки запроса - данные вытаскиваются все, далее СКД уже убирает строки). Как выйти из ситуации?


upd: пока что убираю колонку программно, но непонятна зависимость((. Может кто ткнет где почитать...
    
        ГдеЯчейка = ЭлементыФормы.Результат.НайтиТекст("%СлужебнаяКолонка",,,,Истина,,);
    Если ГдеЯчейка <> Неопределено Тогда    
        Смещать = ТипСмещенияТабличногоДокумента.ПоВертикали;
        Область = ЭлементыФормы.Результат.Область(ГдеЯчейка.Верх,ГдеЯчейка.Лево,ЭлементыФормы.Результат.Высота,ГдеЯчейка.Лево);
        ЭлементыФормы.Результат.УдалитьОбласть(Область, Смещать);
    КонецЕсли;
Просмотров: 74, последний комментарий от ignsv | Просмотр полной темы | Просмотр раздела "Система компоновки данных"   
Работа со сканером в терминальном режиме, Работа с торговым оборудованием
Автор kalyamov — 26.08.16, 8:41 — 1 комментариев
Добрый день.
Конфигурация УТ. Все работают в терминальном режиме. Сканер, собственно, тоже работает, но так как это терминал, то он пытается подключиться у всех пользователей. Как ограничить программно это неудобство.
Спасибо.
Просмотров: 70, последний комментарий от logist | Просмотр полной темы | Просмотр раздела "Работа с торговым оборудованием"   
Изменился путь к базе данных, С чем мне приходилось сталкиваться...
Автор Nata88 — 25.08.16, 19:39 — 40 комментариев
Пока одна из сотрудниц была в отпуске за ее компьютером в 1С работали другие.

Она вышла и обнаружилось, что путь к базе данных указывает на диск F, а сама база переместилась.
Начались поиски виноватых и весь офис буквально сума сошел. Возможно ли, что это произошло случайно????? Из-за ошибки ...кто-то что-то случайно нажал, глюк 1С и т.п.???? Или точно кто-то базу себе на флешку сбрасывал?????

Помогите, пожалуйста!
Просмотров: 573, последний комментарий от Vofka | Просмотр полной темы | Просмотр раздела "С чем мне приходилось сталкиваться..."   
Отчет ОстаткиДвижениеСтоимость для 1с77 бух, Программирование в 1С Предприятие 7.7
Автор inna.innainna84 — 25.08.16, 8:50 — 0 комментариев
Прошу помощи с отчетом. Сортирует данные в общем , не выбирает движение товара по выбранной фирме.
Код
//astonvilla@rambler.ru
//Костецкий В.А. aka astonvilla
//
// ===============================
// ОПИСАНИЕ МОДУЛЬНЫХ ПЕРЕМЕННЫХ
// ===============================

// используются для стандартного механизма кнопок "Обновить" и "Настройка"
Перем Таб;

// переменные предназначены для запроса по периодам
Перем Запрос;
Перем Язык, УкрГруппировки;

Перем ОтчетСформирован;  

Перем ПечОстаток,ПечСтоимость,ИтПечСтоимость;

Перем Ит, ТекЗакладка;

Перем СписокПодбора,СправочникПодбора;
Перем СписокТоваров;         // список товаров, удовлетворяющих фильтру по ТМЦ

Перем ЕстьГруппыТМЦ, СпСчетов;
// ===============================
// ПРОЦЕДУРЫ И ФУНКЦИИ, ВЫЗЫВАЕМЫЕ ИЗ ФОРМУЛ ЭЛЕМЕНТОВ ДИАЛОГА
// ===============================

Функция МножественныйФильтрЗадан(СпЗнач_)      
    Если СпЗнач_.РазмерСписка()>0 Тогда
        Возврат 1;
    КонецЕсли;
    Возврат 0;
КонецФункции // МножественныйФильтрЗадан    

Процедура РаботаСоСписком(Режим,Список,ТипСправочника)
    Перем ТекПоз;
    Перем ТекЭлемент;
    Перем Фрм;
    
    ТекПоз = Список.ТекущаяСтрока();
    Если ТекПоз>0 Тогда
        ТекЭлемент=Список.ПолучитьЗначение(ТекПоз);
    КонецЕсли;
    
    Если Режим="Добавить" Тогда        // добавляем в список один элемент
        СписокПодбора = Список;
        СправочникПодбора = ВРег(ТипСправочника);
        // открываем окно подбора
        ОткрытьПодбор("Справочник."+ТипСправочника,,Фрм,0,ТекЭлемент);
        Фрм.ВыборГруппы(1);
        
    ИначеЕсли Режим="ДобавитьНесколько" Тогда  // добавляем в список несколько элементов
        СписокПодбора = Список;
        СправочникПодбора = ВРег(ТипСправочника);
        // открываем окно подбора
        ОткрытьПодбор("Справочник."+ТипСправочника,,Фрм,1,ТекЭлемент);
        Фрм.ВыборГруппы(1);
        
    ИначеЕсли Режим="УдалитьВсе" Тогда    // удаляем все элементы из списка
        Список.УдалитьВсе();
        Если ВРег(ТипСправочника) = "НОМЕКЛАТУРА" Тогда
            ЕстьГруппыТМЦ = 0;
        КонецЕсли;
    ИначеЕсли Режим="Удалить" Тогда    // удаляем из списка один элемент
        Если ТекПоз>0 Тогда
            Если ВРег(ТипСправочника) = "НОМЕКЛАТУРА" Тогда
                ЕстьГруппыТМЦ = ЕстьГруппыТМЦ-ТекЭлемент.ЭтоГруппа();
            КонецЕсли;
            Список.УдалитьЗначение(ТекПоз);
        КонецЕсли;
    КонецЕсли;
    
КонецПроцедуры        // работа со списком

//******************************************************************************
Процедура ОбработкаПодбора(Значение)  // Предопределенная процедура
    Если ПустоеЗначение(СправочникПодбора)=1 Тогда
        Возврат;
    КонецЕсли;
    
    Если (Найти(СправочникПодбора,",")>0)И(Найти(СправочникПодбора,ВРег(Значение.Вид()))>0)ИЛИ
    (ВРег(Значение.Вид())=СправочникПодбора) Тогда
        Если (СписокПодбора.НайтиЗначение(Значение)=0) Тогда
            Если ВРег(СправочникПодбора) = "НОМЕКЛАТУРА" Тогда
                ЕстьГруппыТМЦ = ЕстьГруппыТМЦ+Значение.ЭтоГруппа();
            КонецЕсли;
            СписокПодбора.ДобавитьЗначение(Значение);
            СписокПодбора.ТекущаяСтрока(СписокПодбора.РазмерСписка());
        КонецЕсли;    
    КонецЕсли;
КонецПроцедуры  // ОбработкаПодбора

//******************************************************************************
// Процедура изменяет состояние отметок вывода таблицы группировок отчета
Процедура глПометкаТаблицыГруппировок(Группировки,Флаг)
    
    Для индГруп = 1 По Группировки.РазмерСписка() Цикл
        Если Флаг = -1 Тогда
            Группировки.Пометка(индГруп, 1 - Группировки.Пометка(индГруп));
        Иначе
            Группировки.Пометка(индГруп, Флаг);
        КонецЕсли;
    КонецЦикла;
    
КонецПроцедуры // глПометкаТаблицыГруппировок()  

//******************************************************************************
Процедура глОживить(ДобСтрок) Экспорт
    глЧислоСтрок = глЧислоСтрок + ДобСтрок;
    Состояние("В отчет выведено "+глЧислоСтрок+" строк.");
КонецПроцедуры

// ===============================

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

    Таб.ПрисоединитьСекцию("Итого|ВсеСклады");
    Если ПустоеЗначение(ВыбМестоХранения) = 1 Тогда
        //=======================
        ТаблСкладов.ВыбратьСтроки();
        Пока ТаблСкладов.ПолучитьСтроку() = 1 Цикл
            Если Ит.ПолучитьСубконто(1,,ТаблСкладов.Склад) = 1 Тогда
                ПечОстаток = Ит.СКД(3);
            Иначе
                ПечОстаток = 0;
            КонецЕсли;
            Таб.ПрисоединитьСекцию("Итого|Склад");
        КонецЦикла;
    КонецЕсли;
    
    //------------------------------------------------------
    // Вывод заполненной формы
    Таб.Защита(Константа.ФлагЗащитыТаблиц);
    Таб.ТолькоПросмотр(1);
    Таб.Показать("ПЕЧАТЬ: Остатки ТМЦ на складах (На "+Дата2+?(ТипЗначения(ВыбФирма)=0, "", ", "+ВыбФирма)+")","");
    ОтчетСформирован = 1;
    
КонецПроцедуры        // ОстаткиТоваров

// ===============================
Процедура ВывестиДокументыДвиженияТоваров(Запрос,Таб)  
    ПечКонКол=Запрос.СНД(3);
    Запрос.ВыбратьПериоды();
    Пока Запрос.ПолучитьПериод() = 1 Цикл
        Док=Запрос.Операция.Документ;
        Если ПустоеЗначение(Док) = 1 Тогда
            Продолжить;
        КонецЕсли;
        Наим = Док;
        ПечПрихКол = Запрос.ДО(3);
        ПечРасхКол = Запрос.КО(3);
        ПечКонКол    = ПечКонКол + ПечПрихКол - ПечРасхКол;
        Таб.ВывестиСекцию("Док");
    КонецЦикла;    
КонецПроцедуры // ВывестиДокументыДвиженияТоваров

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

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


// ===============================
// ПРОЦЕДУРЫ И ФУНКЦИИ, ВЫЗЫВАЕМЫЕ ИЗ ФОРМУЛ ЭЛЕМЕНТОВ ДИАЛОГА
// ===============================

// ===============================
Функция ДоступностьЭлементов(ВсеЭлементы=0)          
    Если ТекЗакладка = 1 Тогда
        Если ВидОтчета.ТекущаяСтрока() = 1 Тогда    // движения ТМЦ
            Форма.тПериод.    Видимость(1);
            Форма.тС.        Видимость(1);
            Форма.Дата1.    Видимость(1);
            Форма.кПериод.    Видимость(1);
            Форма.тПо.Заголовок("по");
            
            Форма.Заголовок("Движения товаров по складам");
            Форма.тНазвание.Заголовок("Движения товаров по складам");
            
            Форма.рДетализация.        Доступность(1);
            Форма.ДеталПоСкладам.    Доступность(1);
            Форма.ДеталПоДокументам.Доступность(1);
            
        ИначеЕсли ВидОтчета.ТекущаяСтрока() = 2 Тогда  // остатки ТМЦ
            Форма.тПериод.    Видимость(0);
            Форма.тС.        Видимость(0);
            Форма.Дата1.    Видимость(0);
            Форма.кПериод.    Видимость(0);
            Форма.тПо.Заголовок("На");
            
            Форма.Заголовок("Остатки товаров на складах");
            Форма.тНазвание.Заголовок("Остатки товаров на складах");
            
            Форма.рДетализация.        Доступность(0);
            Форма.ДеталПоСкладам.    Доступность(0);
            Форма.ДеталПоДокументам.Доступность(0);
            ДеталПоСкладам        = 1;
            ДеталПоДокументам    = 0;
            
        Иначе    // стоимость ТМЦ на складах
            Форма.тПериод.    Видимость(0);
            Форма.тС.        Видимость(0);
            Форма.Дата1.    Видимость(0);
            Форма.кПериод.    Видимость(0);
            Форма.тПо.Заголовок("На");
            
            Форма.Заголовок("Суммовые остатки товаров на складах");
            Форма.тНазвание.Заголовок("Суммовые остатки товаров на складах");
            
            Форма.рДетализация.        Доступность(0);
            Форма.ДеталПоСкладам.    Доступность(0);
            Форма.ДеталПоДокументам.Доступность(0);
            ДеталПоСкладам        = 0;
            ДеталПоДокументам    = 0;
        КонецЕсли;
        
        Форма.кХВыбФирма.Доступность(ВыбФирма.Выбран());
        Форма.кХВыбМестоХранения.Доступность(ВыбМестоХранения.Выбран());
        Форма.кХВыбНоменклатура.Доступность(ВыбНоменклатура.Выбран());
    Иначе
        Форма.тПериод.    Видимость(0);
        Форма.тС.        Видимость(0);
        Форма.Дата1.    Видимость(0);
        Форма.кПериод.    Видимость(0);
        
    КонецЕсли;
    
КонецФункции     // ДоступностьЭлементов

// ===============================
Процедура ВыберемВсеЭлементыСписка(СписокТоваров)
    Перем Запрос, ТекстЗапроса;
    Запрос = СоздатьОбъект("Запрос");
    ТекстЗапроса =
    "//{{ЗАПРОС(Сформировать)
    |ТекущийЭлемент = Справочник.ТМЦ.ТекущийЭлемент;
    |Группировка ТекущийЭлемент;
    |Условие(ТекущийЭлемент в СписокТоваров);";
    
    Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
        Возврат;
    КонецЕсли;

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


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


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


// ===============================
Процедура ПриОткрытии()    
    ВыбВалюта = Гривня;
    
    ВидОтчета.ТекущаяСтрока(2);
    
    Форма.тПериод.    Видимость(0);
    Форма.тС.        Видимость(0);
    Форма.Дата1.    Видимость(0);
    Форма.кПериод.    Видимость(0);
    Форма.тПо.Заголовок("На");
    
    Форма.Заголовок("Остатки товаров на складах");
    Форма.тНазвание.Заголовок("Остатки товаров на складах");
    
    Форма.рДетализация.        Доступность(0);
    Форма.ДеталПоСкладам.    Доступность(0);
    Форма.ДеталПоДокументам.Доступность(0);
    ДеталПоСкладам        = 1;
    ДеталПоДокументам    = 0;

    Товар.ДобавитьЗначение("281,","Товары на опт. складе");
    Товар.ДобавитьЗначение("282","Товары в рознице");
    Товар.ДобавитьЗначение("283","Товары на комиссии");
    Товар.ДобавитьЗначение("284","Тара под товарами");
    Товар.ДобавитьЗначение("20","Производственные запасы");  
    Товар.ДобавитьЗначение("22","Малоценные и быстроизнашивающиеся предметы");
    Товар.ДобавитьЗначение("24","Брак в производстве");
    Товар.ДобавитьЗначение("25","Полуфабрикаты");
    Товар.ДобавитьЗначение("26","Готовая продукция");
    Товар.ДобавитьЗначение("27","Продукция сельского хозяйства");
    
    глПометкаТаблицыГруппировок(Товар,1);
    // будем отслеживать только реальные изменения этих реквизитов
    Форма.ВидОтчета.ВыполнятьФормулуТолькоПриИзменении(1);
    
    Форма.Обновить(1);
КонецПроцедуры        // ПриОткрытии()  


// ===============================
Процедура ВводНового()    // Предопределенная процедура
КонецПроцедуры            // ВводНового


// ===============================
// ТЕЛО МОДУЛЯ
// ===============================

// Инициализируем закладки
Форма.ИспользоватьЗакладки(1);
Форма.Закладки.ДобавитьЗначение("Основной","Основной");
Форма.Закладки.ДобавитьЗначение("Счета","Множественный Фильтр");
Форма.ИспользоватьСлой("Основной,Кнопки",2);
ТекЗакладка = 1;

// инициализация границ периодов
Дата2=ТекущаяДата();
Дата1=ТекущаяДата();

ВыбФирма = Константа.БазФирма;
ВыбМестоХранения = глВосстановитьЗначение(,"БазМестоХранения");

// инициализация списков                          
ВидОтчета.УдалитьВсе();
ВидОтчета.ДобавитьЗначение("движения ТМЦ");
ВидОтчета.ДобавитьЗначение("остатки ТМЦ");
ВидОтчета.ДобавитьЗначение("стоимость ТМЦ на складах");
ВидОтчета.ТекущаяСтрока(2);                        

ЕстьГруппыТМЦ = 0;



 ! 

Правила: 3, 4
 


 ! 

Раздел "Хранилище" предназначен для выкладывания готовых решений, а не для вопросов!
 
Просмотров: 66, оставить комментарий | Просмотр полной темы | Просмотр раздела "Программирование в 1С Предприятие 7.7"   
Учет себестоимости в УТ 10.3.29.1 (8.2.19.102), Управление торговлей для Украины редакция 2 (Управление торговлей для России редакция 10)
Автор Constantus — 24.08.16, 13:20 — 2 комментариев
Приветствую, Форумчане!

УТ 10.3.29.1 (8.2.19.102), обычный.

В предыдущих версиях (релизах), в Настройках Учета был вкладыш: "Параметры партионного учета" с константами:
1. Списание при проведение в упр.учете
2. Вести учет себестоимости по складам в упр.учете

Как я понимаю, это всё отвечает за себестоимость и отражается в отчетах, где учитывается себестоимость.
Например в "Валовом отчете" видна графа себестоимость с соответствующими данными.

Перешел на новый релиз 10.3.29.1. В Настройках Параметров Учета такого вкладыша нету. Также в "Константах" тоже нет соответствующих констант (сравнивал).
При выводе отчетов, где есть графы "Себестоимость" (Например, "Валовый отчет") все себестоимости пусты...

Как правильно настроить этот новый релиз, чтобы производился расчет и учет себестоимости при поступлении товара. Ну и соответственно правильное списание по себестоимости при проведении?
Просмотров: 118, последний комментарий от Constantus | Просмотр полной темы | Просмотр раздела "Управление торговлей для Украины редакция 2 (Управление торговлей для России редакция 10)"   
Справочник налоги как создать Свои налоги, Программирование обычных форм 1С 8.2
Автор roman457 — 23.08.16, 20:11 — 2 комментариев
Платформа 8,3, 99
Конфигурация Абби Бухгалтерия для украины 1.2.37.1.
Долго описывать не буду . проблема в следующем мне попалась конфигурация Бухгалтерии с доработанной УТП-шной Зарплатой и ещё несколькими документами. Всё работало пока кто-то не накатил пару стандартных обновлений( справочник налоги соответственно после релиза перезаполнился и то что требуется документам с утп частично отсутсвует. Хотелось бы понять как правильно внести дополнения в этот справочник
Справочники.Налоги
. Внесение налогов из под Предприятия не дал результатов в справочнике есть ,но в конфигураторе и отладчике не имеем такого налога. Где-то краем читал что какая-то служебная обработка должна это делать. дайте ссылку где можно почитать , или пример. Или как перезаполнить ( макет дополнил). Спасибо за любое нравоучение.
Просмотров: 88, последний комментарий от roman457 | Просмотр полной темы | Просмотр раздела "Программирование обычных форм 1С 8.2"   
Вітаємо з Днем Незалежності України!, Офф-топик
Автор Володя Гройсман — 23.08.16, 15:50 — 1 комментариев
Всі успіхи нашої держави складаються з успіхів і досягнень кожного небайдужого українця!

Давайте з нагоди важливого свята України щиро покладатися на успіх наших спільних дій і продовження активної співпраці, яка об'єднує нас, зміцнює нашу державу.

Бажаємо вам і вашим родинам міцного здоров'я, благополуччя, життєвої наснаги, впевненості у власних силах і нових звершень на благо України.
Просмотров: 114, последний комментарий от XBrut | Просмотр полной темы | Просмотр раздела "Офф-топик"   
Отказ при вводе на основании, 1С Предприятие 8
Автор Vofka — 23.08.16, 15:33 — 0 комментариев
Ситуация
Есть заказы с сайта, которые приходят в 1С в виде отдельных документов "заказы с сайты". Эти заказы обрабатывает менеджер и на основании заказа с сайта вводит заказ покупателя и дальше уже процесс известен. В компании действуют акционные предложения для новых клиентов. Соответственно, один и тот же реальный клиент может зарегистрироваться на сайте под разными учетными записями и активировать себе акцию. Специально или просто забыл, что уже есть зарегистрированная учетка. Когда заказ с сайта приходит в 1С, менеджер созванивается с клиентом и уточняет детали. В ходе этого разговора может выяснится, что это действующий клиент, который уже что-то покупал. А для такого клиента акция не должна работать.

Задача
Сделать что-то, чтобы менеджер не мог оформить заказ покупателя.

Решение
Вариантов решения может быть много. Мне больше всего нравится сценарий, когда при вводе на основании программа скажет "извините, но больше нельзя". Когда происходит ввод на основании, срабатывает событие ОбработкаЗаполнения. Мы первым делом идем туда и хотим там вставить Отказ. Но зайдя внутрь этой процедуры, с грустью констатируем тот факт, что там нету Отказа. Ищем другой сценарий вывода сообщения? Если бы так, то не было бы смысла создавать тему smile.gif .

Что же делать? Можем создать свою кнопку ввода на основании, где выполнить все проверки и в случае успеха программно сформировать, заполнить и открыть ново создаваемый документ. Но так не охота же заморачиваться с этим. Вот если бы можно было в ОбработкеЗаполнения Отказ влепить...

Но Отказ влепить нельзя. Нашел я в интернете и мне понравился следующий способ. Он, возможно, не очень элегантен и гибок, но с данной задачей справляется нормально. Для того, чтобы прервать выполнение ОбработкиЗаполнения и отказаться от создания документа - будем генерировать ошибку сами. Вот так:

ВызватьИсключение("Извините, но больше нельзя");


Просмотров: 96, оставить комментарий | Просмотр полной темы | Просмотр раздела "1С Предприятие 8"   
Теперь можно поделиться ссылкой на тему в соц. сетях, Новости
Автор Vofka — 23.08.16, 14:18 — 0 комментариев
Справа вверху появился блок кнопочек.



Так что не стесняемся, делимся ссылками smile.gif
Просмотров: 139, оставить комментарий | Просмотр полной темы | Просмотр раздела "Новости"   
УПП 1.3 Сдельная Оплата как вытесняющий вид, 1С Управление производственным предприятием 8
Автор alexandr_f — 23.08.16, 9:23 — 5 комментариев
Можно ли сделать вытеснение Повременной оплаты сдельным нарядом.
Типа - повременка - основное начисление. Но рабочий может работать сдельно. Надо учесть его рабочее время как отработанное , сделав вытеснение времени ( с проверкой естественно). метод учета рабочего времени - путем отклонений.
У меня получается либо заменой Основного начисления на сдельный наряд. Но это нехорошо. Надо дать возможность часть рабочего времени по сделке, остальное по повременке
с контролем нормы времени.
Можно как добавить сделку как дополнительное время - но тогда нет контроля нормы времени
Просмотров: 190, последний комментарий от sava1 | Просмотр полной темы | Просмотр раздела "1С Управление производственным предприятием 8"   
Изменение цены для групы товаров, Управление торговлей для Украины редакция 3 (Управление торговлей для России редакция 11)
Автор usser — 22.08.16, 22:00 — 3 комментариев
1С:Предприятие 8.3 Конфигурация: Управление торговлей для Украины, редакция 3.0

Доброго времени суток, может подскажет кто то, как правильно изменять цены для групы товаров, то есть выбрать несколько значений из номенклатуры, а потом периодически изменять для них цены ? Каким документом ?
Просмотров: 128, последний комментарий от Vofka | Просмотр полной темы | Просмотр раздела "Управление торговлей для Украины редакция 3 (Управление торговлей для России редакция 11)"   
Контролировать сумму задолжности в УТ30 по партнерм (запрет продажи если есть задолжность), Управление торговлей для Украины редакция 3 (Управление торговлей для России редакция 11)
Автор zetovich — 22.08.16, 13:06 — 5 комментариев
Для Российской 11 я нашел как, а как для Украинской?
п.с. гугл только про Российскую знает sad.gif
Спаисбо!


 ! 

Правила: 5
 


 ! 

И при создании темы надпись: Дополнительное описание или логическое продолжение названия темы, если не удалось впихнуть смысловую нагрузку темы только в название.
Ну как же так...
 
Просмотров: 148, последний комментарий от Acid | Просмотр полной темы | Просмотр раздела "Управление торговлей для Украины редакция 3 (Управление торговлей для России редакция 11)"   
Postgre SQL, размеры таблиц БД, Базы данных
Автор onsamuy — 22.08.16, 11:30 — 1 комментариев
Доброго всем дня. Как можно получить информацию о размере таблиц БД? База занимает много места, тормозит. Под ms sql пользовался скриптом приведенным ниже.
USE [DataBase]
GO
CREATE TABLE #temp (
table_name sysname ,
row_count INT,
reserved_size VARCHAR(50),
data_size VARCHAR(50),
index_size VARCHAR(50),
unused_size VARCHAR(50))
SET NOCOUNT ON
INSERT #temp
EXEC sp_msforeachtable 'sp_spaceused ''?'''
SELECT a.table_name,
a.row_count,
COUNT(*) AS col_count,
a.data_size
FROM #temp a
INNER JOIN information_schema.columns b
ON a.table_name collate database_default
= b.table_name collate database_default
GROUP BY a.table_name, a.row_count, a.data_size
ORDER BY CAST(REPLACE(a.data_size, ' KB', '') AS integer) DESC
DROP TABLE #temp


А есть что то подобное для POSTGRE? Пока нарыл только вот это: SELECT pg_size_pretty(pg_database_size('database_name')); - получение общего размера БД
Просмотров: 171, последний комментарий от Acid | Просмотр полной темы | Просмотр раздела "Базы данных"   
время документа, 1С Бухгалтерия 8
Автор senia — 21.08.16, 15:24 — 9 комментариев
у меня 1С:Підприємство 8.2 (8.2.19.130) Бухгалтерия для Украины, редакция 1.2.
Разработка конфигурации: "ABBYY Ukraine", 2005-2016 (1.2.37.1) (http://1c.ua/v8/RegionalSolutions_UA_BUH.php)
мне нужно перепровести все налоговые накладные (изменить время на конец дня)
подскажите пожалуйста, как это можно сделать
если я делаю групповое перепроведение, то там можно поменять только вместе с датой, мне это не подходит, дату нужно оставить как есть
Просмотров: 313, последний комментарий от Petre | Просмотр полной темы | Просмотр раздела "1С Бухгалтерия 8"   
Канхвуз з електронним декларуванням, Офф-топик
Автор XBrut — 19.08.16, 17:11 — 16 комментариев
Українська правда опубліковала блог Антона Геращенко що до електронного декларування
[необходимо зарегистрироваться для просмотра ссылки]
якщо я не помиляюсь - це заявка на скандал.
А кажуть, що на прес-конференції представники "Міранди" сказали мов "доведіть, що це декларація тієї самої людии, що ви кажете".
Цікава позиція. Доведіть що це та сама людина. smile.gif то хто завгодно буде казати : "доведіть , що це я". Порошенко скаже "доведіть, що це я".
Я навіть не полінувавя подивитись на ту декларацію
[необходимо зарегистрироваться для просмотра ссылки]

як то писали колись "все цікавіше і цікавіше"

П.С.
доречі. чергове лайно з ціми "крупними хвірмами" в яких "окрема реальність"
Просмотров: 409, последний комментарий от XBrut | Просмотр полной темы | Просмотр раздела "Офф-топик"   
Заполнение обработки из справочника, Программирование в 1С Предприятие 7.7
Автор SvitlaChek — 19.08.16, 13:26 — 10 комментариев
Создала справочник "Почта"
в нем 2 реквизита
- строка "Тема"
-многострочная строка "Текст"
в режиме предприятие внесла несколько строчек
и записала.

Для обработки я создала
-поле со списком "Шаб"
-реквизит диалога "Тек"

Необходимо, что бы инф. внесенная в
спраовчник, отображалсь в обработке.

Как это сделать?





 ! 

Правила: 4,5
 
Просмотров: 393, последний комментарий от Vofka | Просмотр полной темы | Просмотр раздела "Программирование в 1С Предприятие 7.7"   
Выбрать только оплаченые реализации., Программирование обычных форм 1С 8.2
Автор Pashaboston — 19.08.16, 9:51 — 7 комментариев
Конфигурация УТП для Украины (1.2.35.1), расчеты с контрагентами ведутса по договору в целому
Задача состоит в том чтобы выбирать только оплаченые накладные(по ним считается зарплата для торговых агентов), есть запрос где выбираются все реализации
"ВЫБРАТЬ
                               |    РеализацияТоваровУслуг.Ответственный КАК Ответственный,
                               |    ПРЕДСТАВЛЕНИЕ(РеализацияТоваровУслуг.Ответственный),
                               |    РеализацияТоваровУслуг.ТипЦен,
                               |    пиПроцентЗарплаты.Процент КАК Процент,
                               |    РеализацияТоваровУслугТовары.Номенклатура КАК Номенклатура,
                               |    ПРЕДСТАВЛЕНИЕ(РеализацияТоваровУслугТовары.Номенклатура),
                               |    РеализацияТоваровУслугТовары.Количество,
                               |    РеализацияТоваровУслугТовары.Цена,
                               |    РеализацияТоваровУслугТовары.Сумма КАК Сумма,
                               |    РеализацияТоваровУслугТовары.Сумма / 100 * пиПроцентЗарплаты.Процент КАК ПроцентЗП,
                               |    РеализацияТоваровУслуг.Ссылка КАК Реализация
                               |ИЗ
                               |    Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары
                               |        ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
                               |        ПО РеализацияТоваровУслугТовары.Ссылка = РеализацияТоваровУслуг.Ссылка
                               |        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.пиПроцентЗарплаты КАК пиПроцентЗарплаты
                               |        ПО (РеализацияТоваровУслуг.Товары.Номенклатура = пиПроцентЗарплаты.Номенклатура)
                               |            И РеализацияТоваровУслугТовары.Ссылка.ТипЦен = пиПроцентЗарплаты.ТипЦен.Ссылка
                               |ГДЕ
                               |    РеализацияТоваровУслуг.Дата МЕЖДУ &ДатаНач И &ДатаКон
                               |{ГДЕ
                               |    РеализацияТоваровУслуг.Ответственный}
                               |ИТОГИ
                               |    СУММА(Сумма),
                               |    СУММА(ПроцентЗП)
                               |ПО
                               |    Ответственный,
                               |    РеализацияТоваровУслуг.Контрагент,
                               |    Реализация";
Просмотров: 292, последний комментарий от sava1 | Просмотр полной темы | Просмотр раздела "Программирование обычных форм 1С 8.2"   
Торговая наценка на товар в рознице, 1С Управление Торговым Предприятием 8
Автор TanyaS_1 — 19.08.16, 8:48 — 3 комментариев
Добрый день! Нам поступил товар, в 1С занесли следующие документы: Поступление товаров и услуг -100грн и Поступление доп. расходов-200грн (транспортные расходы). Далее перемещаем товар на розничный склад- документ Перемещение товаров. Формируются проводки: Дт281 Кт631 -300грн, Дт282 Кт285 -(100+25%)-300. Немного запутались, насколько правильно просчитывается торговая наценка. Почему наценка идет только на цену поставщика, а не на цену с расходами (300+25%)-300? Спасибо
Просмотров: 277, последний комментарий от Егор Динин | Просмотр полной темы | Просмотр раздела "1С Управление Торговым Предприятием 8"   
RSS Текстовая версия Сейчас: 27.08.16, 22:22
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!

Курсы валют: доллар США к гривне Курсы валют: евро к гривне Курсы валют: российский рубль к гривне