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

Хранилище

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

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



История благодарностей участнику Sharzem ::: Спасибо сказали: 76 раз
Дата поста: В теме: За сообщение: Спасибо сказали:
26.03.20, 10:29 Как создать документ из справочника контрагентов?
Prospero @ Вчера, 22:30 * ,
Ні, не вірно. В Вашому прикладі будуть створюватися пусті документи які будуть нікому не потрібні.
По перше, в документі в процедурі ПриОткрытии() необхідно:
Процедура ПриОткрытии()
    Если ПустоеЗначение(Форма.Параметр) = 0 Тогда
        Если ТипЗначения(Форма.Параметр) = 11 Тогда
            Контрагент = Форма.Параметр;
        КонецЕсли;
    КонецЕсли;
КонецПроцедуры

По друге, визивати з модуля довідника потрібно наступним чином:
    Если ТекущийЭлемент().ЭтоГруппа() = 0 Тогда
        ОткрытьФорму("Документ.Ваш_документ",ТекущийЭлемент());
    КонецЕсли;

При такому розвитку, введення Нового документу можливо припинити, оскільки відсутній метод Документ.Записать().
4andriy,
25.10.19, 7:17 Как текст на форме сделать невидимым? Проблема 1С 7.70.003 торговля склад для Украины?
ZUBR @ Вчера, 23:04 * ,
Цитата
Як при виборі закладок викликати СПЛАЧЕНО?

Процедура Сплачено()                   
    Если Спл=0 тогда
        Форма.СПЛАЧЕНО.Видимость(0);
    Иначе
        Форма.СПЛАЧЕНО.Видимость(1);
    КонецЕсли;
КонецПроцедуры

Процедура ПриВыбореЗакладки(Номер,Значение)
       .......
       Сплачено();
КонецПроцедуры

Процедура ПриОткрытии()
       ......
       ПриВыбореЗакладки(1,"Основной");
КонецПроцедуры

Все.
ZUBR,
24.10.19, 17:30 Как текст на форме сделать невидимым? Проблема 1С 7.70.003 торговля склад для Украины?
Цитата(volodya1122 @ 24.10.19, 10:14) *
В 1с7 повноцінних закладок немає

44000000.gif
Цитата(volodya1122 @ 24.10.19, 10:14) *
Попробую пояснити те що написала nysysimara

Цитата(volodya1122 @ 24.10.19, 10:14) *
Процедура ПриВыбореЗакладки виконується пільки при відкритті форми справочника (в даному випадку) і при виборі закладки.

Цитата(volodya1122 @ 24.10.19, 10:14) *
4. При відкритті форми флажок "Спл" мав би дорівнювати нулю (якшо інше не задано прорамою. Або це не реквізик справочника.

Цитата(volodya1122 @ 24.10.19, 10:14) *
5. Коли на формі ви міняєте значення флажка тоді потрібно на флажок повісити виклик процедури ПриВыбореЗакладки(1,"Основной") або іншої, яка б міняда видимість/доступність іншого реквізиту.

faceoff.gif
12201689.gif
Еххх, Вова, Вова... Нагородив городу... Це Вам не найвища математика. Тут людині потрібно при відкритті викликати ПриВыбореЗакладки() та при виборі закладки викликати Сплачено()... А Ви стільки всього нагородили.....

Nysysimara також... Мабуть, 7.7. вже забули...
ZUBR,
20.10.19, 8:48 Можно ли сделать автоматическое обновление отчета? 1с 7.7 конф 7.7.003
ZUBR @ Вчера, 19:29 * ,
Можна виконувати постійне оновлення звіту через певний проміжок часу... Постійно потрібно опитувати відкриті в даний час вікна і при активації форми сформованого звіту оновити його якщо сплив потрібний час. Без компоненти Formex та його об'єктів "РасширениеФормы" та "Окна" не обійтися. Це буде таке собі збочення. Простіше натискати кнопочку.
ZUBR,
06.09.19, 16:33 Импорт из Аваль Банка
Цитата(bezzil @ 06.09.19, 13:59) *
приходится насиловать этот труп.

faceoff.gif

Він ще живий і може старітися разом з Вами...

Не полінувався, знайшов тут на стор. 46, 47

Там немає нічого особливого.
Відбулося зміщення полів. Їх потрібно "вирівняти" на своє місце. В описі все є. Як не справитесь - гукніть, накинемо двійку стрічок для виправлення.
Макс1С,
06.09.19, 9:06 Как зафиксировать шапку таблицы отчета 1с 7.7 конф 7.7.00
ZUBR @ Вчера, 0:26 * ,
Те саме, лише без попередньго підрахунку стрічок.
Таб = СоздатьОбъект("Таблица");
Таб.ИсходнаяТаблица("БАЗА комп");
Таб.ВывестиСекцию("Шапка");
Таб.Опции(0,0,Таб.ВысотаТаблицы(),0)
ТЗ.ВыбратьСтроки();
ZUBR,
06.08.19, 14:34 Не подсвечивается цветом ТЗ в 1С 7.70.003 торговля склад для Украины?
ZUBR @ 03.08.19, 17:28 * ,
Уххх, 44000000.gif
1. ТЗ має бути розташована на формі звіту (обробки).
2. Обов'язково в ТЗ має бути така колонка як FormEx_ПланРаскраски.
Від автора:
Цитата
Для ускорения и упрощения работы раскраски таблиц в компоненту с версии 2.0.5.85 введен функционал плана раскраски таблицы. Для его активизации необходимо вызвать метод ИспользоватьПланРаскраски() объекта Сервис с параметром 1 (соответсвенно, для отключения и перехода на старый принцип раскраски надо вызвать тот же метод, но с параметром 0). По умолчанию функционал плана раскраски отключен и работает старая методика раскраски.
Для реализации раскраски по новому функционалу плана раскраски, необходимо добавить в раскрашиваемую таблицу колонку с заголовком ''FormEx_ПланРаскраски'' (без кавычек, регистронезависимо). Колонка может располагаться в любом месте таблицы. Содержимое этой колонки задает план раскраски таблицы, основанный на тех же макросах, которые описаны в части ''Раскраска таблиц''. При этом макросы COUNT и INDENT не обрабатываются. В плане раскраски каждая ячейка текущей строки определяется круглыми скобками. В плане учитываются как видимые, так и невидимые колонки. Макросы раскраски надо помещать в места, соответсвующие смене раскраски. Несколько примеров помогу лучше понять этот принцип.

3. Як приклад можете подивитися тут: Тиць
4. Речі висвітлені Вами:
ТЗ.ВыбратьСтроку(); 
         Таб = СоздатьОбъект("Таблица");

Взагалі не мають до FormEx жодного відношення.

5. Версія 1С 7.70.003 !!!, Вам перейти на 1С 7.70.027 релігія не дозволяє ? Ё-ма-ё.... Не витрачайте свій час...
ZUBR,
16.11.18, 14:07 Варианты настройки 1С 7.7 win2008 + удаленный SQL 2000
Ай-яй-яй:
Идем в скуль, разворачиваем "базы данных" - "системные базы данных" - "master", тыкаем на "представления"(на ангельском языке - views), выбираем "создать представление". Если выскочило "добавление таблицы", жмакаем закрыть, в поле кода (там по дефолту стоят select и from) копируем следующий текст: select * from sysprocesses where cmd <> 'checkpoint' и нажимаем кнопку "выполнить код sql" (находится выше слева, красный восклицательный знак), если код поменялся и не выскочило ошибок - это хорошо, жмем сверху кнопку "сохранить" и называем это представление вот так: sksprocesses

Может не одобрить Администрация...

Че Вам мешает поднять SQL до 2008 ?
Проще обслуживать.
Talkman,
15.11.18, 16:38 ошибка с импортом из Excel
4andriy @ Сегодня, 17:19 * ,
Ще раз. Що вертає:
Сообщить(Реквизит(СпсРек.ПолучитьЗначение(Ном)));


???

Ругається на те що не може створити ТабЗн Нову колонку з ідетифікатором який вертає Функція Реквизит(Стр,Режим=3)
Перевірте будь-ласка.

В стрічці 133:
СпсРек.ДобавитьЗначение(ТипРек+";"+СокрЛП(Строка(Ном))+";"+Метаданные.Справочник(НомСпр).Реквизит(КолРек).Идентификатор);


Заменіть на
СпсРек.ДобавитьЗначение(Лев(ТипРек,1)+";"+СокрЛП(Строка(Ном))+";"+Метаданные.Справочник(НомСпр).Реквизит(КолРек).Идентификатор);


Має бути все гуд.

PS: Не тестував.
4andriy,
25.11.16, 11:10 Самопроизвольный вытет из одной из четырех баз с ошибкой
vl185 @ Сегодня, 9:59 * ,
Наверное на данном этапе сначала нужно попробовать обновить Formex...
vl185,
24.11.16, 17:40 Самопроизвольный вытет из одной из четырех баз с ошибкой
Цитата(sava1 @ 24.11.16, 16:34) *
А Альф обещал, что формекс на 64 платформе будет работать корректно?

Насколько помню то о разрядности там разговоров вообще то не было...
Проэкт был приостановлен еще в 2010-м.
Последняя выпущеная версия 2.0.5.104
На оф.сайте на данный момент "Создание проекта formex.dorex.ru временно приостановлено... Готовы к сотрудничеству..."

Вот, не могу поддержать мнение Ув.Acid (мое мнение - это чисто мое мнение его можете не брать во внимание) по одной причине, ошибка которая "вылетела" больше указывает на ошибку в памяти чем на ошибку SQL, ругается Винда, а не Скуль...
Был еще разговор о прямых запросах:
Цитата(vl185 @ 15.11.16, 11:01) *
Что можно было, было оптимизировано прямыми запросами.

1 Срр там у Вас случайно не крутится ?
vl185,
24.11.16, 15:14 Самопроизвольный вытет из одной из четырех баз с ошибкой
Цитата(vl185 @ 24.11.16, 10:23) *
Базы были перенесены со старого сервера на win 2003 на котором подобных траблов не было.

И что, как только перенесли и сразу:
Цитата(vl185 @ 23.11.16, 13:04) *
Вылетали как на 2008 скуле так и 2000м.

... или все-таки после вноса изменений в эту единичную конфигурацию.

Formex.dll последней версии ? Перезаписать его пробовали ?

К стати, у Формекса есть такая штука Сервис.ОбработкаОжидания, возможно она и приводит к ошибке, как вариант.
Возможности Формекса не только что-то красить, там довольно таки много разного функционала.
vl185,
23.11.16, 16:51 Самопроизвольный вытет из одной из четырех баз с ошибкой
Цитата(vl185 @ 23.11.16, 13:04) *
Единственная ошибка которая не ушла с переносом баз на 2000 скуль это самопроизвольный вытет из одной из четырех баз с ошибкой

Цитата(Acid @ 23.11.16, 14:11) *
BkEnd.dll вроде как тоже патченный есть

Три работает Ок, а одна "болеет" !
Думаю что конфигурации разные и программист использовал, скорее всего, еще какую-то "приблуду" которая "делает конфликт" в памяти...

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


Оно ?
TTT,
18.11.16, 20:34 POST запрос API из 1с77
Цитата(Мичман Харитонов @ 17.11.16, 18:06) *
А протокол используется http или https?
Если второе, то у v7plus.dll с ним возможны проблемы...

Согласен на все 100 %, но проблемы будут во всех случаях. Не буду останавливаться конкретно на проблемах при работе с этой "штучкой", но основная это обрезка данных (на просторах валом инфы о проблемах).
Могу предложить такой вариант:
Функция ОтправитьЗапросПост(СекретныйКлюч,прИмяФайла)//Имя файла - "d:\1cv77bd\Temp\test.json"
    
    лпСайт="https://lc.epicentrk.com.ua/api/292/"+СекретныйКлюч+"/INVOICE_DATA";//"https" должно быть, я так считаю

    oADOStream = СоздатьОбъект("ADODB.Stream");
    oADOStream.Type = 1; //Binary
    oADOStream.Open();
    oADOStream.LoadFromFile(прИмяФайла);

    WinHttp = СоздатьОбъект("WinHttp.WinHttpRequest.5.1");
        WinHttp.Option(2,"utf-8");
    //Отключаем проверку сертификата
    Скрипт= СоздатьОбъект("MSScriptControl.ScriptControl");
    Скрипт.language="javascript";
    Скрипт.AddObject("WinHttp",WinHttp);
    Скрипт.Eval("WinHttp.Option(4)=13056");//intSslErrorIgnoreFlags
    Скрипт.Eval("WinHttp.Option(6)=true");//blnEnableRedirects
    Скрипт.Eval("WinHttp.Option(12)=true");//blnEnableHttpsToHttpRedirects
    //Сам запрос
    WinHttp.Open("POST", лпСайт, 0);
    WinHttp.SetRequestHeader("Accept-Language", "ru");// думаю что "ru"...
    WinHttp.SetRequestHeader("Accept-Charset", "utf-8");
    WinHttp.SetRequestHeader("Content-Language", "ru");
    WinHttp.SetRequestHeader("Content-Charset", "utf-8");
    WinHttp.SetRequestHeader("Content-type", "application/octet-stream; charset=utf-8;");//Другая сторона должна понять входные данные см.oADOStream, а вот если вдруг не поймет (в чем у меня есть сомнения...), тогда придется указать явное без указания параметров выше:
    //WinHttp.setRequestHeader("Accept", "text/json");
    //WinHttp.setRequestHeader("Content-type", "text/json");
        //при явном строка ниже не нужна:
    WinHttp.SetRequestHeader("Content-length", "" + oADOStream.Size);
    
    Попытка
        WinHttp.Send(oADOStream);
                //При явном - строку запроса нужно получить из файла, тогда получится:
                // WinHttp.Send(строка запроса из файла);
                лпОтвет = WinHttp.ResponseText();
                Сообщить(лпОтвет)
        Возврат 1;
    Исключение
        Сообщить("Ошибка: "+ОписаниеОшибки(),"!");
        Возврат 0;
    КонецПопытки;
КонецФункции // ОтправитьЗапросПост



Цитата(nik389 @ 18.11.16, 16:12) *
попробуйте curl, для ваших целей самое то..

Поделитесь пожалуйста опытом его использования, для меня как-то сложно...). Я видимо чего-то не понял из описаний 19000000.gif
Как можно с помощью курл реализовать - приведите пример, конкретно к задаче этой темы ?
ysobol,
16.11.16, 15:41 Выборка данных из необходимых документов
inna.innainna84 @ Сегодня, 1:52 * ,
Инна, не лезьте туда, плиз...
Я бы Вам порекомендовал это сделать еще в предыдущей теме, но там все настолько запущено, что ппц.
Используйте то что имеете. Не лезьте в наследие авантюризма по регистру "Обороты продаж" дабы не породить еще больше проблем.
Пройдет время, изучите конфигурацию, наберетесь опыта и только тогда будете корректировать, Вам пока еще рановато.
По добавлению данных в регистр Вам нужно заключение, это смогут сделать только специалисты (по результатам полного анализа), все остальное породит только новые грабли.

ЗЫ: Мы с Вами когда-то по этому поводу уже общались. Форум Вам реально в Вашей ситуации не поможет.
inna.innainna84,
14.11.16, 14:49 Дробное число прописью на Печать
TTT @ Сегодня, 14:38 * ,
Тогда так:
    ттт = 1.58;
    лпЦелое = Цел(ттт);
    лпДробное = (ттт-лпЦелое)*100;
    лпСтроковое = СокрЛП(Формат(лпЦелое,"ЧП"))+" целое "+СокрЛП(Формат(лпДробное,"ЧП"))+" дробное";
    Сообщить (лпСтроковое);
TTT,
14.11.16, 0:25 Выборка данных из необходимых документов
Цитата(inna.innainna84 @ 13.11.16, 22:24) *
Фирма если изменить вытягивает не понятные данные

upset.gif Данные не могут быть разными или непонятными. При запросе Фирма = Регистр.ПартииТоваров.Фирма; и Фирма = Регистр.ПартииТоваров.ТекущийДокумент.Фирма; возвращается одно и тоже. В первом случае лезем в регистр, а во втором в документ который в этот регистр сделал запись.
Сами посмотрите в движения документа по регистру (правая кнопка мыши на проведенный ПН или РН, движения документа, партии товаров, Ок), в измерение фирма пусто или записана фирма ? Если записана, значит смотрите в регистр, а если все же пусто тогда в документ. У Вас реквизит "Фирма" общий реквизит документов.
inna.innainna84,
12.11.16, 17:18 Выборка данных из необходимых документов
sava1 @ Сегодня, 17:14 * ,
Цитата(sava1 @ 12.11.16, 17:14) *
если не попасть в индексы

Так он ведь 1 срр дергает, она сама разложит за 1,5 сек.
inna.innainna84,
12.11.16, 17:11 Выборка данных из необходимых документов
Цитата(igmig65 @ 12.11.16, 7:03) *
А попробуйте вставить условие в запрос, только по ПН и РН, тогда другие доки вообще не попадут в запрос и не нужно будет условие в функции

//Добавьте условие
|Условие((ТекДокумент.Вид() = ""РасходнаяНакладная"") или (ТекДокумент.Вид() = ""ПриходнаяНакладная""));
//Измените функцию:
|Функция Сумма = Сумма(Оборот) когда (Оборот<>0);

Цитата(igmig65 @ 12.11.16, 7:03) *
Ну и по Виду операции, тоже можно добавить условие, чтобы возвраты не попадали в запрос вообще.

//Перед формированием текста запроса добавьте в список нужные коды операций, исключите те которые ниже:
СписКодыОпераций=СоздатьОбъект("СписокЗначений");
СписКодыОпераций.ДобавитьЗначение(ПродажаКупленногоТовара);
СписКодыОпераций.ДобавитьЗначение(ПродажаКупленногоПереданногоТовара);
СписКодыОпераций.ДобавитьЗначение(РозничнаяПродажаКупленногоТовара);
СписКодыОпераций.ДобавитьЗначение(ВозвратТовараОтПокупателя);
СписКодыОпераций.ДобавитьЗначение(ВозвратКупленногоПереданногоТовара);
СписКодыОпераций.ДобавитьЗначение(ВозвратРозничныйКупленногоТовара);
СписКодыОпераций.ДобавитьЗначение(ПродажаПринятогоТовара);
СписКодыОпераций.ДобавитьЗначение(ПродажаПринятогоПереданногоТовара);
СписКодыОпераций.ДобавитьЗначение(РозничнаяПродажаПринятогоТовара);
СписКодыОпераций.ДобавитьЗначение(ВозвратПринятогоТовараОтПокупателя);
СписКодыОпераций.ДобавитьЗначение(ВозвратПринятогоПереданногоТовара);
СписКодыОпераций.ДобавитьЗначение(ПродажаУслуги);
СписКодыОпераций.ДобавитьЗначение(СторноПродажаУслуги);

//Добавьте переменную;
|КодОперации=Регистр.ПартииТоваров.КодОперации;
//Также условие
|Условие (КодОперации В СписКодыОпераций);


От себя повторяю еще раз: У Вас в Регистр.ПартииТоваров.Фирма пусто ! Используйте Фирма = Регистр.ПартииТоваров.ТекущийДокумент.Фирма;

sava1 @ Сегодня, 16:43 * ,
Цитата(sava1 @ 12.11.16, 16:43) *
в семерке выборка из регистров практически оптимальна

Могу согласиться но только частично, если Без итогов в 2-3 этажа то разница не очень ощутима, но вот если с отбором итогов и + многоэтажность - прямые выиграют.
inna.innainna84,
08.11.16, 12:22 Автообновление конфигураций 1С 7.7
performia @ Сегодня, 12:04 * ,
ТЫЦ
performia,
07.11.16, 10:51 Не правильно формирует вес
Цитата(inna.innainna84 @ 06.11.16, 20:35) *
данные с приходной(возврат от покупателя) не записываются в регистр оборот товара

Хммм... Действительно у Вас в конфигурации отсутствует документ Возвратная накладная (как покупателя, так и поставщику)...
Движения по возвратам реализованы документом приходная накладная faceoff.gif

Все остановочка: мухи отдельно, котлеты отдельно.

Цитата(inna.innainna84 @ 04.11.16, 15:33) *
... застряла на весе товара в таблице во всех секциях поставила Запрос.РасхОстатокТовара/2*Запрос.Вес, где Запрос.Вес должен вытягивать значение из самого справочника товаров(т.е.|Вес = Регистр.ПартииТоваров.Товар.Вес;)
И не получается. Подскажите как решить эту проблему.


Изначальная проблема решена ?
inna.innainna84,
06.11.16, 18:28 Не правильно формирует вес
inna.innainna84 @ Сегодня, 2:31 * ,
Вы правы, в Измерение "Контрагент" в модуле проведения действительно пишется не покупатель, а поставщик. Кроме того, в измерении Фирма пусто...
А почему бы Вам для этого отчета не воспользоваться регистром "ОборотПродаж" ?

Дело в том что конструкция: Покупатель=Регистр.ПартииТоваров.ТекущийДокумент.РасходнаяНакладная.Контрагент на файловой версии 1 С очень долго будет отрабатывать + сам регистр "ПартииТоваров" тяжелый.
Попробуйте так:

ТекстЗапроса = "
|Период с ВыбНачПериода по ВыбКонПериода;
|Товар = Регистр.ОборотПродаж.Товар;
|Контрагент = Регистр.ОборотПродаж.Контрагент;
|ТекДокумент = Регистр.ОборотПродаж.ТекущийДокумент;
|Фирма = Регистр.ОборотПродаж.ТекущийДокумент.Фирма;
|Вес = Регистр.ОборотПродаж.Товар.Вес;
|Категория = Регистр.ОборотПродаж.Товар.КатегорияДляГруппировки;
|Количество = Регистр.ОборотПродаж.Кво;
|Оборот = Регистр.ОборотПродаж.ПродСтоимость;
|Функция КолРасход = Сумма(Количество);
|Функция Сумма = Сумма(Оборот);
|Функция ВесРасход = Сумма(Запрос.КолРасход * Вес + Количество - Количество);
|Группировка Фирма;
|Группировка Категория без групп;
|Группировка Контрагент без групп;
|Группировка Товар без групп;
|Группировка ТекДокумент;
|Условие(Фирма = ВыбФирма);
|Условие(Контрагент в ВыбКонтрагент);
|Условие(Категория в ВыбКатегория);";

Отработает значительно быстрее и выведет только реализацию и возвраты.
inna.innainna84,
05.11.16, 12:32 Не правильно формирует вес
logist @ Вчера, 17:31 * ,
Ув, logist, как и обещал выполняю свои обещания исправиться.

Ув. inna.innainna84, итак начнем:

При подготовке отчета, Вы имеете дело с регистром остатков - "ПартииТоваров".
Данный регистр имеет:
1. Измерения: Фирма, Товар, Контрагент (Вы упустили Фирму и Контрагент, а они тоже нужны);
2. Ресурсы: ОстатокТовара;
3. Реквизиты: Оборот;

Соответственно мы должны обратиться к измерениям, ресурсам и реквизитам (дополнительным реквизитам, если тип справочник) задав им переменные:
ТекстПеременных = "
|Период с ВыбНачПериода по ВыбКонПериода;
|Фирма = Регистр.ПартииТоваров.Фирма;
|Товар = Регистр.ПартииТоваров.Товар;
|Контрагент = Регистр.ПартииТоваров.Контрагент;
|ТекДокумент = Регистр.ПартииТоваров.ТекущийДокумент;
|Вес = Регистр.ПартииТоваров.Товар.Вес;
|Категория = Регистр.ПартииТоваров.Товар.КатегорияДляГруппировки;
|Количество = Регистр.ПартииТоваров.ОстатокТовара;
|Оборот = Регистр.ПартииТоваров.Оборот;";

Для получения информации по ресурсам и реквизитам используются функции:
ТекстФункций = "
|Функция КолРасход = Расход(Количество) когда (ТекДокумент.Вид() = ""РасходнаяНакладная"");
|Функция Сумма = Сумма(Оборот) когда (ТекДокумент.Вид() = ""РасходнаяНакладная"");
|Функция ВесРасход = Сумма(Запрос.КолРасход * Вес + Количество - Количество);";

Обратите внимание что в функциях КолРасход и Сумма используется доп условие "Когда". Это для того что бы итоги отбирались только по указанному виду документов. Дело в том что документ Приходная накладная делает движения по приходу, т.е. движений по расход в регистре по данному виду нет. В итоге в функции Сумма у Вас не будет двоиться.
По поводу функции ВесРасход то это один из методов борьбы с фичей 7.7. останавливаться здесь не буду.
Далее задаем группировки:
ТекстГруппировок = "
|Группировка Фирма;
|Группировка Категория без групп;
|Группировка Контрагент без групп;
|Группировка Товар без групп;
|Группировка ТекДокумент;";

И условия:
ТекстУсловий = "
|Условие(Фирма = ВыбФирма);
|Условие(Контрагент в ВыбКонтрагент);
|Условие(Категория в ВыбКатегория);";

В итоге:
ТекстЗапроса = ТекстПеременных+РазделительСтрок+ТекстФункций+РазделительСтрок+ТекстГруппировок+РазделительСтрок+ТекстУсловий;
Сообщить(ТекстЗапроса);
Запрос = СоздатьОбъект("Запрос");
Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
    Возврат;
КонецЕсли;
//И в конце уже заполнение выходной таблицы по группировкам 1 - Фирма, 2 - Категория, 3 - Контрагент, 4 - Товар, 5 - ТекДокумент


Если что-то не получиться отпишитесь в теме.
inna.innainna84, Vofka,
22.09.16, 18:33 Оце мені цікаво, чому...
Цитата(XBrut @ 22.09.16, 18:00) *
було легше красти

В моїй практиці пригадую було колись...
Наприклад: 30-го числа виникають зобов'язання по сплаті ПДВ. Так от, для того щоб ці зобов'язання "погасити" достатньо 30-м числом виписати видаткову накладну платнику фіксованого податку, а вже наступного дня, але іншого звітного місяця зробити повернення покупця. По такій схемі ПДВ до бюджету не сплачується взагалі, оскільки платнику фіксованого податку ПДВ не нараховується, а платник ПДВ звільняється від його сплати в звітному періоді.

Що буде відбуватися при нашому чинному законодавстві, якщо дозволити виписування податкової лише на підставі Рахунку ? faceoff.gif

Мудрили наші "законотворці" та зробили для себе (чи під себе) решета в податковому законодавстві, щоб можна було в будь-яку дірку пролісти, того воно в нас так.

При спілкуванні з контролюючими органами, виявляється що для того щоб звичайного дядька тр..хнути за "паркування не в тому місці" вистроюється черга бажаючих...
А от щоб таке зробити з більшим дядьком - ще до початку перевірки знаходяться такі проблеми, що перевіряючі наперед приходять підписувати акт перевірки в якому все Ок.

Отак і живемо.
nmf,

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