Центральный Дом Знаний - Работа в 1С 37

Информационный центр "Центральный Дом Знаний"

Заказать учебную работу! Жми!



ЖМИ: ТУТ ТЫСЯЧИ КУРСОВЫХ РАБОТ ДЛЯ ТЕБЯ

      cendomzn@yandex.ru  

Наш опрос

Как Вы планируете отдохнуть летом?
Всего ответов: 922

Онлайн всего: 1
Гостей: 1
Пользователей: 0


Форма входа

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

Работа в 1С 37

Работа в программе 1С

стр.: 1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16  17  18  19  20  21  22  23  24  25  26  27  28  29  30  31  32
33  34  35  36  37  38  39  40  41  42  43  44  45  

КонецЕсли;

// выдаем текст запроса в окно сообщений для проверки

// (в реальной программе это не делается)

Сообщить(ТекстЗапроса);

Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда

Сообщить("Ошибка в тексте запроса");

Возврат;

КонецЕсли;

КонецПроцедуры

Процедура Сформировать()

// вызов процедуры формирования запроса

Запросить();

Таб = СоздатьОбъект("Таблица");

Таб.ИсходнаяТаблица("Сформировать");

Таб.ВывестиСекцию("Шапка");

Таб.Опции(0,0,Таб.ВысотаТаблицы(),0);

// если две группировки

Если Признак=0 Тогда

Пока Запрос.Группировка("Долж")=1 Цикл

Таб.ВывестиСекцию("Должность");

Нум=0; // для нумерации сотрудников

Пока Запрос.Группировка("ФИО")=1 Цикл

Если Запрос.ФИО.ЭтоГруппа()=1 Тогда

Таб.ВывестиСекцию("Подразделение");

Иначе

Нум=Нум+1;

Таб.ВывестиСекцию("ФИО");

КонецЕсли;

КонецЦикла;

КонецЦикла;

Иначе

// если меньше двух группировок

Нум=0;

Пока Запрос.Группировка("ФИО")=1 Цикл

Если Запрос.ФИО.ЭтоГруппа()=1 Тогда

Таб.ВывестиСекцию("Подразделение");

Иначе

Нум=Нум+1;

Таб.ВывестиСекцию("ФИО");

КонецЕсли;

КонецЦикла;

КонецЕсли;

Таб.ВывестиСекцию("Подвал");

Таб.ТолькоПросмотр(1);

Таб.Показать("Сформировать","");

КонецПроцедуры

Процедура Выгрузить()

// вызов процедуры формирования запроса

Запросить();

Текст=СоздатьОбъект("Текст");

Текст.Шаблон(1);

Текст.ДобавитьСтроку(Заголовок);

Текст.ДобавитьСтроку("");

// если две группировки

Если Признак=0 Тогда

Пока Запрос.Группировка("Долж")=1 Цикл

Текст.ДобавитьСтроку(" Всего на должности [Запрос.Долж] – [Запрос.Кол_во] человек");

Нум=0; // для нумерации сотрудников

Пока Запрос.Группировка("ФИО")=1 Цикл

Если Запрос.ФИО.ЭтоГруппа()=1 Тогда

Текст.ДобавитьСтроку(" В подразделении [Запрос.ФИО] – [Запрос.Кол_во] человек");

Иначе

Нум=Нум+1;

Текст.ДобавитьСтроку("[Нум#Ч2]. [Запрос.ФИО#С50] – [Запрос.ФИО.ДатаПриема] [Запрос.ФИО.ДатаУвольнения]");

КонецЕсли;

КонецЦикла;

Текст.ДобавитьСтроку("");

КонецЦикла;

Иначе

// если меньше двух группировок

Нум=0;

Пока Запрос.Группировка("ФИО")=1 Цикл

Если Запрос.ФИО.ЭтоГруппа()=1 Тогда

Текст.ДобавитьСтроку("");

Текст.ДобавитьСтроку(" В подразделении [Запрос.ФИО] – [Запрос.Кол_во] человек");

Иначе

Нум=Нум+1;

Текст.ДобавитьСтроку("[Нум#Ч2]. [Запрос.ФИО#С50] – [Запрос.ФИО.ДатаПриема] [Запрос.ФИО.ДатаУвольнения]");

КонецЕсли;

КонецЦикла;

КонецЕсли;

Текст.ДобавитьСтроку(" Итого: [Запрос.Кол_во] человек");

Текст.ТолькоПросмотр(1);

Текст.Показать("Отчет","Новый.txt");

КонецПроцедуры

Процедура ВыборСтатуса()

ТипСтатуса=Статус.ПолучитьЗначение(Статус.ТекущаяСтрока());

КонецПроцедуры

Процедура ВыборПериода()

Если ТипПериода=1 Тогда

Форма.ВыбДата.Доступность(1);

Форма.ДатаНач.Доступность(0);

Форма.ДатаКон.Доступность(0);

Иначе

Форма.ВыбДата.Доступность(0);

Форма.ДатаНач.Доступность(1);

Форма.ДатаКон.Доступность(1);

КонецЕсли;

КонецПроцедуры

ТипСтатуса=1;

ТипГрупп=0;

Порядок=1;

ТипПериода=1;

Статус.ДобавитьЗначение(1,"Все работники");

Статус.ДобавитьЗначение(2,"Работающие");

Статус.ДобавитьЗначение(3,"Уволенные");

Статус.ДобавитьЗначение(4,"Принятые на работу");

Группировка.ДобавитьЗначение(1,"Группировать по должностям");

Группировка.ДобавитьЗначение(2,"Группировать по подразделениям");

ВыбДата=ТекущаяДата();

ДатаНач=ТекущаяДата();

ДатаКон=ТекущаяДата();

Обратите внимание, что в начале процедуры Выгрузить() нет вызова стандартной процедуры открытия файла Открыть(), так как файл не существует и мы его создаем.

Сохраните конфигурацию и запустите 1С в режиме Предприятие. Выгрузите несколько отчетов о сотрудниках в текстовый файл. Откройте и просмотрите этот файл через Far или Norton.

11.3 Загрузка данных из текстового файла

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

Дворник

Директор

Главный бухгалтер

Бухгалтер

Инженер

Конструктор

Менеджер

Начальник отдела

Программист

Рабочий

И сохраните этот файл под именем Долж.txt в тот каталог, где находится конфигурация.

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

Создайте обработку ЗагрузкаДолжностей и включите ее в меню Обработки под именем Загрузить должности. На форме диалога разместите следующие элементы (рисунок 11.3.1):

Рисунок 11.3.1

Элемент Файл имеет следующие свойства: Идентификатор – Файл, Тип – Строка, Длина – 30.

В программном модуле запрограммируем процедуру Выполнить():

Процедура Выполнить()

Текст=СоздатьОбъект("Текст");

Долж=СоздатьОбъект("Справочник.Должности");

// используем оператор Попытка для того, чтобы

// отследить ошибки при работе с файлом, например,

// если файл не существует

Попытка

// устанавливаем кодовую страницу Windows

Текст.КодоваяСтраница(0);

// открываем файл

Текст.Открыть(Файл);

Если Текст.КоличествоСтрок() = 0 Тогда

Предупреждение("Файл пустой!");

Возврат;

КонецЕсли;

Для Ном = 1 по Текст.КоличествоСтрок() Цикл

Стр = Текст.ПолучитьСтроку(Ном);

Если СтрДлина(Стр)>0 Тогда

// ищем должность в справочнике Должности

Долж.НайтиПоНаименованию(Стр,0,1);

// если не найдено добавляем

Если Долж.Выбран()=0 Тогда

Долж.Новый();

Долж.Наименование=Стр;

Долж.Записать();

КонецЕсли;

КонецЕсли;

КонецЦикла;

Исключение

// вывод сообщения об ошибке

Предупреждение(ОписаниеОшибки());

КонецПопытки;

КонецПроцедуры

Сохраните конфигурацию и запустите 1С в режиме Предприятие. Запустите созданную обработку с именем файла Долж.txt и убедитесь, что в справочнике Должности появились новые элементы.

Задания:

В конфигурациях, созданных на прошлых занятиях, сделайте следующие изменения и дополнения:

Вариант 1

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

Вариант 2

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

Вариант 3

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

Вариант 4

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

Вариант 5

В отчет по справочнику Налоги внесите возможность выгрузки данных в текстовый файл. Создайте обработку для загрузки данных из файла в справочник Улицы.

Вариант 6

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

Вариант 7

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

Вариант 8

В отчет по справочнику Номера внесите возможность выгрузки данных в текстовый файл. Создайте обработку для загрузки данных из файла в справочник ТипНомера.

Вариант 9

В отчет по справочнику Подписка внесите возможность выгрузки данных в текстовый файл. Создайте обработку для загрузки данных из файла в справочник ТипИздания.

Вариант 10

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

Вариант 11

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

Вариант 12

В отчет по справочнику Путевки внесите возможность выгрузки данных в текстовый файл. Создайте обработку для загрузки данных из файла в справочник Города.

Вариант 13

В отчет по справочнику Обувь внесите возможность выгрузки данных в текстовый файл. Создайте обработку для загрузки данных из файла в справочник ТипыОбуви.

Вариант 14

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

Вариант 15

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

Контрольные вопросы:

1. Для чего используется типа данных Текст?

2. В чем преимущество использования текстовых файлов?

3. Как узнать количество строк в текстовом файле?

4. Как открыть текстовый файл?

5. Как прочитать строку из текстового файла?

6. Как добавить строку в текстовый файл?

Loading

Календарь

«  Апрель 2024  »
ПнВтСрЧтПтСбВс
1234567
891011121314
15161718192021
22232425262728
2930

Архив записей

Друзья сайта

  • Заказать курсовую работу!
  • Выполнение любых чертежей
  • Новый фриланс 24