Программирование, и жизнь

Показаны сообщения с ярлыком 1С Разработка. Показать все сообщения
Показаны сообщения с ярлыком 1С Разработка. Показать все сообщения

Хранение файлов в базе 1С. Примитивное файловое хранилище на Base64


Добрый день, это гайд из нескольких частей о том как можно удобно хранить файлы в самописной базе, а  также их открывать.
  • Примитивное файловое хранилище <- Вы здесь
  • Архивирование файлов в базе для экономии места
  • Выгрузка всех файлов на диск
Для того чтобы хранить файлы в базе данных, необходимо:
1. Создать справочник, с реквизитом файл, тип строка, длина - неограниченная, длина наименования 125
2. Описать процедуру загрузки файла

Файлы необходимо хранить в виде строки, алгоритм прост:
1. Запускаем диалоговое окно для выбора файла
2. Конвертируем выбранный файл в двоичные данные
3. Конвертируем в Base64, и сохраняем в справочнике

Копирование строки табличной части в другой документ в 1С Предприятие 8.3

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

Алгоритм следующий:
1. Добавляем реквизиты формы: ДокументЗаявки (или свое что-то там), УдалятьПослеКопирования, и команду копировать ( создается на сервере и клиенте )
2. На клиенте проверяем заполненность документа заявки
3. Проверяем не является ли ссылка на документ этим же документом, лучше для этого описать функцию которая будет выполняться на сервере, иначе на тонком клиенте работать не будет.
4. Спросим у пользователя, уверен ли он  в своих действиях.

Алгоритм реализации контроля остатков в нетиповой самописной конфигурации в 1С Предприятие 8.3

Во множестве различных уроках по 1С Программированию для начинающих рассказывается о том как делать приходные\расходные накладные, но не описывается контроль остатков, а зря, ведь расходными накладными можно уйти в далекие минуса.

1. При проведении расходной накладной необходимо чтобы движения документа автоматически удалялось.


Многочисленные ошибки сервера 1С Предприятие 8.3. + MS SQL

server_addr=tcp://servername:1561 descr=recv returns zero, disconnected line=1587 file=src\DataExchangeTcpClientlmpl.cpp
p.s. disconnected line= может любой, но файл один


При выгрузке информационной базы я наблюдал описанную выше ошибку, в конфигурации ЗУП рушились фоновые процессы, и все работала система крайне медленно.
Исходя из ошибки видно что сервер 1С нас разъединяет, перерыв кучу информации в интернете смог составить список вещей которые не работают, ответ который помог мне - в конце.
  • Исправление информационной базы
  • Удаление журнала регистраций
  • Удаление журнала транзакций SQL
  • Отключение IPV4
  • Разнос сервера 1С и SQL по разным серверам (глупо)
  • Удаление srvinfo
  • Смена портов сервера 1С
  • Отключение файрвола, или создание правил фильтрации
Что помогло: полная переустановка, с удалением всех папок 1С, и настройка сервера 1С снова.
Как бы чем не жонглировать, лучше испробовать сразу данный вариант.

upd 29.03.18 Данный баг проявлялся еще один раз, и лечился ровно также

1С 8.3 Меняем форму выбора, выводим колонку из регистра, и передаем в форму параметры.

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

Идем по стопам статьи в который мы изучали динамические списки, тут пойдет речь о форме выбора, рассмотрим задачу: "Необходимо добавить в форму выбора колонку с данными из регистра сведений, в форме выбора должен быть отбор по реквизиту основной формы.

1С Предприятие 8.3. Изменяем форму справочника, и переносим ее на внешнюю обработку с выводом доп. столбца

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

1С 8.3. Загрузка детализации Мегафона в формате HTML в табличную часть документа

Разбирать странички с помощью 1С довольно удобно, в 1С реализована модель DOM, поэтому можно парсить не регулярными выражениями, а собственно с помощью DOM.
Мой первый опыт работы с DOM в 1С выкладываю на общее обозрение.

ЗУП, HTTP Сервис, и уведомлялка о днях рождениях на C#

Задача выводить список именинников из базы 1С 8.3 ЗиУП, а так-же показывать ближайшие дни рождения, легче всего сделать отчет в 1С, но пошел дальше, и освоил объект конфигурации HTTP-сервис.
На самом деле ничего тяжелого, создаем HTTP сервис который по GET запросу будет производить запрос на стороне 1С сервера, и возвращать нам необходимые данные.
Решил не морозится с JSON, и просто полученный массив данных вывести разделителями, и на клиенте C# распарсить.

1С 7.77 ЗиК: msxml3.dll недостаточно памяти для завершения операции


Проблему совместимости 32 битных приложений с работой over 2gb оперативной памяти, выскакивает ошибка, ибо приложение не умеет в 2 и более гигабайт.

Было задание перенести базу из 1С 7.77 ЗиК в 1С 8.3 ЗУП, используя штатные средства я потерпел горе-поражение, миграция не удалась, зависание и ошибка.

1С 8.3 ЗУП: Тариф платежного агента меняется при записи?



Проблема: 
Тариф платежного агента сохраняется некорректно, округляется, значения после записи другие.

1С 8.3 ЗУП: Перерасчет северной надбавки на основе уже имеющегося стажа

upd: Нижеописанные манипуляции актуальны для версии ЗУП ниже 3.1.3 
Северный стаж и надбавка в Зарплате и управлением персоналом - больная тема.
Проблема №1: При трудоустройстве человек имеет стаж северный 7 месяца (допустим 2 группа льготная), имеет уже надбавку 20 процентов, в итоге при принятии на работу месяц наработанный сверху 6 месяцев пропадает.
Поля ввода стажа работы на севере - не работают, для чего указываются не понятно.
Поэтому приходиться самому высчитывать правильный стаж, в данном случае 1С заполняет будущие значения очень механически, не думая об исключениях, а они есть.
Email: cHJvdHNlbmtvQHBtLm1l