Какие функции реализуются при помощи объекта программы документ

Аннотация: Вводится понятие архитектуры документ-отображение, рассматривается механизм управления документом. Изучаются классы отображений, классы шаблона документа и классы документа. Приводится пример SDI-приложения.

Ключевые слова: SDI, MDI, MFC, CSTRING, акселератор

Архитектура «документ-отображение»

Для реализации SDI и MDI -приложений посредством библиотеки классов MFC применяется механизм «документ/отображение». Это позволяет отображать один документ различными способами.

Документы и отображения

Архитектура «документ/отображение» (document/view) базируется на взаимодействии четырех основных классов.

  • Класс CDocument (или COleDocument ) реализует основные возможности внутреннего представления документа. Этот класс используется для управления данными (обычно документ представляет модуль данных, открываемых по команде Open и сохраняемых командой Save меню File).
  • Класс CView (или один из его наследуемых классов) отвечает за отображение содержания документа или любой графической информации. Объекты этого класса будем называть отображениями. Одному документу может быть сопоставлено несколько различных объектов отображений. При этом отображение пристыковывается или сопоставляется документу.

Отображение представляет вид документа на экране и является некоторой средой, взаимосвязывающей документ и пользователя. Объект «отображение» воспроизводит вид документа на экране и интерпретирует действия пользователя как операции над документом. Класс отображения также форматирует изображение как для печати, так и для предварительного просмотра.

C# — Класс и объект. Уроки для маленьких и тупых #8.

  • Класс CFrameWnd (или другой класс Windows-окна, включая MDIFrameWnd и CMDIChildWnd ) представляют объекты, обеспечивающие окно-рамку (frame) вокруг одного или нескольких отображений документа.
  • Класс CDocTemplate (или классы CSingleDocTemplate, CMultiDocTemplate ) поддерживают объект шаблона документа, координирующий один или несколько существующих документов заданного типа, и управляют созданием документа, отображения и окна-рамки для этого типа.

Взаимосвязь объектов


Рис. 20.1. Взаимосвязь объектов «документ ->отображение -> окно-рамка »

Объект «отображение» используется не только для представления документов на экране. Он же представляет документ и для печати, и для предварительного просмотра печатаемого документа.

С помощью механизма «документ-отображение» реализуется разделение данных, их экранное представление и обработка действий пользователя.

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

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

Отправка электронных документов в 1С-ЭДО

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

Следующая таблица иллюстрирует, какими объектами создаются шаблон документа, документ, окно-рамка и отображение.

Создающий объект Создаваемый объект
Приложение (Application object) Шаблон документа
Шаблон документа (Document template) Документ
Шаблон документа (Document template) Окно-рамка
Окно-рамка (Frame window) Отображение (View)
Читайте также:
Название детской конкурсной программы

Все оконные MFC-приложения имеют как минимум два объекта: объект «приложение», производный от класса CWinApp , и объект «главное окно», производный от класса CWnd или его потомков — классов CFrameWnd, CMDIFrameWnd и CDialog .

Объект «документ» отвечает за внутреннее представление данных, показываемых объектом «отображение». Объект «отображение» предназначен для манипулирования данными объекта документа. Объект «отображение» состыковывается с объектом «документ» и окном-рамкой, образуя цепочку «документ->отображение->окно». Приложения, использующие SDI (Single Document Interface) или MDI (Multi Document Inter-face) интерфейс соответственно, называются SDI -приложением и MDI -приложением. Такие приложения относятся к приложениям с архитектурой «документ-отображение» (document/view) .

Создание приложения с архитектурой «документ-отображение»

При создании приложения, использующего архитектуру «документ-отображение», как правило, должны быть выполнены следующие шаги:

  1. созданы ресурсы, используемые в шаблоне документа;
  2. реализован класс приложения (производный от CWinApp). Переопределен в этом классе метод InitInstance ;
  3. в методе InitInstance созданы шаблоны всех типов используемых документов и добавлены в список шаблонов. Класс CWinApp имеет переменную «член класса m_pDocManager» , используемую для доступа к списку шаблонов;
  4. в методе InitInstance создан объект «окно-рамка» класса, наследуемого от класса CMDIFrameWnd или CMDIChildWnd , и данное окно отображено как главное окно приложения;
  5. в таблицу сообщений добавлены входы, которые описывают обработку сообщений, поступающих при открытии или сохранении файла;
  6. создан объект «приложение»;
  7. реализован класс документа, производный от CDocument . Переопределены методы OnNewDocument и Serialize ;
  8. реализован класс окна-рамки, производный от CMDIFrameWnd или CMDIChildWnd ;
  9. реализован класс отображения, производный от CView или его потомков.
Управление документом

Для реализации управления данными документа первоначально необходимо выполнить следующие шаги:

  1. Для каждого типа документов объявить класс, производный от класса CDocument .
  2. Для хранения данных объявить переменные класса документа.
  3. Переопределить в производном классе документа метод Serialize класса CDocument . Метод Serialize реализует чтение и запись данных документа с диска.
  4. Для выполнения стандартных операций над документом следует дополнительно переопределить методы базового класса, такие как OnNewDocument, OnOpenDocument и DeleteContents .

Данные документа хранятся в переменных класса документа. Библиотека MFC содержит ряд классов, инкапсулирующих работу с различными наборами данных, включая следующие классы:

  • CString
  • CObList
  • CByteArray
  • CStringList
  • CMapWordToPrt

Для выполнения операций над элементами данных в класс документа добавляются требуемые методы.

При создании объекта «отображение» формируется указатель на документ, используемый отображением для доступа к объекту «документ» (его методам и переменным). Этот указатель может быть получен объектом отображения вызовом метода GetDocument класса CView . Отображение использует данные, хранимые в классе документа, для их отображения и изменения.

Источник: intuit.ru

Основы работы с документами и журналами документов в программе

Для обращения к формам документов с целью ввода новых документов в журнал.

Для обращения к заполненным формам документов, раннее введенных в журнал.

Для всех вышеперечисленных целей.

Читайте также:
Прекращена работа программы повер поинт

2. Каким образом может быть просмотрен документ «Реализация ТМЦ», ранее введенный в программу?

Из общего журнала документов.

Из журнала «Документов по покупателям».

Способами, указанными в ответах 1 и 2.

3. Влияет ли установка интервала видимости документов в журнале документов на точку актуальности итогов?

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

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

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

Необходимо переносить точку актуальности на последний документ в журнале, только в том случае, если интервал видимости изменен в общем журнале документов.

4. Может ли в одном журнале документов содержаться информация о нескольких различных видах документов?

Не может, так как один журнал документов строго соответствует одному виду документов.

Может, но не более трех видов документов, определенных при конфигурировании системы.

Может, так как вид журнала, в котором регистрируется документ, определяется пользователем произвольно в момент ввода документа.

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

5. Может ли быть один и тот же документ одновременно зафиксирован в нескольких журналах документов?

Не может, так как один журнал документов строго соответствует одному типу документов.

Может, но не более чем в двух журналах: обычном и общем.

Может в неограниченном числе журналов, определяемом при конфигурировании системы.

Может в ограниченном числе журналов, заданных пользователем при настройке параметров в режиме «Сервис».

6. Какие функции реализуются при помощи объекта программы «Документ»?

Ввод и сохранение исходных данных первичных документов.

Автоматическое движение соответствующих регистров при проведении документов.

Формирование и печать документов.

Все функции, перечисленные в предшествующих ответах.

Только функции, перечисленные в ответах 2 и 3.

7. Можно ли вводить новые документы путем копирования информации из ранее введенных документов того же вида?

Нельзя, поскольку у документов для этой цели предусмотрен способ «Ввод на основании».

Можно, но для этого предварительно необходимо сделать копируемый документ непроведенным.

Можно без ограничений.

8. Какие реквизиты переносятся в новый документ при его вводе путем копирования из ранее введенного документа того же вида?

В новый документ переносятся все реквизиты документа-образца.

В новый документ переносятся все реквизиты документа-образца за исключением реквизитов, полученных расчетным путем.

В новый документ переносятся все реквизиты документа-образца за исключением номера документа.

В новый документ переносятся все реквизиты документа-образца за исключением даты документа.

В новый документ переносятся все реквизиты документа-образца за исключением номера и даты документа.

9. Для какой цели предназначен режим «Ввод на основании»?

Для автоматического ввода в общий журнал на основании ранее введенного документа.

Читайте также:
Программа где можно рисовать вдвоем

Для ввода нового документа путем копирования информации из документа другого вида.

Для ввода нового документа путем копирования информации из нескольких документов другого вида.

Для целей, указанных в ответах 1 и 2.

Для целей, указанных в ответах 2 и 3.

10. Может ли один документ иметь несколько подчиненных документов?

Может, но не более двух.

Может, но не более трех.

Может без ограничений.

11. Может ли пользователь в процессе ввода документа изменить номер документа, автоматически сформированный программой?

Может, но только в том случае, если режим модификации номеров включен в режиме «Сервис».

Может, но только в том случае, если при конфигурировании документа для данного номера установлено свойство «модифицируемый».

Может безо всяких ограничений.

Не может ни при каких обстоятельствах.

12. Для какой цели предназначен режим «Отчет о движении документа»?

Для просмотра цепочек подчиненных документов, введенных на основании других документов.

Для просмотра списка операций, которые произошли в результате проведения документа.

Для целей, указанных в ответах 1 и 2.

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

13. Для какой цели предназначен режим «Структура подчиненности»?

Для просмотра цепочек подчиненных документов, введенных на основании других документов.

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

Для ввода нового подчиненного документа.

Для целей, указанных в пунктах 1 и 3.

14. Влияет ли интервал видимости, установленный для журнала на формирование списка значений отбора по данному журналу?

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

Значения в список отбора включаются всегда только из документов, находящихся в интервале видимости.

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

Значения в список отбора включаются всегда только из документов, находящихся вне интервала видимости.

15. Какие режимы сортировки предусмотрены в журнале документов?

В журнале документов не предусмотрена сортировка.

По наименованию контрагента.

По сумме документа.

По дате и времени документа.

По признакам, указанным в ответах 3 и 4.

16. Какими способами можно управлять объемом документов, вводимых для просмотра в журнале?

Установкой интервала видимости.

Установкой условий отбора по реквизитам документа.

Установкой условий отбора по признаку состояния документа: проведенный, непроведенный, помеченный на удаление.

Возможно использование методов, указанных в ответах 1 и 2.

Возможно использование методов, указанных в ответах 1, 2 и 3.

Источник: infopedia.su

Вариант 4

1.Какие действия вправе совершать пользователь по отношению к типовой конфигурации программы «1с: Бухгалтерия»?

Пользователь имеет право вносить любые изменения или разрабатывать собственную конфигурацию, используя типовую в качестве образца

2.В каких случаях используется запуск программы в режиме «Монопольно»?

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru