Управление интерфейсом программы 1С

Автор: Пользователь скрыл имя, 26 Марта 2013 в 01:06, курсовая работа

Описание работы

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

Содержание

1.Введение.
2.Актуальность выбранной темы.
3.Решение данной задачи.
4.Условие выбора среды разработки Delphi.
5.Результат работы.
6.Описание решения задачи.
7.Вывод.
8.Литература.

Работа содержит 1 файл

Отчёт.docx

— 167.02 Кб (Скачать)

В состав RAD Pack входит эксперт для  преобразования ресурсов, изготовленных  в Borland Pascal 7.0, в формы Delphi. Уже появились эксперты, облегчающие построение DLL и даже написание собственных экспертов

4.18 Интерактивная обучающая система.

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

4.19 Компоненты доступа к базам данных и визуализации данных.

Библиотека объектов содержит набор  визуальных компонент, значительно  упрощающих разработку приложений для  СУБД с архитектурой клиент-сервер. Объекты инкапсулируют в себя нижний уровень - Borland Database Engine.

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

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

4.20 Разработка приложений БД.

Delphi позволяет использовать библиотеку визуальных компонент для быстрого создания надежных приложений, которые легко расширяются до приложений с архитектурой клиент-сервер. Другими словами, Вы можете создать приложение, работающее с локальным сервером InterBase, а затем использовать созданное приложение, соединяясь с удаленным SQL-сервером через SQL-Links.

4.21 Библиотека объектных Визуальных Компонент.

Компоненты, используемые при разработке в Delphi (и также собственно самим Delphi), встроены в среду разработки приложений и представляют из себя набор типов объектов, используемых в качестве фундамента при строительстве приложения.

Этот костяк называется Visual Component Library (VCL). В VCL есть такие стандартные элементы управления, как строки редактирования, статические элементы управления, строки редактирования со списками, списки объектов.

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

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

Кроме того, Delphi поддерживает такие низкоуровневые особенности, как подклассы элементов управления Windows, перекрытие цикла обработки сообщений Windows, использование встроенного ассемблера.

4.22 Формы, модули и метод разработки “Two-Way Tools”.

Формы - это объекты, в которые  вы помещаете другие объекты для  создания пользовательского интерфейса вашего приложения. Модули состоят  из кода, который реализует функционирование вашего приложения, обработчики событий для форм и их компонент.

Информация о формах хранится в  двух типах файлов - .dfm и .pas, причем первый тип файла - двоичный - хранит образ формы и ее свойства, второй тип описывает функционирование обработчиков событий и поведение компонент. Оба файла автоматически синхронизируются Delphi, так что если добавить новую форму в ваш проект, связанный с ним файл .pas автоматически будет создан, и его имя будет добавлено в проект.

Такая синхронизация и делает Delphi two-way-инструментом, обеспечивая полное соответствие между кодом и визуальным представлением. Как только вы добавите новый объект или код, Delphi устанавливает т.н. “кодовую синхронизацию” между визуальными элементами и соответствующими им кодовыми представлениями.

5. Результат работы

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

 

 

 

 

 

 

 

 

 

 

 

 

Готовый программный продукт.

Рис.1

6. Описание решения задачи

Решение задачи началось с  установки на мой ПК платформы 1С:Предприятие  и среды разработки Borland Delphi 7.

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

Я выбрал конфигурацию «Склад», с ним мы дальше и будем иметь  дело, а именно:

  • устанавливать соединение;
  • выбирать пользователя;
  • считывать информацию со справочников;
  • изменять записи в справочнике;

В Delphi:

  • Создаю новый проект.
  • Размещаю на форме компоненты так, как это представлено на рис.2

Форма проекта.

Рис.2

 

Назначение элементов  управления в форме проекта.  Таблица №1.

Элемент управления

Идентификатор

Назначение

Раскрывающийся

список

CB1: TComboBox

Выбор версии программы 1С

Кнопка Обзор…

Button3: TButton

Выбор пути к базе 1С

Кнопка Соединить

Button1: TButton

Соединение  с программой

1С: Предприятие

Компонент выбора папки

OpenDialog1: TOpenDialog

Выбор папки

Однострочный редактор

E2: TEdit

Путь к базе 1С

Однострочный редактор

E4: TEdit

Наименование пользователя 1С

Однострочный редактор

E5: TEdit

Пароль пользователя 1С

Раскрывающийся

список

CB2: TComboBox

Наименование справочника  базы 1С

Кнопка Справочник

Button2: TButton

Считывание и показ  содержимого(Код и Наименование) справочника

Раскрывающийся

список

CB3: TComboBox

Наименование записи справочника

Кнопка Изменить

Button4: TButton

Изменение наименования записи справочника

Кнопка-Индикатор

SB1:TSpeedButton

Цветовой индикатор соединения с базой 1С

Кнопка Закрыть

BitBtn1: TBitBtn

Закрывает программу

Массив строк

ListBox1: TListBox

Отображает содержимое справочника

Метки

Label6,Label7: TLabel

Указывают на поля, которые  нужно обязательно заполнить

Метка

Label5: TLabel

Текстовый индикатор соединения с базой 1С


 

Теперь всё готово для  работы с объектами на форме.

Пропишем в событии  OnCreate нашей формы следующий код:

procedure TForm1.FormCreate(Sender: TObject);  //Задаём некоторые свойства объектов  при создании формы

begin

  SB1.Visible := False;

  label5.Visible := False;

  Button1.Enabled := False;

  Button2.Enabled := False;

  Button4.Enabled := False;

end;

Рис.3

В раскрывающемся списке CB1 в свойстве  Items вписываю значения, которые будут отображаться при выпадении списка:

  • V77.Application – зависимый ключ;
  • V77S.Application – зависимый ключ, SQL – версия;
  • V77L.Application – зависимый ключ, локальная версия;
  • V77M.Application – зависимый ключ, сетевая версия;
  • V1CEnterprise.Application – независимый ключ;

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

В событии кнопки Обзор… я обращаюсь к объекту на форме OpenDialog1, который открывает окно выбора папки. После выбора каталога с базой 1С,  я запоминаю путь и передаю его E2.

Рис.4

procedure TForm1.Button3Click(Sender: TObject);

begin

  if OpenDialog1.Execute then

  E2.Text:=ExtractFileDir(OpenDialog1.FileName);

  OpenDialog1.InitialDir:=E2.Text;

end;

После выбора пути к базе, активируется кнопка Соединить, которая подключается к базе 1С по пути, занесенному в Е2, инициализируя версию из CB1. Затем формируется список справочников в CB2.

Рис.5

  private

    { Private declarations }

    Ole1C: OleVariant; //Указатель на объект 1С

    OleSpr: OleVariant;  //Указатель на справочник 1С

  public

    { Public declarations }

  end;

 

var

  Form1: TForm1;

implementation

 

{$R *.dfm}

 

procedure TForm1.Button1Click(Sender: TObject);

var

ResOpen : integer;

Index : integer;

begin

if E2.Text = '' then

  begin

    ShowMessage('Укажите  путь к базе 1С');

    Exit;

  end;

Ole1C := CreateOleObject(CB1.Text);  //Запускается программа 1С как OLE Automation

ResOpen := Ole1C.Initialize(Ole1C.RMTrade, '/D' + E2.Text + ' /M' + ' /N' + E4.Text + ' /P' + E5.Text, ''); //Инициализируем программу 1С согласно информации из E2,E4,E5

CB2.Items.Clear;

CB2.Text := '';

//Индикатор соединения  с базой 1С

if ResOpen = -1 then

  begin

  SB1.Font.Color := 708928;

  label5.Caption := 'Соединено!';

  Рис.6

  SB1.Visible := True;

  label5.Visible := True;

  Button2.Enabled := True;

  Button4.Enabled := True;

  end

  else

  begin

  SB1.Font.Color := clRed;

  label5.Caption := 'Нет соединения!';

  Рис.7

  SB1.Visible := True;

  label5.Visible := True;

  Button2.Enabled := False;

  Button4.Enabled := False;

  CB2.Items.Clear;

  CB3.Items.Clear;

  end;

if label5.Caption = 'Нет соединения!' then

  Exit;   //Условие возврата

//Добавление справочников  в CB2

if not VarIsEmpty(Ole1C) then

  begin

  for Index := 1 to Ole1C.Metadata.Reference do

CB2.Items.Add(Ole1C.Metadata.Reference(Index).Identifier);

  end;

end;

После нажатия на кнопку Соединить, появляется цветовой индикатор SP1, который показывает установлено соединение с базой 1С или нет! Если индикатор зелёного цвета, тогда база успешно соединена. Если индикатор красного цвета, то соединение не установлено и при нажатии на цветовой индикатор SP1, можно увидеть возможную причину неудачного соединения!

procedure TForm1.SB1Click(Sender: TObject);

begin

if label5.Caption = 'Нет соединения!' then

  with Application do

  begin

    NormalizeTopMosts;

    MessageBox('Неверно указан путь к каталогу с рабочей ИБ 1С', 'Возможная причина');

    RestoreTopMosts;

  end

else

  with Application do

  begin

    NormalizeTopMosts;

    MessageBox('Стабильное соединение с ИБ 1С', '');

    RestoreTopMosts;

  end

end;

 

Кнопка Справочник по нажатию проверяет, выбран ли справочник в CB2. Если нет, то оповещает об этом пользователя, если да, то происходит считывание данных из выбранного справочника и отображение этих данных в ListBox1.

Рис.8

procedure TForm1.Button2Click(Sender: TObject); 

begin

if CB2.Text = '' then

  Begin

    with Application do

    begin

      NormalizeTopMosts;

      MessageBox('Выберите справочник!', 'ПРЕДУПРЕЖДЕНИЕ');

      RestoreTopMosts;

    end;

  Exit;

  end;

OleSpr := Unassigned;

Информация о работе Управление интерфейсом программы 1С