Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторная работа_1C__2_1.doc
Скачиваний:
19
Добавлен:
10.05.2015
Размер:
543.23 Кб
Скачать

2.14 Работа с документом.

Документ готов. Проверим его в работе.

  1. Открываем 1С:Предприятие в монопольном режиме;

  2. Через меню "Операции" команда "Управление оперативными итогами";

  3. Ставим дату актуальности итогов на 01.10.2007;

  4. Нажимаем [Установить];

  5. Появился вопрос "Изменить Точку Актуальности итогов";

  6. Отвечаем [Да];

  7. Нам сообщают, что изменение точки актуальности завершено. Подтверждаем получение сообщения (подробнее см. "Руководство пользователя");

  8. Выходим из окна управления итогами;

  9. Из нового раздела меню "Документы" вызываем документ приход денег;

  10. Номер документа – 1, Дата – 02.10.2007, Комментарий – "наш первый документ", Контрагент – "Винни-Пух и все все все", Договор – "№12 от 2 Октября 2007 г.", Сумма – 1000;

  11. [Закрыть];

  12. Нас спросят – сохранить ли документ? [Да];

  13. Попросят указать время – в начало дня;

  14. Входим в меню "Журналы". Выберем журнал "ДвижениеДенег";

  15. Если мы в журнале ничего не видим, значит, у нас стоит не тот период просмотра журнала. Входим в меню Действия, команда "Интервал". Устанавливаем диапазон дат от 01.10.2007 до текущей даты;

  16. Мы видим наш документ. Пиктограммка слева – голубенький листок бумажки. Это значит, что документ сохранен;

  17. Откроем этот документ, дважды щелкнув его мышкой;

  18. Теперь нажмем [ОК];

  19. Нас спросят про сохранение документа – [Да];

  20. Провести документ? – [Да];

  21. Точка актуальности будет перенесена на новую дату. Продолжить? – [Да]; Нами точка Актуальности была выставлена на 01.10.2007, а документ от 02.10.2007 – точка актуальности перемещается на последний проведенный документ.

  22. В журнале пиктограммка приобрела красную галочку – флаг проведения документа, и красную черточку внизу – признак того, что ТА (Точка Актуальности стоит на текущем документе);

  23. Посмотрим, какие движения произвел наш документ;

  24. Курсор на документ. Меню "Действия", команда "Движения документа". Появилось окошко. В нем галочка стоит на строке с надписью Взаиморасчеты – это означает, что движение было только по этому регистру; Тут есть еще строчка – Реквизиты справочников. Документ при проведении может менять значения периодических реквизитов справочников! (Если, конечно, это прописать в процедуре ОбработкаПроведения).

  25. Выбираем строку Взаиморасчеты;

  26. Появилось окно "Движения регистров Взаиморасчеты (Приход денег 1 (02.10.2007))";

  27. Видим в списке движений одну строку со знаком плюс (+) – это был приход. Движение было только одно – как мы и написали;

  28. Закроем 1С:Предприятие;

2.15 Отчет по долгам.

Мы теперь, по данным нашей программы, должны фирме "Винни-Пух и все все все" – 1000 ед. денег. Это мы можем определить из нашего единственного документа, но когда таких документов будет много, и контрагентов в документах будет тоже много, мы запутаемся. Пусть лучше машина сама показывает нам кто, кому, по какому договору и сколько должен. Для таких целей существуют отчеты. Простейший отчет – "список номенклатуры" – мы уже создавали. Этот отчет у нас был включен в форму списка справочника. Теперь мы создадим отчет, имеющий свою отдельную форму.

  1. В дереве метаданных, в разделе отчеты, создаем новый отчет;

  2. Идентификатор – "Взаиморасчеты";

  3. А вот вставлять в интерфейс из визарда не будем. Мы потом сами ручками вставим;

  4. Конструкторы никакие вызывать не будем – так напишем (либо скопируем с сей методички);

  5. Появилась экранная форма отчета;

  6. Добавим поле ввода. Идентификатор – ВыбДата, тип – дата;

  7. В модуле формы пишем: Процедура Сформировать()   Запрос=СоздатьОбъект("Запрос"); // Запрос – специальный объект в 1С, служит для получения структурированной // выборки данных   ТЗ="   |Период с ВыбДата по ВыбДата;   |Контр = Регистр.Взаиморасчеты.Контрагент;   |Дог = Регистр.Взаиморасчеты.Договор;   |Сум = Регистр.Взаиморасчеты.Сумма;   |Функция СумКонОст = КонОст(Сум);   |Группировка Контр упорядочить по Контр.Код;   |"; // Это текст запроса. Подробности в "Описании языка" том 2   Если Запрос.Выполнить(ТЗ)=0 Тогда     Сообщить("Запрос не выполнен");     Возврат;   КонецЕсли; // Если запрос будет не выполнен по какой либо причине, метод Выполнить() // вернет 0. Мы сообщим пользователю о произошедшей ошибке, и // командой Возврат – прервем выполнение процедуры   ИтогоМы=0;   ИтогоНам=0; // В этих двух переменных мы будем хранить итоговую информацию по долгу   Таб=СоздатьОбъект("Таблица");   Таб.ИсходнаяТаблица("");   Таб.ВывестиСекцию("Шапка");   Пока Запрос.Группировка("Контр")=1 Цикл // Получаем очередную запись из запроса     ТЭ=Запрос.Контр; // Во временную переменную передаем значение выборки     Долг=Запрос.СумКонОст; // Определяем суммарный долг по текущему значению выборки // Дальше уже все знакомые нам методы     Если ТЭ.ЭтоГруппа()=1 Тогда       НазГр=СокрЛП(ТЭ.Наименование);       Если  Долг=0 Тогда       ИначеЕсли Долг>0 Тогда         Мы=Долг;         Нам=0;       ИначеЕсли Долг<0 Тогда         Мы=0;         Нам=-Долг;       КонецЕсли;       Таб.ВывестиСекцию("Группа");     Иначе       Наз="("+СокрЛП(Строка(ТЭ.Код))+") "+СокрЛП(ТЭ.Наименование);       Если  Долг=0 Тогда         Продолжить;       ИначеЕсли Долг>0 Тогда         Мы=Долг;         Нам=0;         ИтогоМы=ИтогоМы+Мы;       ИначеЕсли Долг<0 Тогда         Мы=0;         Нам=-Долг;         ИтогоНам=ИтогоНам+Нам;       КонецЕсли;       Таб.ВывестиСекцию("Строка");     КонецЕсли;   КонецЦикла;   Таб.ВывестиСекцию("Итого");   Таб.ТолькоПросмотр(1);   Таб.ПараметрыСтраницы(1,100,1);   Таб.Показать(""); КонецПроцедуры

  8. Перейдем на закладку таблица, создадим шаблон, такого вида:

  9. Закроем форму отчета;

  10. Теперь будем включать наш отчет в меню. В окне метаданных перейдем на закладку "Интерфейсы";

  11. Меню Действия, команда "Редактировать". Редактировать меню;

  12. Входим в редактирование строки "новая колонка...";

  13. Название пишем "Отчеты";

  14. [ОК];

  15. Открываем появившийся раздел меню "Отчеты";

  16. Открываем подраздел меню "новый...";

  17. Выбираем объект – Отчеты.Взаиморасчеты;

  18. Поля Название, Подсказка заполнились автоматически. Их можно поменять;

  19. [ОК];

  20. Меню Действия команда "Тест" вызовет окошко, где будет показано, как будет выглядеть наше меню;

  21. Закрываем тестовое окно;

  22. Закрываем окно редактирования меню;

  23. Возвращаемся к дереву метаданных;

  24. Сохраняем конфигурацию;

  25. Входим в 1С:Предприятие;

  26. Через меню Отчеты вызываем наш отчет "Взаиморасчеты";

  27. Устанавливаем дату 02.10.2000;

  28. Нажимаем [Сформировать];

  29. Результат. Мы должны всем поставщикам 1000, из них Винни-Пуху 1000, а всего наш долг 1000. Что и требовалось;