Как изменить файл в 1с
В этой статье мы узнаем, что такое обработки в платформе 1С 8.3 и для каких целей они нужны. Научимся создавать обработки в качестве объектов метаданных конфигурации 1С, научимся создавать внешние обработки, создавать формы обработок, добавлять обработки в подсистемы и давать права на обработки пользователям, а также узнаем, как открыть внешнюю обработку в 1С.
В платформе 1С, помимо объектов конфигурации, которые так или иначе связаны ведением учета (например, Справочники – для хранения однотипной информации, Документы – для отображения событий), существует объект, который напрямую не связан с ведением учета, и с помощью которого можно осуществлять различные вспомогательные действия (групповая обработка справочников и документов, загрузка – выгрузка информации и т.д.). Этот объект – Обработка. Обработки могут быть как объекты какой-то конфигурации, а также внешние – в этом случае сама обработка будет храниться где-то на жестком диске, её можно будет открыть в пользовательском клиенте 1С предприятия, и выполнить нужные действия.
Создать обработку 1С
После выполнения этой команды, будет создана пустая обработка, которая появится в дереве метаданных в соответствующей ветке, а также откроется окно менеджера обработки.
Обработка создана, и вы можете с ней работать: задать имя обработки, синоним и т.д.
Создать внешнюю обработку 1С
Или нажать на кнопку «Новый» в меню «Стандартная».
После откроется окно «Выбор вида документа», в котором необходимо выбрать «Внешняя обработка».
Откроется окно менеджера внешней обработки, и вы можете проделать с ней все нужные операции.
После того, как внешняя обработка создана, её желательно сохранить на жестком диске (и делать это периодически во время работы с ней в конфигураторе). Для того, чтобы сохранить внешнюю обработку необходимо или нажать на кнопку «Сохранить» меню «Стандартная».
Или просто нажать сочетание клавиш Ctrl + S.
После этих действий откроется окно, в котором можно выбрать каталог, где будет храниться эта внешняя обработка, а также ввести название файла.
После сохранения, у внешней обработки сверху будет прописан путь к ней.
Замечу, что файлы всех внешних обработок имеют расширение epf.
Добавить внешнюю обработку 1С
Иногда возникают задачи добавить внешнюю обработку в конфигурацию 1С. Чтобы это сделать, необходимо выделить ветку «Обработки» дерева метаданных конфигурации, вызвать контекстное меню и выполнить в нем команду «Вставить внешнюю обработку, отчет…».
В открывшемся окне необходимо выбрать нужную обработку.
После, обработка появится в дереве.
Сохранить обработку 1С в файл
Может возникнуть обратная задача: сохранить обработку из какой-то конфигурации в файл, т.е. сделать внешнюю обработку из простой обработки.
Делается это достаточно просто: нужно выделить обработку в дереве конфигурации, вызвать контекстное меню и выполнить команду «Сохранить как внешнюю обработку, отчет…»
Откроется окно «Сохранить как», в котором нужно выбрать месторасположение обработки, а также, если это необходимо, изменить название.
Подсистема обработки 1С
Обработку, которую мы создали в дереве метаданных можно включить в любую подсистему, тогда у нас появится возможность отобразить её в пользовательском интерфейсе. Для того, чтобы включить обработку в подсистему, необходимо зайти на закладку «Подсистемы» менеджера обработки и поставить флаг напротив нужной подсистемы.
Можно включить в подсистему другим способом. Необходимо выделить нужную обработку, вызвать контекстное меню и выполнить в этом меню команду «Дополнительно».
В правой части рабочего стола откроется окно «Дополнительно», в котором на закладке «Подсистемы» можно привязать эту обработку к нужной подсистеме, установив флаг рядом с подсистемой.
После того, как мы поставим флажки, то обработка включится в состав подсистемы.
Но, если мы попробуем её найти в пользовательском клиенте, то ни чего не найдем. Также, её не будет в командном интерфейсе подсистемы.
Причина этому – отсутствие основной формы обработки.
Основная форма обработки 1С
Для того, чтобы обработка появилась в командном интерфейсе, необходимо создать основную форму обработки.
Для этого, нужно в менеджере обработки перейти на вкладку «Формы», в которой нажать на кнопку «Добавить». После, откроется конструктор формы обработки, в котором можно ввести название новой обработки, её синоним, и самое главное установить флаг «Назначить форму основной».
Если вы нажмете на кнопку «Далее», то можете выбрать какие реквизиты обработки будут включены на форму, а если нажать на кнопку «Готово», то форма будет создана без реквизитов.
После этого, обработка появится в командном интерфейсе подсистемы.
Замечу, что основная форма обработки указана в свойстве обработки «Основная форма», если мы это свойство очистим.
То даже при наличии формы, обработка не будет отображаться в командном интерфейсе подсистемы.
Права на обработку 1С
Чтобы пользователь мог работать с обработкой, ему нужно дать права на неё. Для этого, необходимо у соответствующей роли для обработки установить права Использовать и Просмотр.
Если вы установите только право Использовать, то пользователь не сможет видеть обработку в интерфейсе. Он сможет только обращаться в ней посредством программного кода.
Если Вы внедряете обработку в какую-то типовую конфигурацию, то лучше для этого создать отдельную роль, а не изменять текущую. Тогда у вас будет меньше проблем с обновлением в будущем.
Открыть обработку 1с
И при выполнении команды с именем обработки будет открыта форма обработки.
Я немного изменил управляемую форму обработки, добавив надпись.
Управляемая форма открылась в независимом окне, если мы хотим, чтобы она открылась поверх окон, то нужно у основной формы обработки установить в свойство «Режим открытия окна» или значение «Блокировать весь интерфейс», или значение «Блокировать окно владельца».
После таких настроек, обработка будет открываться по верх окон.
Открыть внешнюю обработку 1С
В окне «Открыть» необходимо найти и выбрать нужную вам обработку.
После выйдет предупреждение безопасности, если вы знаете, что это за обработка, то нажимаете кнопку «Да».
Форма внешней обработки открылась.
Замечу, что в моем случае открылась форма обработки в отдельном окне, потому что, во-первых, я создал основную форму внешней обработки, а во-вторых, установил у основной формы в свойство «Режим открытия окна» значение блокировать окно владельца.
Чтобы пользователь мог открывать внешние обработки, ему необходимо установить право «Интерактивное открытие внешних обработок».
Другие статьи по конфигурированию в 1С:
- Книга посылается на электронную почту в формате PDF. Можно открыть на любом устройстве!
- Научитесь понимать архитектуру 1С;
- Станете писать код на языке 1С;
- Освоите основные приемы программирования;
- Закрепите полученные знания при помощи задачника.
Отличное пособие по разработке в управляемом приложении 1С, как для начинающих разработчиков, так и для опытных программистов.
- Очень доступный и понятный язык изложения
- Книга посылается на электронную почту в формате PDF. Можно открыть на любом устройстве!
- Поймете идеологию управляемого приложения 1С
- Узнаете, как разрабатывать управляемое приложение;
- Научитесь разрабатывать управляемые формы 1С;
- Сможете работать с основными и нужными элементами управляемых форм
- Программирование под управляемым приложением станет понятным
Эти книги, плюс книга по программированию оперативного учета имеются в едином комплекте: комплект книг по разработке в 1С.
Только для читателей моего блога,
промо-код на скидку в 300 рублей на весь комплект: blog
Если Вам понравился этот урок, был полезен или помог решить какую-нибудь проблему, то Вы можете поддержать мой проект, перечислив любую сумму.
можно оплатить вручную:
В 1С 8.3 (8.2) для работы с файлами существует два объекта: Файл и ДиалогВыбораФайла.
Рассмотрим каждый по отдельности.
Объект Файл служит для управления параметрами файлов.
Сразу стоит заметить, что данный объект не предназначен для чтения и записи из файлов.
Например, прочитаем параметры некоторого файла, находящегося на диске C:
В результате мы получим следующую информацию (если файл найден):
Параметры файла:
Полное имя файла: C:\Работа с файлами\статья.txt
Имя: статья.txt
Имя без расширения: статья
Расширение: .txt
Путь без имени: C:\Работа с файлами\
Размер: 899
Это файл: Да
Изменен: 18.05.2015 16:21:28
Только чтение: Нет
Невидимость: Нет
Запись в файл
Если вы только начинаете программировать в 1С или просто хотите систематизировать свои знания - попробуйте Школу программирования 1С нашего друга Владимира Милькина. Пошаговые и понятные уроки даже для новичка с поддержкой учителя.
Попробуйте бесплатно по ссылке >>
Теперь, когда мы выбрали и открыли файл, можно с ним работать, т.е. прочитать его содержимое или записать в него что-нибудь.
Рассмотрим пример:
Чтение файла в 1С
Часто бывает необходимо прочитать текст файла построчно, например, для анализа каждой строки. Для этого используем объект ЧтениеТекста.
Запись текста из 1С в файл
Заметим, что при записи текстового файла можно установить кодировку.
Копирование файла
Здесь все очень просто
Перемещение
Удаление
Диалог выбора файла
В указанных выше примерах есть одно неудобство. Путь к файлу прописан жестко в коде. Чтобы выбрать файл интерактивно, существует объект ДиалогВыбораФайла, о котором речь пойдет ниже.
Объект ДиалогВыбораФайла служит для открытия файла (файлов), сохранения файла или выбора каталога в диалоге специального вида.
Например, выберем и откроем некоторый файл с расширением txt:
Задаем режим диалога выбора. Доступны три варианта: ВыборКаталога, Открытие, Сохранение
Что такое расширения?
Расширения представляют в 1С собой что-то вроде параллельных конфигураций, которые автоматически объединяются с основной конфигурацией поставщика. Причем в расширениях можно добавлять как свои объекты, так и заимствовать объекты основной конфигурации.
Для чего нужны расширения?
В первую очередь расширения созданы для облегчения внесения изменений в программу. То есть, если пользователи просят добавить какой-либо функционал, то до появления расширений программистам приходилось снимать конфигурацию с полной поддержки и менять типовую конфигурацию.
Снятие с полной поддержки влечет за собой ряд неудобств:
- пропадает возможность автоматического обновления, что приводит как минимум к увеличению времени на то, чтобы обновить конфигурацию;
- требуется высокая квалификация специалиста, обслуживающего программу;
- если изменения вносились в стандартные объекты типовой конфигурации, то при обновлении они могут пропасть, то есть замениться опять на типовые, от поставщика.
При использовании расширений при внесении изменений программист не будет трогать типовую конфигурацию. Все изменения будут делаться при помощи расширений, которые (как я писал выше) тоже являются конфигурациями. Таким образом, основная конфигурация останется на полной поддержке.
После обновления основной конфигурации, если произошли в новом релизе какие-то изменения с объектом, который ранее был изменен расширением, то изменения все равно возьмутся из расширения. То есть расширения имеют больший приоритет, чем основная конфигурация.
Пример добавления расширения в 1С
Если вы только начинаете программировать в 1С или просто хотите систематизировать свои знания - попробуйте Школу программирования 1С нашего друга Владимира Милькина. Пошаговые и понятные уроки даже для новичка с поддержкой учителя.
Попробуйте бесплатно по ссылке >>
Чтобы показать, что такое расширение, лучше привести пример его создания в конфигураторе 1С.
Как видно, конфигурация расширения имеет точно такую же структуру, как и основная. Только она изначально совершенно чистая, без объектов.
Недавно я писал статью о том, как самим сделать обработку для перенумерации объектов. На её примере я хочу сделать ее встроенной при помощи расширения.
Поэтому справочник мы позаимствуем из основной конфигурации:
Вот такая структура у меня получилась:
Таким образом, мы добавили в программу новую обработку, не изменив при этом основную конфигурацию.
Расширение можно выгрузить в файл и загрузить потом в другую конфигурацию. Это очень удобно для разработчиков. Получив заказ, программист на своей конфигурации делает расширение и передает его потом заказчику.
В заключение хочу сказать, что работа с расширениями еще не закончена. Постоянно добавляются новые возможности, расширяется круг объектов, с которыми можно работать. Поэтому, если Вы решили активно работать с расширениями, чаще обновляйте платформу.
Файл 1С с расширением *dt — это файл, который можно получить при создании копии базы через Конфигуратор. С помощью него в дальнейшем можно восстановить копию базы. Рассмотрим подробнее, как работать с этим файлом, на примере программы 1С:Бухгалтерия предприятия.
Как получить файл dt
Зайдем в программу через Конфигуратор под пользователем с полными правами.
Откроем меню «Администрирование — Выгрузить информационную базу».
Укажем папку для сохранения файла и название файла, нажмем «Сохранить». Название файлу рекомендуем давать понятное, осмысленное, а не оставлять по умолчанию. Так будет проще ориентироваться, если файлов будет несколько.
Получите понятные самоучители по 1С бесплатно:
В итоге в папке будет файл dt.
Как загрузить файл dt
Далее рассмотрим, как загрузить файл dt. На практике есть несколько частых сценариев:
- Переносим базу на другой компьютер.
- Продолжаем работать на текущем компьютере в имеющейся базе. Копия же нужна, например, чтобы поэкспериментировать.
- Текущая рабочая база нам не нужна, мы хотим ее заменить на копию.
В зависимости от этого немного отличаются дальнейшие действия.
В первом и втором случаях проще всего создать новую пустую базу и загрузить туда копию.
В третьем случае загружаем копию прямо на рабочую базу.
Загрузка копии в пустую базу
Для начала создадим пустую базу. Нажмем кнопку «Добавить».
Отметим, что при переносе базы на другой компьютер, может вообще не быть других баз. В таком случае список в 1С будет пустым. В остальном порядок действий такой же. Ну и разумеется, нужно файл dt перенести на этот компьютер, например, на флешке.
Выбираем пункт «Создание новой информационной базы».
Можно создать базу и из шаблона, но это займет больше времени. Быстрее создать пустую базу, учитывая то, что на нее мы будем грузить копию.
Укажем название базы и папку для ее хранения.
Затем заходим в созданную базу в Конфигураторе.
Переходим в меню «Администрирование — Загрузить информационную базу».
Выбираем наш файл с расширением *dt и нажимаем «Открыть».
Нажимаем «Да» на предупреждение.
Через некоторое время база будет загружена.
Здесь нажмем «Нет», если не нужно заходить повторно в Конфигуратор загруженнной базы.
В итоге мы получим базу с данными из копии.
Загрузка копии в рабочую базу
В этом случае новую базу создавать не нужно.
Просто заходим в Конфигуратор той базы, которую нужно заменить на копию.
Затем выполняем описанные выше действия по загрузке файла dt.
В этой статье я покажу идеальный пример, когда программист 1С пришел к клиенту, а там ему дали какое-то задание по доработке конфигурации. Ситуация такая, что сделать эти изменения на рабочей базе по какой-то причине не представляется возможным: там или работают пользователи, или нет рабочего места у клиента, или ещё что-то. Поэтому программист 1С принимает решение взять конфигурацию с собой на свое рабочее место (домой или в офис), и уже на своем рабочем месте внести все изменения, а потом вернуться к клиенту и загрузить сделанные изменения в его рабочую базу.
Я разберу основные шаги внесения изменений в конфигурацию клиента, особенно она будет интересна начинающим программистам 1С.
Как сохранить конфигурацию 1с
В результате у вас получится cf-файл, который вы или зальете в облако, или скопируете на флешку, и отнесете на свое рабочее место (домой или в офис).
Как загрузить конфигурацию 1с
После того, как вы придете на свое рабочее место, необходимо создать пустую базу. Делается это достаточно просто.
В результате выполнения команды, откроется окно выбора файла с расширением cf, в котором вы выбираете ранее сохраненный у клиента cf-файл.
Включить возможность изменения конфигурации
Чтобы мы могли с ней работать, необходимо включить возможность изменения конфигурации.
Более подробно о поддержке конфигурации читайте в моей статье Поддержка конфигурации 1С.
Мы включим возможность изменения конфигурации, оставив для всех объектов правила «Объект поставщика не редактируется».
А также включим для справочника Номенклатура и документа ЧекККМ c основной формой документа правило «Объект поставщика редактируется с сохранением поддержки»
Внести изменения в конфигурацию 1С
Изменим справочник Номенклатура, добавив в него реквизит.
А также документ ЧекККМ: добавим реквизит и поместим его на форму в виде элемента Поле.
Сделав нужные изменения, сохраним cf-файл нашей измененной конфигурации, как мы это делали ране, предварительно протестировав изменения.
Объединение конфигурации 1с
После того, как вы всё сделаете на своем рабочем месте и придете к клиенту, необходимо загрузить ваши изменения в клиентскую конфигурацию.
И здесь две рекомендации:
- Обязательно сохраните базу клиента, перед тем, как вносить изменения;
Не используйте команду «Загрузить конфигурацию из файла».
Почему нельзя использовать команду «Загрузить конфигурацию из файла»? Потому что, если во время вашего отсутствия с клиентской конфигурацией что-то делали, то вы этой командой сотрете все ранее сделанные изменения.
Включим возможность изменения в клиентской базе так, как мы это делали выше в своей домашней копии, и выполним опять операцию сравнения-объединения. В этот раз замки с объектов исчезнут, мы оставляем флажки у тех объектов, изменения которых мы хотим внести в базу клиента, и нажав на кнопку «Выполнить» вносим изменения в клиентскую базу.
Сравнение конфигураций 1С
Иногда возникают ситуации, когда вам просто нужно сравнить основную конфигурацию с какой-то конфигурацией из файла, без выполнения процесса объединения.
После выполнения команды нужно будет выбрать, что с чем мы сравниваем.
И если мы сравниваем с конфигурацией из файла, то необходимо указать нужный cf-файл.
После выйдет окно, где будут показаны отличия одной конфигурации от другой.
Возврат на поддержку измененной конфигурации 1С
Редко, но бывают случаи, когда снимают полностью с поддержки измененную конфигурацию 1С, если мы в этом случае поставим обратно на поддержку при помощи команды «Загрузить конфигурацию из файла», то все изменения сделанные ранее затрутся.
Чтобы сохранить изменения нужно использовать уже знакомую команду «Сравнить объединить с конфигурацией из файла».
Во время возврата на поддержку нужно выбрать cf-файл типовой конфигурации 1С.
После выбора файла типовой конфигурации, выйдет предложение поставить конфигурацию на поддержку.
После нажатия кнопки «Выполнить», появится окно с настройками правил поддержки для объектов, в этом окне оставим всё по умолчанию.
Конфигурация встанет на поддержку с возможностью изменений.
Но наша конфигурация еще не полностью на поддержке.
Для того, чтобы она стала полностью на поддержке, необходимо в окне «Настройка поддержки» у всех объектов конфигурации, которые были изменены установить правило «Объект поставщика редактируется с сохранением поддержки», а также у самой конфигурации. Если в вашей конфигурации все объекты должны быть на поддержке, то чтобы не ставить каждый объект отдельно, можно во время установки правила для всей конфигурации, поставить флаг «Установить для подчиненных объектов», тогда это правило для всех объектов конфигурации установится автоматически. Иначе нужно будет к каждому объекту отдельно применять это правило.
Статьи по теме обновлений 1С:
Если по мимо задач по администрированию, перед вами стоят задачи по разработке в 1С, то рекомендую вам свою книгу «Программировать в 1С за 11 шагов», в которой подробно и основательно шаг за шагом даются основные знания по разработке в 1С.
- Книга посылается на электронную почту в формате PDF. Можно открыть на любом устройстве!
- Научитесь понимать архитектуру 1С;
- Станете писать код на языке 1С;
- Освоите основные приемы программирования;
- Закрепите полученные знания при помощи задачника.
Отличное пособие по разработке в управляемом приложении 1С, как для начинающих разработчиков, так и для опытных программистов.
- Очень доступный и понятный язык изложения
- Книга посылается на электронную почту в формате PDF. Можно открыть на любом устройстве!
- Поймете идеологию управляемого приложения 1С
- Узнаете, как разрабатывать управляемое приложение;
- Научитесь разрабатывать управляемые формы 1С;
- Сможете работать с основными и нужными элементами управляемых форм
- Программирование под управляемым приложением станет понятным
Эти книги, плюс книга по программированию оперативного учета имеются в едином комплекте: комплект книг по разработке в 1С.
Только для читателей моего блога,
промо-код на скидку в 300 рублей на весь комплект: blog
Если Вам понравился этот урок, был полезен или помог решить какую-нибудь проблему, то Вы можете поддержать мой проект, перечислив любую сумму.
можно оплатить вручную:
Читайте также: