Автор: Пользователь скрыл имя, 26 Марта 2013 в 01:06, курсовая работа
Система «1С: Предприятие» дает возможность создавать конфигурации, используя встроенный язык программирования и компоненты построения пользовательского интерфейса, дорабатывать и отлаживать их, исполнять разработанную конфигурацию для эксплуатации ее конечным пользователем.
Наличие такого спектра продуктов и их массовое успешное внедрение во многом обусловлено тем, что в основе «1С:Предприятия» лежит мощная технологическая платформа, возможности которой и позволяют фирме «1С», ее партнерам, независимым разработчикам и системным интеграторам, а также самим клиентам создавать самые разнообразные бизнес-приложения.
1.Введение.
2.Актуальность выбранной темы.
3.Решение данной задачи.
4.Условие выбора среды разработки Delphi.
5.Результат работы.
6.Описание решения задачи.
7.Вывод.
8.Литература.
В состав 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
Назначение элементов управления в форме проекта. Таблица №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 вписываю значения, которые будут отображаться при выпадении списка:
Это одна из версий, установленная на вашем компьютере.
В событии кнопки Обзор… я обращаюсь к объекту на форме OpenDialog1, который открывает окно выбора папки. После выбора каталога с базой 1С, я запоминаю путь и передаю его E2.
Рис.4
procedure TForm1.Button3Click(Sender: TObject);
begin
if OpenDialog1.Execute then
E2.Text:=ExtractFileDir(
OpenDialog1.InitialDir:=E2.
end;
После выбора пути к базе, активируется кнопка Соединить, которая подключается к базе 1С по пути, занесенному в Е2, инициализируя версию из CB1. Затем формируется список справочников в CB2.
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.
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.
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;