Прямые запросы: ускорение получения цен для типовой ТиС 7.7

Публикация № 76337

Разработка - Практика программирования

21
Первая статья из цикла статей "Прямые запросы:...". Рассказывается о применении класса ПрямойЗапрос и компоненты 1С++ для ускорения функции глВернутьЦену() в типовой конфигурации Торговля и склад. Платформа 7.7.

Для внедрения разработки нам потребуется:

1. Компонента 1С++ (последняя версия);

2. Класс ПрямойЗапрос;

3. Для работы разработки в DBF базах - компонента 1sqlite (не ниже 1.0.2.3)

Опишем порядок загрузки компонент и подключения класса.

1. Скачиваем по вышеуказанным ссылкам компоненты и класс ПрямойЗапрос.

2. Располагаем компоненты либо в каталоге ИБ либо в требуемом нам общем каталоге (чтобы все базы использовали одинаковые версии компонент). Описываем загрузку ВК в ГМ конфигурации. 1С++ должна быть загружена самой первой - до всех компонент. Также в последней версии 1С++ изменилась загрузка компоненты. Теперь не требуется наличия административных прав и доступа к ветке реестра HKLM.

Любителей загружать 1С++ не в ГМ прошу ознакомится с рекомендациями по загрузке компоненты из модуля отчета (обработки).

3. Создаем в каталоге ИБ каталог Classes (или же создаем общий каталог если планируем использовать для всех баз одни классы). Создаем в каталоге ИБ файл defcls.prm и в него добавляем следующую строчку

#include Classes\ПрямыеЗапросы\classes.prm

Результатом правильного выполнения описанных выше действий будет наличие в окне Помощь>О Программе вкладки 1С++ и наличия в ней строки о зарегистрированном классе ПрямойЗапрос.

 

Переходим к описанию изменений в ГМ.

1. Добавим глобальную переменную

 Перем глПрямойЗапросЦен Экспорт;

 2. Добавим в ГМ процедуру:

 

 Процедура глИнициализироватьЗапросЦен()
                        глПрямойЗапросЦен.Текст= "
                        |ВЫБРАТЬ
                        | СрезПоследнихЦен.ТекущийЭлемент КАК [ЦенаНоменклатуры $Справочник.Цены]
                        |,СрезПоследнихЦен.Цена КАК [Цена $Число]
                        |,СрезПоследнихЦен.Единица КАК [Единица $Справочник.Единицы]
                        |,СрезПоследнихЦен.Процент КАК [Процент $Число]
                        |ИЗ
                        | $СрезПоследних.Цены(:ТекДата
                        |,(Цена,Единица,Процент)
                        |,(($СпрЦен.Владелец = @Товар) И ($СпрЦен.ТипЦен = @ТипЦен))
                        |,ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.Цены КАК СпрЦен $nolock
                        |ПО ($СпрЦен.ТекущийЭлемент = ТекущийЭлемент) И ($СпрЦен.ПометкаУдаления = 0)
                        |) КАК СрезПоследнихЦен
                        |";
                        
                        
                        
                        //глПрямойЗапросЦен.ОписаниеПараметра("ДатаЦены","Дата");
                        глПрямойЗапросЦен.УстановитьТекстовыйПараметр("ТекДата",РабочаяДата());
                        глПрямойЗапросЦен.ОписаниеПараметра("Товар","Справочник.Номенклатура");
                        глПрямойЗапросЦен.ОписаниеПараметра("ТипЦен","Справочник.ТипыЦен");
                        глПрямойЗапросЦен.ПодготовитьПараметризованныйЗапрос();
                        
КонецПроцедуры // глИнициализироватьЗапросЦен

 

3. В процедуре ПриНачалеРаботыСистемы() добавим следующие строки:

 

                        глПрямойЗапросЦен = СоздатьОбъект("ПрямойЗапрос");
                        
                        //Параметризированный запрос для получения цен
                        глПрямойЗапросЦен.БухгалтерскийУчет = 0;
                        глПрямойЗапросЦен.ОперативныйУчет = 0;
                        глПрямойЗапросЦен.ПериодическиеЗначения = 1;
                        глИнициализироватьЗапросЦен();

 

4. Приведем функцию ГМ глВернутьЦену() к следующему виду:

 

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

 

Ну вот собственно и все – разработка готова к работе на реальной базе.

21

Специальные предложения

Комментарии
Избранное Подписка Сортировка: Рейтинг
14. sCHTASS 49 21.11.11 19:29 Сейчас в теме
(13) Мешать запросы 1с и 1с++ - это такое извращение!!!
Лучше массово получить цену на все товары, выгрузить в таблицу значений и тянуть их из нее.
dav405; maxpiter; +2 Ответить 1
1. TrinitronOTV 15.11.11 14:08 Сейчас в теме
очень нужная информация, спасибо большое
2. PochekutovOleg 15.11.11 14:26 Сейчас в теме
3. Dolly_EV 267 16.11.11 04:59 Сейчас в теме
"Прямой запрос" и "Поставщик данных" - в массы!
4. vkr 101 16.11.11 07:58 Сейчас в теме
(0) Уважаемый автор, скажите, пожалуйста - можно ли с помощью описываемого Вами метода прямых запросов
каким-либо образом ускорить в ТиС 7.7 получение ГТД при подборе номенклатуры в расходную накладную?
А то мы имеем такой тормозище при запросе ГТД через партии - а партионный учет нам нафиг не сдался
(мы его не ведем)...
5. leshik 32 16.11.11 11:30 Сейчас в теме
(4) vkr, Ускорить можно все.
Давайте обсудим через ICQ (201216980) вашу проблему и сделаем на основании её решения еще одну статью.
6. Dolly_EV 267 16.11.11 11:59 Сейчас в теме
(0) Автор, а почему "заремил" //глПрямойЗапросЦен.ОписаниеПараметра("ДатаЦены","Дата"); ?
И не используешь передаваемый в глВернутьЦену() параметр "ДатаЦены"?
Вобщем-то не только на РабочаяДата() нужны цены.
7. vkr 101 16.11.11 12:42 Сейчас в теме
(5) Спасибо, я в ближайшие пару дней обсужу с главбухом вопрос
вмешательства в конфу ТиС и, если что, с Вами свяжусь, ОК ?
8. Dolly_EV 267 16.11.11 14:23 Сейчас в теме
(6) понятно.."Параметры разрешено использовать только в секции «ДополнительныеУсловия».".. Как обойти?
9. leshik 32 16.11.11 17:33 Сейчас в теме
(8) Dolly_EV,
На самом деле я на рабочей базе обошел проверкой изменения даты от предыдущей и переинициализацией запроса.
Вечером выложу этот вариант.
(7) Конечно можно.
10. koffe 16.11.11 20:40 Сейчас в теме
11. sCHTASS 49 18.11.11 10:18 Сейчас в теме
А прирост какой вообще получается?
12. maxpiter 142 18.11.11 12:17 Сейчас в теме
(9) Все еще ждем продолжения :)
Иначе реализация какая-то недоделанная.
13. Dolly_EV 267 21.11.11 04:21 Сейчас в теме
(9) Я тем же путем сначала пошел, но в итоге померил монитором время выполнения на одном отчете, где глВернутьЦену() сидит, как внешняя функция в запросе (штатном, 1С-ном). В итоге - не ускорение, а даже замедление получилось. Даже с учетом не переинициализации (смены даты не было)
15. Dolly_EV 267 22.11.11 03:51 Сейчас в теме
(14) Не вижу никакого извращения. Когда рабочая конфига, которая писалась 10 лет, переписывается на прямые запросы - одним махом ВСЕ СРАЗУ не перепишешь. Да и речь о том, что в данном конкретном случае (множественное получение цены) сей параметризованный запрос оказывается менее эффективным, чем штатный метод "Получить" и перебор по "ТипЦен"
16. sCHTASS 49 22.11.11 19:59 Сейчас в теме
(15) Я про частый случай, описанный в (13). Про то, что юзать функцию в запросе некошерно.

(0) Таки на мой вопрос никто не ответил. Прирост какой-нить есть? Самому проверить не на чем.
17. maxpiter 142 23.11.11 10:21 Сейчас в теме
(16) прирост есть, но т.к. только на рабочую дату, то в живую не проверить, может на параметризированный запрос на 1cpp накидаете запрос?
18. Lyuba-Lyuba 23.11.11 10:28 Сейчас в теме
19. dav405 104 28.11.11 08:23 Сейчас в теме
Нет, только групповое получение цен поправляет. Замена в глВернутьЦену у меня (MSSQL2005, ТиС9.2, используя СрезПоследних ) привела к ЗАМЕДЛЕНИЮ.
20. CheBurator 3400 18.04.12 03:09 Сейчас в теме
Прямо-таки родственный мой материал: http://infostart.ru/public/76287/
.
Помогал и учили меня признанные мэтры прямых запросов, за что им и спасибо.
21. mshi 23.04.19 12:25 Сейчас в теме
Автору надо было указать время немодернизированной функции и модернизированной.
В ПрямомЗапросе применяется неэффективный способ получения периодических значений, т.к. там создается временная таблица. Лучше использовать штатный метод. Тогда и вопросов с датой цен не возникает. А вот получение элемента цены имеет смысл перевести на ПрямойЗапрос.

Периодические значения в ПрямомЗапросе имеет смысл использовать только для массового получения значений. Вот тогда он идеально и быстро отрабатывает.
Оставьте свое сообщение

См. также

Как в торговле 7.7 печатать код ТНВЭД в счет-фактуре 0

Статья Программист Нет файла v77::ОУ 1С7:ТиС Россия БУ Внешнеэкономическая деятельность (ВЭД) НДС Бесплатно (free) Практика программирования

В данной статье хотел поделиться опытом, как в Торговле 7.7 ( релиз 994) сделать возможность выводить код ТНВЭД в печатную форму счета-фактуры. Сразу скажу, что нужно это только тем, кто осуществляет экспорт в страны таможенного союза. Остальные могут не волноваться.

15.11.2017    8433    AndKovalchuk    0       

.Net в 1С. На примере использования HTTPClient, AngleSharp. Удобный парсинг сайтов с помощью библиотеки AngleSharp, в том числе с авторизацией аля JQuery с использованием CSS селекторов. Динамическая компиляция 111

Статья Программист Нет файла v7.7 v8 Windows Бесплатно (free) Практика программирования WEB

Часто приходится парсить сайты, в том числе с авторизацией, перескакивая со страницы на страницу по ссылкам. Тот, кто занимался вэб программированием, знает, как удобно использовать JQuery и CSS селекторы. На .Net написана очень удобная библиотека AngleSharp. Я покажу, как с её помощью можно значительно облегчить себе труд.

10.03.2016    48366    Serginio    33       

.Net в 1С. Асинхронные HTTP запросы, отправка Post нескольких файлов multipart/form-data, сжатие трафика с использованием gzip, deflate, удобный парсинг сайтов и т.д. 37

Статья Программист Нет файла v7.7 v8 Windows Бесплатно (free) Практика программирования Разработка внешних компонент WEB

Очень часто нужно при работе с HTTP сервисами или сайтами использовать Асинхронные HTTP запросы, отправку на сервер нескольких файлов, использование сжатия трафика. Эта статья про то, как этого легко добиться.

09.03.2016    25389    Serginio    22       

Использование классов .Net в 1С для новичков 147

Статья Программист Нет файла v7.7 v8 Windows Бесплатно (free) Практика программирования Разработка внешних компонент Универсальные функции

Руководство для новичков. Написав статью http://infostart.ru/public/238584/, я понял, что многие не понимают того, что написано. Поэтому в этой статье постараюсь более подробно остановиться на азах и без кода на вражеском языке (C#)

27.01.2016    62801    Serginio    104       

.NET(C#) для 1С. Динамическая компиляция класса обертки для использования .Net событий в 1С через ДобавитьОбработчик или ОбработкаВнешнегоСобытия 51

Статья Программист Нет файла v7.7 v8 Windows Бесплатно (free) Разработка внешних компонент Математика и алгоритмы

Динамическая компиляция класса обертки для использования .Net событий в 1С через ДобавитьОбработчик или ОбработкаВнешнегоСобытия, а так же генерация модулей на C# и 1С для подключения к событиям. Использование DynamicMethod и ILGenerator. Представлены примеры для использовании событий System.IO.FileSystemWatcher (Ожидает уведомления файловой системы об изменениях и инициирует события при изменениях каталога или файла в каталоге.) и SerialPort (обработка сканера штрих кода подключенного к COM порту). Обертка позволяет использовать классы .Net только на языке 1С. Реализация 1C Messenger описанного здесь http://infostart.ru/public/434771/

12.11.2015    41706    Serginio    35       

Хитрости сохранения табличного документа в Excel для дальнейшей работы с ним 78

Статья Программист Нет файла v7.7 v8 1cv8.cf 1cv7.md Windows Бесплатно (free) Практика программирования Загрузка и выгрузка в Excel

Все пользователи 1С всех версий (начиная с 7-й) сталкиваются с проблемой нормальной работы с данными, сохраненными в Excel файл. Есть некоторые хитрости, которые позволяют облегчить работу с сохраненными данными из 1С в формат Excel.

16.01.2015    70873    shmellevich    35       

Скрытие помеченных на удаление в справочнике 5

Статья Программист Нет файла v77::ОУ v77::БУ v77::Расчет 1cv7.md Россия Бесплатно (free) Практика программирования

Корректно скрываем помеченных на удаление в справочнике, с иерархией и без. Вроде простая и нужная вещь, но почему-то нигде не встречалась

08.08.2012    11125    mikukrnet    7       

Продажа собственной фирме (интеркомпани) - заполнение отрицательными остатками 9

Статья Программист Нет файла v77::ОУ 1С7:Комплекс 1С7:ТиС Россия Учет ТМЦ Бесплатно (free) Практика программирования

В документе "Продажа собственной фирме" приходится добавлять номенклатуру вручную через подбор. А ведь можно сэкономить время и заполнить спецификацию документа на основании отрицательных остатков фирмы. Все просто...

06.05.2012    11126    2sw    4       

Ввод остатков по 76.ВА в 1С ПУБ 2

Статья Программист Нет файла v77::ОУ v77::БУ 1С7:ПУБ Россия БУ Бесплатно (free) Практика программирования

Статья посвящена найденному мной недостатку в конфигурации 1С 7.7 "Производство-услуги-бухгалтерия", связанному с вводом начальных остатков по 76.ВА.

29.04.2012    7926    Пользователь 1С    0       

Обновление базы 1с 7.7. с помощью движка 1с 8.х 92

Статья Системный администратор Программист Нет файла v7.7 1cv7.md Россия Бесплатно (free) Практика программирования Администрирование данных 1С

Если Вас угораздило в стандартную типовую конфу внести правки, причем в самый большой модуль, а именно глобальный. Если к тому же Вы внесли изменение в какую-то стандартную функцию, в которой 1с сама регулярно чего-то меняет, то любое обновление начинает доставать. Используя возможности движка платформы 1с 8.х можно существенно сэкономить себе время и нервы.

28.04.2012    15866    Valerich    31       

Ошибка при формировании отчета Авансы по налогу на имущество. В 1С:Предприятие 7.7. Регламентированная отчетность за I квартал 2012 года Обновление 12q1009 от 18.04.2012 г. 18

Статья Программист Нет файла v77::ОУ v77::БУ 1cv7.md Россия Бесплатно (free) Практика программирования

При формировании отчета NIMAVP1.ERT Авансы по налогу на имущество (версия 5.03) в разделе № 1-3 не сохраняет номера Страниц при выборе, что ведет к не сохранению и выводу печати двухмерного кода.

24.04.2012    7250    leo072    7       

v77. Робот 43

Инструменты и обработки no Внешняя обработка (ert,epf) v7.7 1cv7.md Россия Бесплатно (free) Практика программирования

Исполнитель Робот. Учебное пособие по программированию для детей дошкольного возраста. Без внешних компонент.

09.04.2012    10198    54    item    18       

Запуск внешней обработки по расписанию v7.7 39

Статья Программист Нет файла v7.7 1cv7.md Россия Windows Бесплатно (free) Практика программирования Администрирование данных 1С

Неоднократно возникали задачи организовать, например ежедневную выгрузку и отправку отчетов по эл.почте, и вот…

20.03.2012    39495    Yury1001    17       

v77. Паинт 53

Инструменты и обработки Программист Внешняя обработка (ert,epf) v7.7 1cv7.md Россия Бесплатно (free) Практика программирования

v77. 1С:Паинт :) Такая вот игрушка. Без внешних компонент.

06.03.2012    11905    81    item    38       

Быстрый отбор в журнале на конкретную дату 7

Статья Программист Нет файла v77::ОУ 1cv7.md Россия Бесплатно (free) Практика программирования

Лень - двигатель прогресса. Полезная фича для быстрого отбора документов в любом журнале на конкретную дату.

27.02.2012    9110    avers007    16       

ЗиК 321, в отчетах пропадает проводка по ПФР_страховая 25

Статья Программист Нет файла v77::ОУ v77::Расчет 1С7:ЗиК Россия ФОМС, ПФ, ФСС Бесплатно (free) Практика программирования

При формировании отчета "Свод проводок" с галкой "Учет начисления налогов с ФОТ, включаемых в состав расходов" в отчет не выходит ПФР_страх

10.02.2012    4612    filh    19       

Как уменьшить количество заблокированных объектов 26

Статья Программист Нет файла v7.7 1cv7.md Россия Бесплатно (free) Практика программирования

История о том как я решил пересобрать форму справочника клиентов и чем это все закончилось...

12.01.2012    13196    ShEvOvIcH    18       

1С:Торговля и Склад - ошибка во всех релизах, При использовании нескольких фирм и префиксов номеров документов. 14

Статья Программист Нет файла v77::ОУ 1С7:ТиС Россия Бесплатно (free) Практика программирования

Собственно сегодня обнаружил ошибку, которая присутствует во всех релизах конфигурации Торговля и Склад 7.7 вплоть до текущего 7.70.969, при использовании нескольких фирм и префиксов документов для некоторых из них.

04.11.2011    13378    twilight5023    8       

7.7.: Готовим md-файл для публикации. В картинках. 46

Статья Программист Нет файла v7.7 1cv7.md Россия Бесплатно (free) Практика программирования

Вы доработали типовую конфигурацию: скажем, добавили новый Документ, и хотите им поделиться с обществом ИС. Но нельзя же выложить МД-шник целиком, это будет нарушением правил. И как тут быть?

14.09.2011    15049    Арчибальд    21       

Кнопка обновления версии внешнего отчета 18

Статья Программист Нет файла v77::ОУ v77::БУ v77::Расчет Россия Бесплатно (free) Практика программирования

После исправления внешнего отчета вместо рекомендации пользователю: "Закрой отчет и открой его заново", говорим: "Нажми на кнопку".

18.06.2011    11720    Shaman100M    8       

Особенности сортировки в 1С:Предприятие 7.7 22

Инструменты и обработки Программист Внешняя обработка (ert,epf) v77::ОУ v77::БУ v77::Расчет 1cv7.md Россия Windows Бесплатно (free) Практика программирования

Подобная "разработка" использовалась для анализа/сравнения порядка индексов таблиц БД в различных СУБД: "родные" DBF, MS SQL, CodeBase 6.5, Advantage 7.x/8.x/9.x. Тогда было выяснено, что в этих СУБД разный порядок сортировки индекса.

29.05.2011    15246    68    hogik    4       

Учет переплаты за прошлый период (персонифицированный учет в ПФР) 9

Статья Программист Нет файла v77::ОУ 1С7:ЗиК Россия БУ Зарплата ФОМС, ПФ, ФСС Бесплатно (free) Практика программирования

Для того, чтобы в отчетности за текущий период учитывалась переплата по страховой/накопительной части, произведенная в прошлых отчетных периодах.

06.05.2011    3810    pavel_vrn    8       

Компонента для создания прогрессбара и статус бара на формах 1С 7.7 8

Инструменты и обработки Программист Компонента, плагин (dll, vbs,..) v77::ОУ v77::БУ v77::Расчет 1cv7.md Россия Бесплатно (free) Разработка внешних компонент

Компонента предназначена для вывода на формы отчетов или обработок 1С:Предприятие 7.7 прогрессбара и/или статусбара. Написана на VB.Net (.Net 4.0)

01.05.2011    6787    124    Ma_X_X    7       

Конвертация прериодических реквизитов справочников 6

Статья Программист Нет файла v77::ОУ v77::БУ v77::Расчет 1cv7.md Россия Бесплатно (free) Практика программирования

Активно работаю с конфигурацией "Конвертация" версии 2.0, но возникают ситуации, когда необходимо написать правила обмена между базами данных 1С:Предприятие. Когда и источник и приемник имеют версию 7.7. И камень преткновения - выгрузка периодических реквизитов справочников.

29.04.2011    12940    lvictor58    2       

Некоторые ошибки и «проблемные» особенности реализации встроенного языка платформы 1С:Предприятие 7.7 96

Статья Программист Нет файла v77::ОУ v77::БУ v77::Расчет 1cv7.md Россия Бесплатно (free) Практика программирования

Описание некоторых ошибок и особенностей реализации встроенного языка, которые создают «подводные камни» при программировании, а также возможных способов обхода этих проблем из собственного опыта работы на платформе 1С:Предприятие 7.7.

08.04.2011    42040    AleksR    102       

Вариант реализации динамического табло в 1С 7.7 12

Статья Программист Нет файла v77::ОУ v77::БУ v77::Расчет 1cv7.md Россия Бесплатно (free) Практика программирования

Позволяет отображать на экране (монитора или большого телевизора) результат работы требуемого отчета при изменении определенных данных без необходимости интерактивного участия пользователя

14.03.2011    7157    1с2с    19       

Ошибки формата файла 2-НДФЛ в ЗиК релиз 306 100

Статья Программист Нет файла v77::Расчет 1С7:ЗиК Россия НУ Зарплата НДФЛ Бесплатно (free) Практика программирования

Ошибки 2НДФЛ в релизе: файл формируется как для ЮЛ, даже если работодатель ИП, опечатка "Отчетсвто", и указание имени файла с расширением. Нужно подправить отчет "СправкиПоНДФЛ".

02.02.2011    17126    1st    6       

ЗиК 305 ЗиК 306 Больничный лист. 107

Статья Программист Нет файла v77::Расчет 1С7:ЗиК Россия Зарплата Бесплатно (free) Практика программирования

Для переходящих больничных листов за счет работодателя оплачивается 2 дня, а не 3. Первоисточник: http://forums.kuban.ru/forum/viewtopi...669&page=2

25.01.2011    12218    Cvetic    26       

Тюнинг Бух 7.7.: Микрографики в ТЧ документа. 49

Статья Программист Нет файла v77::ОУ v77::БУ v77::Расчет 1cv7.md Россия Бесплатно (free) Практика программирования

Как вставить в документ что-то вроде диаграммы распределения сумм…

25.01.2011    18192    Арчибальд    18       

Подбор свободного кода справочника "Номенклатура" без захвата одного и того же кода несколькими операторами. 1

Статья Программист Нет файла v77::ОУ 1С7:ТиС Россия Windows Бесплатно (free) Практика программирования

При использовании в справочнике Номенклатура конструкции подбора не занятых кодов менее максимального, при работе нескольких операторов возникла проблема захвата одного и того же кода, если не использовать Записать() при создании нового элемента.

05.11.2010    8503    Rusk51    10       

Быстрый подсчет элементов справочника 17

Статья Программист Нет файла v77::ОУ v77::БУ v77::Расчет 1cv7.md Россия Бесплатно (free) Практика программирования

Частенько бывает нужно подсчитать количество элементов в справочнике, чтобы показать пользователю прогресс выполнения обработки. Быстро это сделать позволяет следующая функция.

18.10.2010    21265    brr    11       

[ОБУЧАЛОВКА] Прямые запросы: практические примеры разработки 29

Статья Программист Нет файла v77::ОУ 1С7:Комплекс 1С7:ТиС Россия Бесплатно (free) Практика программирования

Пример прямого запроса для типовой 1С 7.7. ТиС для извлечения цен номенклатуры... тест

30.09.2010    116580    CheBurator    37       

ЗиК.300 Загогулина 59

Инструменты и обработки Программист Конфигурация (md, cf) v77::Расчет 1С7:ЗиК Россия Зарплата ФОМС, ПФ, ФСС Бесплатно (free) Практика программирования

В конфигурации ЗиК.300 при использовании при расчетах любого единовременного пособия из соцстраха (рождение, погребение…) - возможна ошибка в своде проводок...

24.08.2010    12977    UV2    14       

Изменяем вид кнопок на форме 1С 7.7 25

Статья Программист Нет файла v77::ОУ v77::БУ v77::Расчет 1cv7.md Россия Windows Бесплатно (free) Практика программирования

Изменяем вид кнопок на форме 1С 7.7. Статья для разработчиков ВК (Delphi) Реализовано в http://infostart.ru/public/59436/?PAGEN_1=22#comm

20.08.2010    20733    Abadonna    12       

Максимум изменений в стандартной конфигурации при их минимуме с использованием formex.dll 34

Статья Программист Нет файла v77::ОУ v77::БУ v77::Расчет 1cv7.md Windows Бесплатно (free) Практика программирования Разработка внешних компонент

Восстанавливаю ранее опубликованную статью. Может кому пригодится... Иногда очень хочется что-нибудь добавить в стандартную конфигурацию, но потом возникают проблемы, связанные с "затиранием" кода при обновлении. Каждый раз помнить где и что - напряжно. При данном подходе в Глобальный Модуль добавляется всего одна (!) строчка

15.08.2010    16473    Abadonna    33       

Организация быстрого подбора 3

Инструменты и обработки Программист Внешняя обработка (ert,epf) openconf v77::ОУ v77::БУ v77::Расчет 1cv7.md Россия Бесплатно (free) Практика программирования

Организация быстрого подбора, что бы отфильтрованные позиции справочника "вылетали" по нажатии символов, причём не важно, в каком позиции начинается слово в названии элемента.

15.06.2010    6123    118    DeAmon2K    13       

Разбор строки CSV при помощи RegExp 12

Статья Программист Нет файла v77::ОУ v77::БУ v77::Расчет 1cv7.md Россия Бесплатно (free) Практика программирования

Вроде бы все просто, пока не встретилось что-то наподобие "111;111""";111

27.05.2010    12420    Berrimor    16       

Фильтрация иерархического справочника по какому-либо условию в форме списка 13

Статья Программист Нет файла v77::ОУ v77::БУ v77::Расчет 1cv7.md Россия Бесплатно (free) Практика программирования

Перед 1С программистами порой встаёт задача реализовать фильтрацию справочника по какому-нибудь условию прямо в форме списка (Например "ФормаСписка" или "ДляПодбора"). Вот и передо мной, недавно, поставили такую задачу. Она оказалась не такой уж и тривиальной, особенно для иерархического справочника...

19.05.2010    10660    Antoska    19       

Как получить GUID без v7plus.dll в Предприятии 7.7 10

Статья Программист Нет файла v77::ОУ v77::БУ v77::Расчет 1cv7.md Россия Бесплатно (free) Практика программирования Универсальные функции

Часто в терминальных сессиях у пользователю Windows не хватает прав на регистрацию v7plus.dll. Соответственно нельзя воспользоваться, например методом СоздатьGUID() класса V7SysInfo.

12.05.2010    12264    prolancer    5       

1c v 7.7. Установка владельца для справочника, имеющего записи. 9

Статья Программист Нет файла v77::ОУ v77::БУ v77::Расчет 1cv7.md Россия Бесплатно (free) Практика программирования Работа с интерфейсом

Итак, в конфигурацию я должен был добавить новый справочник, и, самое странное, должен был поставить ему в подчинение уже существующий справочник, причем активно использующийся. Если делать это штатными средствами, 1с при сохранении конфигурации выдает сообщение, что справочник такой-то имеет записи и не может быть подчинен.

28.04.2010    7465    Майкопчанин    12       

Выгонялка. 14

Статья Программист Нет файла openconf v77::ОУ v77::БУ v77::Расчет 1cv7.md Россия Бесплатно (free) Практика программирования

Часто сталкиваюсь с проблемой: просишь пользователей выйти из базы, а они не слушаются! Для этого написала такую вот выгонялку.

21.04.2010    10517    Cvetic    38       

Упаковщик двоичных файлов os7764 30

Инструменты и обработки Программист Внешняя обработка (ert,epf) v77::ОУ v77::БУ v77::Расчет 1cv7.md Россия Бесплатно (free) Практика программирования

Помещает любые файлы (драйвера, внешние компоненты, видеоролики) в конфигурацию или внешнюю обработку и обеспечивает их распаковку.

18.04.2010    12716    205    nafa    27