Разработка программы складского учёта

Требования к функциональным характеристикам программы. Выбор средств проектирования. Язык SQL как стандартный язык баз данных. Локальные базы данных и архитектура "файл-сервер". Пользовательский интерфейс. Руководство программиста. Работа с программой.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 24.03.2016
Размер файла 288,4 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Тип

Описание

id

integer

Уникальный ключ записи

name

varchar 20

Название операции

SignOp

integer

Знак операции (-1 расход, +1 приход)

В таблице 6 представлено описание полей таблицы kl_uslug

Таблица 6.

Название

Тип

Описание

id

integer

Уникальный ключ записи

name

varchar 20

Название услуги

cost

float

Цена услуги

В таблице 7 представлено описание полей таблицы Orders

Таблица 7.

Название

Тип

Описание

id

integer

Уникальный ключ записи

prim

varchar 100

Примечание

dt

Date

Дата заказа

Operation

integer

Код операции

summ

float

Сумма за товары и услуги

waluta

varchar 10

Расчет в валюте

NDSProc

float

Процент НДС

SummNDS

float

Итоговая сумма

PostawId

integer

Код поставщика

ClientId

integer

Код клиента

В таблице 8 представлено описание полей таблицы SkladData

Таблица 8.

Название

Тип

Описание

id

integer

Уникальный ключ записи

TowarId

integer

Код товара

Kolwo

float

Количество на складе

В таблице 9 представлено описание полей таблицы towar

Таблица 9.

Название

Тип

Описание

id

integer

Уникальный ключ записи

name

varchar 50

Название товара

Rasmern

varchar 6

Размерность товара

kategory

integer

Код категории

cost

float

Цена

adres

varchar 50

Адрес

В таблице 10 представлено описание полей таблицы TowForOrder

Таблица 10.

Название

Тип

Описание

TowarId

integer

Код товара

OrderId

integer

Код заказа

CostPerEd

float

Цена за единицу

cnt

float

Количество

4.4 Спецификация программы

В таблице 12 находится список файлов проекта.

Таблица 12.

Имя файла

Тип файла

Описание

1.mdb

База данных Access

Тестовая БД

About.dfm

Файл формы

О программе

About.pas

Файл программного модуля

config.mdb

База данных Access

База конфигурации программы

create.sql

SQL скрипт

Скрипт создания БД

dat.dfm

Файл формы

Форма данных

dat.pas

Файл программного модуля

disc.dfm

Файл формы

Дисконтные карты

disc.pas

Файл программного модуля

empty.mdb

База данных Access

Пустая база, используется для создания нового файла БД

help

Директория

Директория с файлами помощи

kl_kat.dfm

Файл формы

Категории товоров

kl_kat.pas

Файл программного модуля

kl_usl.dfm

Файл формы

Виды услуг

kl_usl.pas

Файл программного модуля

Klients.dfm

Файл формы

Клиенты

Klients.pas

Файл программного модуля

Main.dfm

Файл формы

Главная форма

Main.pas

Файл программного модуля

MovUn.dfm

Файл формы

Форма заказов

MovUn.pas

Файл программного модуля

MSWord.pas

Файл программного модуля

Работа с WORD

naklPrep.dfm

Файл формы

Параметры накладной

naklPrep.pas

Файл программного модуля

NumToStr.pas

Файл программного модуля

Число строкой

orders.dfm

Файл формы

Заказы

orders.pas

Файл программного модуля

Ost.dfm

Файл формы

Остатки

Ost.pas

Файл программного модуля

RusDlg.pas

Файл программного модуля

Русифицированные диалоги

Sett.dfm

Файл формы

Настройки

Sett.pas

Файл программного модуля

sg2word.pas

Файл программного модуля

Вывод в Word

shet.doc

Документ Word

Шаблон счета

sklads.dfm

Файл формы

Поставщики

sklads.pas

Файл программного модуля

SQLAdoTools.pas

Файл программного модуля

Работа с SQL

storer.cfg

Файл конфигурации проекта

storer.doc

Документ Word

Этот документ

storer.dof

Файл параметров проекта

storer.dpr

Файл проекта

storer.dsk

Файл концигурации проекта

storer.exe

Исполняемый файл

storer.ini

Файл настроек

storer.res

Файл ресурсов

StrTools.pas

Файл программного модуля

Строковые утилиты

template.doc

Документ Word

Шаблон накладной

towars.dfm

Файл формы

Товары

towars.pas

Файл программного модуля

WaitUnit.dfm

Файл формы

Форма ожидания

WaitUnit.pas

Файл программного модуля

4.5 Пользовательский интерфейс

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

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

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

Даже если не брать столь ответственные области применения компьютерной техники, роль пользовательского интерфейса нельзя недооценивать. Представим себе программу, с которой ежедневно работают миллионы людей во всем мире, например текстовый редактор Word. Возьмем, к примеру, операцию поиска. Если представить, что такая операция в новой версии будет экономить при работе одну десятую секунды времени, а за час один человек будет прибегать к такой операции хотя бы один раз, то за рабочий день (8 часов) один миллион человек сэкономит 222 часа рабочего времени! А из-за чего может получиться разница в 0,1 секунду? Да практически из-за ничего - разное положение кнопок, например.

Таким образом, важность пользовательского интерфейса ни в коем случае не стоит приуменьшать.

4.6 Отчеты

Для работы с ms Word, разработан класс tMsWord, использующий технологию OLE для работы. Данный класс содержит в себе методы, реализующие интерфейс с основными функциями, предоставляемыми OLE сервером. Описание методов класса представлено в таблице 13.

Таблица 13

Название метода

Описание

Create

Конструктор класса, параметром может передаваться имя файла

Open

Функция установления связи с OLE объектом

Save

Сохраняет документ

Show

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

New

Создает новый документ

SaveAs

Сохранить документ под другим именем

Replace

Заменить одну строку в документе на другую

Find

Поиск строки.

InsertText

Вставить строку в документ

InsertCenterText

Вставить строку в документ c сортировкой по центру

InsertPicture

Вставить картинку

InsertFile

Вставить другой документ в текущий

InsertTable

Вставка таблицы

InsertTableHead

Вставка заголовка таблицы

InsertTableLine

Вставить запись в таблицу

EndOfTable

Завершить таблицу

OpenFile

Открыть файл

Ниже представлено описание класса tMsWord.

TMSWord = class(TObject)

public

Word: Variant;

DocFileName: string;

constructor Create(FileName: string='');

Function Open: boolean;

Procedure Close;

Procedure Save;

Procedure Show;

Procedure New;

Procedure SaveAs(FileName:string);

Procedure Replace(a,b:string);

Procedure Find(a:string);

Procedure InsertText(Text: string);

Procedure InsertCenterText(Text: string);

Procedure InsertPicture(FileName: string);

Procedure InsertFile(FileName: string);

Procedure InsertTable(Columns, Attributes: integer);

Procedure InsertTableHead(Width: array of integer; Names: array of string);

Procedure InsertTableLine(Names: array of string;bold:boolean=false);

Procedure EndOfTable;

procedure openfile(fn:string);

end;

Открытие связи с ms Word происходит с помощью выполнения слкдующей команды:

Word := CreateOleObject('Word.Basic');

5. Руководство программиста

5.1 Аппаратные требования

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

· Процессор не ниже Pentium III 500 Mhz;

· Память 128 Mb и выше;

· Не менее 200 Mb свободного дискового пространства;

· Видеоподсистема AGP 32 Mb.

5.2 Программные требования

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

· ОС Windows 9x, NT, 2000, XP;

· Память 128 Mb и выше;

· Не менее 200 Mb свободного дискового пространства;

· Видеоподсистема AGP 32 Mb.

5.3 Комплект поставки

В комплект поставки входят следующие файлы:

- storer.exe - исполняемый файл системы;

- empty.mdb - пустая БД Access, используемая программой при создании новой базы данных путем копирования;

- create.sql - скрипт создания БД, сохраненный в этом файле набор SQL команд выполняется при создании новой БД.

- template.doc - шаблон накладной;

- shet.doc - шаблон счета;

- [help] - папка содержит набор гипертекстовых файлов, представляющих собой справку по программе и открывающихся из программы.

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

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

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

5.4 Шаблоны документов

Для формирования накладной и счета используется разработанная технология составления отчетов с помощью шаблонов документов. Шаблоном документа будем называть сохраненный ранее документ Word, организованный произвольно, но с учетом специфики. В тексте документа могут встречаться имена переменных, чьи значения будут подставлены позже. Список переменных для накладной представлен в таблице 14.

Таблица 14.

Имя переменной

Описание

_INN_

ИНН клиента

_clientname_

Название клиента

_NDOC_

Номер накладной

_DateDOC_

Дата накладной

_start_

Начало таблицы данных

_summass_

Всего вес

_allmass_

Всего вес по накладной

_sbez_

Сумма без НДС

_allbez_

Всего без НДС

_snds_

Сумма НДС

_allnds_

Всего НДС

_ssnds_

Сумма с НДС

_allsnds_

Всего с НДС

_punkts_

Количество пунктов

_mest_

Количество мест

_summprop_

Сумма прописью

В таблице 15 находится список констант для счета.

Таблица 15.

Имя переменной

Описание

_INN_

ИНН клиента

_clientname_

Название клиента

_ndisc_

Номер дисконтной карты

_start_

Начало таблицы данных

_summ1_

Сумма без НДС

_nds_

Процент НДС

_skidka_

Процент скидки

_itog_

Итоговая сумма

6. Руководство оператора

6.1 Введение

Данное руководство содержит описание применения программы АСУ СКЛАД.

6.2 Назначение и условия применения

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

В отличие от дорогих и сложных программ складского учета типа "1С-Склад" и ей подобных, программа " АСУ СКЛАД" хорошо подходит для представителей малого и среднего бизнеса, так как будет включать все, что им необходимо, но не перегружена избыточными возможностями. Использование технологии создания программы в визуальных средах программирования сделает ее интерфейс универсальным и совместимым с операционными системами Windows 95/98/2000/XP.

6.3 Вызов и загрузка

Для запуска программы необходимо активизировать средствами ОС исполняемый файл “Storer.exe”

6.4 Работа с программой

После запуска программы открывается главное окно, представленное на рисунке 3.

Рисунок 3 - главное окно программы

Главное окно состоит из следующих составных частей:

- главное меню программы содержит пункты, выполняющие все функции системы;

- панель инструментов содержит кнопки, дублирующие основные пункты главного меню;

- таблица продаж - содержит список операций по продажам;

- поле дополнительной информации содержит текстовую дополнительную информацию по выбранной в таблице записи;

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

В таблице 13 находится описание пунктов главного меню.

Таблица 13

Пункт меню

Описание

Файл / Создать пустую базу

Создает новую БД и сохраняет ее под выбранным пользователем именем.

Файл / Открыть базу данных

Позволяет выбрать существующую БД и открыть ее

Файл / Создать резервную копию

Копирует текущую БД под новым именем

Файл / Выход

Выход из программы

Справочники / Дисконтные карты

Просмотр зарегистрированных дисконтных карт и накопившихся на них сумм.

Справочники / Категории товаров

Открывает список категорий товаров

Справочники / Поставщики

Список зарегистрированных поставщиков

Справочники / Клиенты

Список зарегистрированных клиентов

Движение / Прием на склад

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

Движение / Отгрузка товара

Открывает окно отгрузки(продажи) товара

Данные / Редактировать

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

Данные / Товары

Список зарегистрированных в системе товаров

Данные / Остатки

Просмотр остатков на складе

Данные / Статистика

Просмотр статистики БД

Данные / Движение

Просмотр архива операций

Отчеты / Отчет по продажам за месяц

Открывает диалог выбора отчетного месяца, а затем окно, содержащее данный отчет

Отчеты / Продажи по клиентам

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

Настройки / Настройки

Открывает окно настроек программы

Помощь / О программе

Открывает окно с информацией о программе

Помощь / Помощь

Открывает главный html файл помощи.

На рисунке 4 представлено окно отгрузки товаров.

Рисунок 4 - отгрузка товаров

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

Группа "Список товаров" содержит таблицу, в которой указываются продаваемый товар и его количество. Здесь цветом помечены недоступные для редактирования поля. Поле "Количество" не может содержать значение больше, чем остаток данного товара на складе. Если пользователь вводит значение больше этого значения, то введенное значение автоматически корректируется и становится равным максимально допустимому значению.

Группа полей "Цены" содержит информацию о ценах. Здесь показаны:

- всего пунктов - содержит количество позиций в списке товаров;

- товар на сумму - содержит сумму, на которую введено товаров;

- скидка - содержит процент скидки. Поле заполняется на основе количества денег на дисконтной карте покупателя и настроек программы;

- расчет в валюте - здесь указывается валюта, которой расплачивается клиент;

- процент НДС - содержит процент НДС, взятый из настроек программы;

- Сумма с НДС - итоговая сумма, значение которой рассчитывается с учетом скидки и НДС.

Внизу формы содержится следующий набор кнопок:

- "Накладная" - печатает накладную по данным с использованием шаблона "template.doc";

- "Печать" - произвольная форма отчета;

- "Счет" - печать счета с использованием шаблона "shet.doc"

- "Принять" - записывает введенные данные в БД и создает новую запись для дальнейшего ввода;

- "Отмена" - отменяет текущую операцию, закрывает окно без сохранения данных.

На рисунке 5 представлено окно "Клиенты"

Рисунок 5 - Клиенты системы.

На рисунке 6 представлено окно со списком товаров. Здесь находятся все зарегистрированные в системе товары. В поле "Фильтр" содержится список всех зарегистрированных категорий товаров. При выборе любого пункта выпадающего меню кроме "Без фильтра" в таблице данных останутся только товары выбранной категории.

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

Нажатие кнопки "В Word" выведет содержание таблицы в Word с учетом фильтра и поля сортировки.

Рисунок 5 - Список товаров.

На рисунке 6 показан вид окна "Остатки на складе". В поле "Фильтр" содержится список всех зарегистрированных категорий товаров. При выборе любого пункта выпадающего меню кроме "Без фильтра" в таблице данных останутся только товары выбранной категории.

Рисунок 6 - Остатки на складе.

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

Рисунок 7 - Продажи по клиенту.

7. Тестирование

Тестирование программы производилось методом покрытия переходов.

В процессе тестирования не выявлено ошибок. Программа выполняет все требуемые функции.

Заключение

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

Литература

1. Лэнгсам Й., Огенстайн М., Тененбаум А. Структуры данных для персональных ЭВМ. - М.: Мир, 1989

2. Дайитбегов Д.М., Черноусов Е.А. Основы алгоритмизации и алгоритмические языки (второе издание). - М.: Финансы и статистика, 2012

3. В.Гофман, А.Хомоненко Delphi 5. Наиболее полное руководство. СПб, БХВ, 2010

4. В.В.Фаронов Delphi 5. Руководство программиста. - М., «Нолидж», 2011

5. Йодан Э. Структурное проектирование и конструирование программ. -, Мир, 2009

6. А.Я.Архангельский Delphi 5. - М., ЗАО «Издательство «Бином», 2001

7. А.Я.Архангельский Delphi 5. Справочное пособие. - М., ЗАО «Издательство «Бином», 2001

8. С.Бобровский Delphi 5. Учебный курс. - СПб, Изд. «Питер», 2000.

9. Роб Баас, Марк Фервай, Хайдемария Гюнтер Delphi 5. Киев, БХВ-«Ирина» 2010.

10. Фаронов В.В. Turbo Pascal 7.0. Учебное пособие. М.,Нолидж,1998

11. Фаронов В.В.Delphi 5. Учебный курс. М.,Нолидж,2010

12. WWW.READUS.RU

13. WWW.Delphikingdom.ru

Приложение А - Листинг программы

Параметр

Значение

Имя файла

BayBase.pas

Имя модуля

BayBase

Количество строк

70

Количество символов

1593

Размер файла

1,69 Кб

Количество комментариев

0

Процент закоментированности

0,00 %

Модуль : BayBase.pas

Всего строк : 70

unit BayBase;

interface

uses CSVObj,windows,SysUtils,SqlAdoTools,StrTools;

type

tBayBase=class(tCSV)

public

constructor Create(dt:tDateTime);

procedure SaveSQL(selectSQL: string;sumFieldInd:integer=-1);

procedure SaveLine(id:string;others:array of string;sumFieldInd:integer=-1);

end;

implementation

uses DB, Classes;

constructor tBayBase.Create(dt:tDateTime);

var s:string;

begin

s:=ExtractFilePath(paramstr(0))+'BayBase';

ForceDirectories(s);

s:=s+'\'+FormatDateTime('yyyy_mm_dd',now)+'.csv';

inherited Create(s);

setKeyInd(0);

SortBy(1,0);

end;

procedure tBayBase.SaveSQL(selectSQL: string;sumFieldInd:integer=-1);

var s,s2:string;

i,j:integer;

toadd:boolean;

begin

toadd:=false;

with MakeCursor(SelectSQL) do

begin

while not eof do

begin

s:='';

s2:=Fields[0].AsString;

j:=self.Locate(s2);

if j=-1 then j:=Add(s2)

else toadd:=true;

for i:=1 to FieldDefs.Count-1 do

begin

if (not toadd)or(sumFieldInd<>i) then

self.fields[j,i]:=fields[i].AsString

else

self.fields[j,i] :=FloatToStr(StrToFloat(self.fields[j,i])+fields[i].AsFloat);

end;

next;

end;

free;

end;

end;

procedure tBayBase.SaveLine(id:string;others:array of string;sumFieldInd:integer=-1);

var s,s2:string;

i,j:integer;

toadd:boolean;

begin

toadd:=false;

j:=self.Locate(id);

if j=-1 then j:=add(s2) else toadd:=true;

for i:=0 to high(others) do

if (not toadd)or(sumFieldInd<>i) then

fields[j,i+1]:=others[i]

else fields[j,i+1]:=FloatToStr(StrToFloat(fields[j,i+1])+StrToFloat(others[i]));

end;

end.

Параметр

Значение

Имя файла

disc.pas

Имя модуля

disc

Количество строк

66

Количество символов

1542

Размер файла

1,63 Кб

Количество комментариев

10

Процент закоментированности

13,36 %

Модуль : disc.pas

Всего строк : 66

unit disc;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, DB, DBCtrls, Grids, DBGrids, ExtCtrls, Buttons, StdCtrls,

ComCtrls, ADODB;

type

TFrmDisc = class(TForm)

Panel1: TPanel;

DBGrid1: TDBGrid;

DBNavigator1: TDBNavigator;

ds: TDataSource;

BtnRep: TSpeedButton;

StatusBar: TStatusBar;

ADOTable1: TADOTable;

ADOTable1numcard: TIntegerField;

ADOTable1summmany: TFloatField;

procedure BtnRepClick(Sender: TObject);

procedure FormCreate(Sender: TObject);

procedure dsDataChange(Sender: TObject; Field: TField);

private

{ Private declarations }

public

{ Public declarations }

end;

var

FrmDisc: TFrmDisc;

implementation

uses dat,sg2word,msword,rusdlg;

{$R *.dfm}

procedure TFrmDisc.BtnRepClick(Sender: TObject);

var word:TMSWord;

i:integer;

begin

i:=0;

word:=TMSWord.Create; //создать класс TMSWord

if not word.Open then //открыть связь с Ole объектом

begin

Error('Не могу открыть msWord');

exit;

end;

word.New; //новый документ

word.InsertCenterText(caption+#13); //вставить заголовок документа

DataSetToWordTable(DBGrid1,ds.DataSet,word); //вставить таблицу

word.Show; //показать Word

word.Free; //Освободить память

end;

procedure TFrmDisc.FormCreate(Sender: TObject);

begin

ds.DataSet.Close;

ds.DataSet.Open;

end;

procedure TFrmDisc.dsDataChange(Sender: TObject; Field: TField);

begin

StatusBar.SimpleText :='Всего записей '+IntToStr(ds.DataSet.RecordCount);

end;

end.

Параметр

Значение

Имя файла

kl_kat.pas

Имя модуля

kl_kat

Количество строк

91

Количество символов

1990

Размер файла

2,12 Кб

Количество комментариев

18

Процент закоментированности

15,48 %

Модуль : kl_kat.pas

Всего строк : 91

unit kl_kat;

//категории товаров

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, ExtCtrls, DBCtrls, Grids, DBGrids, DB, Buttons;

type

TFrmKlKat = class(TForm)

Panel1: TPanel;

DataSource1: TDataSource;

DBGrid1: TDBGrid;

DBNavigator1: TDBNavigator;

BtnRep: TSpeedButton;

SpeedButton1: TSpeedButton;

procedure FormClose(Sender: TObject; var Action: TCloseAction);

procedure BtnRepClick(Sender: TObject);

procedure SpeedButton1Click(Sender: TObject);

procedure FormCreate(Sender: TObject);

private

{ Private declarations }

public

procedure prepare;

{ Public declarations }

end;

var

FrmKlKat: TFrmKlKat;

implementation

uses dat,msWord,rusdlg;

{$R *.dfm}

//подготовка - открыть запрос

procedure TFrmKlKat.prepare;

begin

DataSource1.DataSet.Open;

end;

//закрытие формы

procedure TFrmKlKat.FormClose(Sender: TObject; var Action: TCloseAction);

begin

DataSource1.DataSet.close; //закрыть запрос

end;

//отчет

procedure TFrmKlKat.BtnRepClick(Sender: TObject);

var word:TMSWord;

i:integer;

begin

i:=0;

word:=TMSWord.Create(''); //создать объект word

if not word.Open then

begin

Error('Не могу открыть msWord');

exit;

end;

word.New; //новый документ

word.InsertCenterText(caption+#13); //вставить текст

word.InsertTable(2,0); //таблицу

word.InsertTableHead([50,300], ['№ п.п.','Название']);

with DataSource1.DataSet do

begin

First;

while not eof do

begin

inc(i);

word.InsertTableLine([IntToStr(i), //запись в таблицу

FieldByName('name').AsString]);

next;

end;

word.EndOfTable;

end;

word.Show; //показать word

word.Free; //освободить память

end;

procedure TFrmKlKat.SpeedButton1Click(Sender: TObject);

begin

ShowHelp(name); //показать хелп

end;

//создание формы

procedure TFrmKlKat.FormCreate(Sender: TObject);

begin

dm.UpdateSettings(self); //визуальные настройки

dm.TblKlKat.Open;

end;

end.

Параметр

Значение

Имя файла

Klients.pas

Имя модуля

Klients

Количество строк

65

Количество символов

1512

Размер файла

1,6 Кб

Количество комментариев

11

Процент закоментированности

15,15 %

Модуль : Klients.pas

Всего строк : 65

unit Klients;

//классификатор моделей

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, DB, DBCtrls, Grids, DBGrids, ExtCtrls, Buttons, StdCtrls,

ComCtrls;

type

TFrmClients = class(TForm)

Panel1: TPanel;

DBGrid1: TDBGrid;

DBNavigator1: TDBNavigator;

ds: TDataSource;

BtnRep: TSpeedButton;

StatusBar: TStatusBar;

procedure BtnRepClick(Sender: TObject);

procedure FormCreate(Sender: TObject);

procedure dsDataChange(Sender: TObject; Field: TField);

private

{ Private declarations }

public

{ Public declarations }

end;

var

FrmClients: TFrmClients;

implementation

uses dat,sg2word,msword,rusdlg;

{$R *.dfm}

procedure TFrmClients.BtnRepClick(Sender: TObject);

var word:TMSWord;

i:integer;

begin

i:=0;

word:=TMSWord.Create(''); //создать класс TMSWord

if not word.Open then //открыть связь с Ole объектом

begin

Error('Не могу открыть msWord');

exit;

end;

word.New; //новый документ

word.InsertCenterText(caption+#13); //вставить заголовок документа

DataSetToWordTable(DBGrid1,ds.DataSet,word); //вставить таблицу

word.Show; //показать Word

word.Free; //Освободить память

end;

procedure TFrmClients.FormCreate(Sender: TObject);

begin

ds.DataSet.Close;

ds.DataSet.Open;

dm.UpdateSettings(self);

end;

procedure TFrmClients.dsDataChange(Sender: TObject; Field: TField);

begin

StatusBar.SimpleText :='Всего записей '+IntToStr(ds.DataSet.RecordCount);

end;

end.

Параметр

Значение

Имя файла

MSWord.pas

Имя модуля

MSWord

Количество строк

191

Количество символов

3973

Размер файла

4,25 Кб

Количество комментариев

35

Процент закоментированности

26,25 %

Модуль : MSWord.pas

Всего строк : 191

unit MSWord;

//модуль работы с ВОрдом

interface

type

TMSWord = class(TObject)

public

Word: Variant;

DocFileName: string;

constructor Create(FileName: string='');

Function Open: boolean;

Procedure Close;

Procedure Save;

Procedure Show;

Procedure New;

Procedure SaveAs(FileName:string);

Procedure Replace(a,b:string);

Procedure Find(a:string);

Procedure InsertText(Text: string);

Procedure InsertCenterText(Text: string);

Procedure InsertPicture(FileName: string);

Procedure InsertFile(FileName: string);

Procedure InsertTable(Columns, Attributes: integer);

Procedure InsertTableHead(Width: array of integer; Names: array of string);

Procedure InsertTableLine(Names: array of string;bold:boolean=false);

Procedure EndOfTable;

procedure openfile(fn:string);

end;

implementation

uses ComObj, OleCtnrs, sysutils, Dialogs;

////////////////////////////////////////////////////////

//

constructor TMSWord.Create(FileName: string='');

begin

DocFileName := FileName;

end;

procedure TMSWord.openfile(fn:string);

begin

word.fileopen(fn);

end;

Procedure TMSWord.InsertFile(FileName: string);

begin

word.InsertFile(FileName);

end;

////////////////////////////////////////////////////////

//

Function TMSWord.Open: boolean;

begin

Result := True;

try

Word := CreateOleObject('Word.Basic');

{ Word.FileNew;

Word.FileSaveAs(DocFileName);}

except

Word.AppClose;

Result := False;

end;

end;

////////////////////////////////////////////////////////

//

Procedure TMSWord.SaveAs(FileName:string);

begin

DocFileName:=FileName;

Word.FileSaveAs(FileName);

end;

////////////////////////////////////////////////////////

//

Procedure TMSWord.Show;

begin

Word.AppShow;

end;

////////////////////////////////////////////////////////

//

Procedure TMSWord.InsertText(Text: string);

begin

Word.Insert(Text);

end;

////////////////////////////////////////////////////////

//

Procedure TMSWord.New;

begin

Word.FileNew;

Word.Filepagesetup(2,1,60,60,60,60);

end;

////////////////////////////////////////////////////////

//

Procedure TMSWord.Find(a:string);

begin

word.paraup(500,0);

Word.EditFind(a);

end;

Procedure TMSWord.Replace(a,b:string);

begin

word.paraup(500,0);

Word.EditReplace(a,b,0,0,0,0,0,1,0,1,0);

end;

////////////////////////////////////////////////////////

//

Procedure TMSWord.InsertCenterText(Text: string);

begin

Word.CenterPara;

Word.Insert(Text);

Word.LeftPara;

end;

////////////////////////////////////////////////////////

//

Procedure TMSWord.InsertPicture(FileName: string);

begin

Word.InsertPicture(FileName);

end;

////////////////////////////////////////////////////////

//

Procedure TMSWord.InsertTable(Columns, Attributes: integer);

begin

Word.TableInsertTable(0,Columns,2,50,0,Attributes);

end;

////////////////////////////////////////////////////////

//

Procedure TMSWord.InsertTableHead(

Width: array of integer; Names: array of string);

var

i: integer;

begin

Word.TableColumnWidth(Width[0]);

Word.Insert(Names[0]);

for I := 1 to High(Names) do

begin

Word.CharRight;

Word.TableColumnWidth(Width[i]);

Word.Insert(Names[i]);

end;

Word.EndOfColumn;

end;

////////////////////////////////////////////////////////

//

procedure TMSWord.InsertTableLine(Names: array of string;bold:boolean=false);

var

i: integer;

begin

Word.TableInsertRow;

for I := 0 to High(Names) do

begin

if i>0 then Word.CharRight;

word.bold(bold);

Word.Insert(Names[i]);

end;

Word.CharRight;

word.Insert(#13);

// Word.EndOfColumn;

end;

////////////////////////////////////////////////////////

//

procedure TMSWord.EndOfTable;

begin

Word.TableDeleteRow;

Word.Insert(chr(13));

end;

////////////////////////////////////////////////////////

//

Procedure TMSWord.Close;

begin

// Word.FileSave;

Word.AppClose;

end;

////////////////////////////////////////////////////////

//

Procedure TMSWord.Save;

begin

Word.FileSave;

end;

////////////////////////////////////////////////////////

end.

Параметр

Значение

Имя файла

naklPrep.pas

Имя модуля

naklPrep

Количество строк

36

Количество символов

646

Размер файла

718 б

Количество комментариев

4

Процент закоментированности

13,62 %

Модуль : naklPrep.pas

Всего строк : 36

unit naklPrep;

//форма ввода параметров накладной

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls, Buttons, ExtCtrls, AxCtrls, OleCtrls, VCF1, ComCtrls;

файл сервер программист

type

TFrmprepareNakl = class(TForm)

LabeledEdit1: TLabeledEdit;

BitBtn1: TBitBtn;

BitBtn2: TBitBtn;

Label1: TLabel;

dt: TDateTimePicker;

Bevel1: TBevel;

procedure FormCreate(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

FrmprepareNakl: TFrmprepareNakl;

implementation

{$R *.dfm}

procedure TFrmprepareNakl.FormCreate(Sender: TObject);

begin

dt.Date:=date;

end;

end.

Параметр

Значение

Имя файла

NumToStr.pas

Имя модуля

NumToStr

Количество строк

139

Количество символов

2408

Размер файла

2,62 Кб

Количество комментариев

4

Процент закоментированности

7,48 %

Модуль : NumToStr.pas

Всего строк : 139

unit NumToStr;

//Преобразование из числа в строку

//код взят из Кулибы

interface

function TextDbl2(S: double): string;

function TextCurr(S: double): string;

implementation

uses sysutils;

{------------------------ Деньги прописью ---------------------}

function TextSum(S: double;rub,kop:string): string;

function Conv999(M: longint; fm: integer): string;

const

c1to9m: array [1..9] of string [6] =

('один','два','три','четыре','пять','шесть','семь','восемь','девять');

c1to9f: array [1..9] of string [6] =

('одна','две','три','четыре','пять','шесть','семь','восемь','девять');

c11to19: array [1..9] of string [12] =

('одиннадцать','двенадцать','тринадцать','четырнадцать','пятнадцать',

'шестнадцать','семнадцать','восемнадцать','девятнадцать');

c10to90: array [1..9] of string [11] =

('десять','двадцать','тридцать','сорок','пятьдесят','шестьдесят',

'семьдесят','восемьдесят','девяносто');

c100to900: array [1..9] of string [9] =

('сто','двести','триста','четыреста','пятьсот','шестьсот','семьсот',

'восемьсот','девятьсот');

var

s: string;

i: longint;

begin

s := '';

i := M div 100;

if i<>0 then s:=c100to900[i]+' ';

M := M mod 100;

i := M div 10;

if (M>10) and (M<20) then s:=s+c11to19[M-10]+' '

else

begin

if i<>0 then s:=s+c10to90[i]+' ';

M := M mod 10;

if M<>0 then

...


Подобные документы

  • Разработка системы "РЭО-ГАИ" и соответствующей ей базы данных, позволяющей документировать в электронном виде автоматизацию учета движений автомобилей. Язык SQL - стандартный язык доступа к реляционным базам данных. Структура программы и описание модулей.

    курсовая работа [83,1 K], добавлен 18.08.2009

  • Техническое задание на разработку программного продукта и требования к программе. Написание алгоритма работы и разработка интерфейса программы. Руководство системного программиста и оператора. Основные методы и принципы тестирования базы данных.

    дипломная работа [2,7 M], добавлен 27.01.2013

  • Характеристика системы программирования. Главные составные части Delphi. Интерфейс программного приложения. Результаты работы программы. Руководство системного программиста и оператора. Язык программирования Delphi, среда компилятора Borland 7.0.

    курсовая работа [1,6 M], добавлен 29.05.2013

  • Понятие банка и базы данных, их назначение. Создание базы данных "Учет нарушений ПДД" с удобным пользовательским интерфейсом. Требования к функциональным характеристикам. Условия эксплуатации и программные требования. Описание входных и выходных данных.

    курсовая работа [2,9 M], добавлен 22.09.2012

  • Обоснование выбора языков разметки гипертекста HTML и стилей CSS. Описание архитектуры клиент-сервер. Разработка базы данных средствами структурированного языка запросов SQL. Пользовательский интерфейс и руководство пользователя для работы с программой.

    курсовая работа [2,1 M], добавлен 16.04.2017

  • Эволюция концепций баз данных. Требования, которым должна удовлетворять организация базы данных. Модели представления данных. Язык SQL как стандартный язык баз данных. Архитектуры баз данных. Среда Delphi как средство для разработки СУБД.

    дипломная работа [278,9 K], добавлен 26.11.2004

  • Анализ аналогов и выбор прототипа, разработка алгоритма и графического интерфейса, кодирование и тестирование. Логическая модель данных "Нотариальная контора". Особенности реализации в MS SQL. Требования к функциональным характеристикам базы данных.

    курсовая работа [1,3 M], добавлен 12.01.2013

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

    курсовая работа [897,0 K], добавлен 13.11.2016

  • Разработка инфологической модели базы данных "Рабочее место кассира", требования к ее функциональным характеристикам. Создание программы в Delphi. Описание компонентов для реализации графического интерфейса и интерфейса ввода справочника кассиров.

    курсовая работа [2,2 M], добавлен 17.04.2014

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

    курсовая работа [2,1 M], добавлен 08.06.2012

  • Реализация прямого проектирования в архитектуре "файл-сервер". Процесс изменения структуры базы данных, реализация прямого проектирования в архитектуре "клиент-сервер", генерирование SQL-кода создания базы данных на основе физической модели данных.

    контрольная работа [697,8 K], добавлен 16.02.2015

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

    курсовая работа [1,5 M], добавлен 17.11.2010

  • Информационная поддержка деятельности магазина по продаже компьютеров. Работа с программой. Этапы проектирования базы данных. Анализ информационных задач. Выбор программных средств. Особенности проектирования программного комплекса информационной системы.

    курсовая работа [1,8 M], добавлен 09.06.2016

  • Использование основных свойств объектно-ориентированного языка программирования C ++ при написании программы по реализации списка футболистов разных амплуа. Руководство пользователя и руководство программиста. Работа со списком, программный интерфейс.

    курсовая работа [516,5 K], добавлен 20.07.2014

  • Разработка программы на языке Visual Basic. Спецификация на программный модуль. Ввод, изменение и удаление данных по определенным требованиям. Руководство системного программиста, программиста и оператора. Ведение базы данных в виде таблицы Excel.

    курсовая работа [272,5 K], добавлен 21.04.2014

  • Исследование технологии проектирования базы данных. Локальные и удаленные базы данных. Архитектуры и типы сетей. Программная разработка информационной структуры предметной области. Обоснование выбора архитектуры "клиент-сервер" и операционной системы.

    дипломная работа [1,1 M], добавлен 15.02.2017

  • Разработка программы, позволяющей реализовать шифрование и дешифрование текстового файла методом замены и методом перестановки. Требования к функциональным характеристикам, надежности, составу и параметрам технических средств ПО. Интерфейс пользователя.

    курсовая работа [19,0 K], добавлен 30.04.2011

  • Виды связей между объектами в системе управления базами данных MS Access. Ввод и редактирование данных в таблицах, обработка информации базы данных. Архитектура БД по принципу файл-сервер. Создания формы в окне базы данных, использование отчетов.

    презентация [511,9 K], добавлен 20.01.2014

  • Функциональная модель системы. Проектирование схемы базы данных. Проектирование архитектуры системы. Принцип технологии клиент-сервер. Построение схемы ресурсов. Выбор программных средств. Разработка базы данных с использованием Microsoft SQL Server.

    дипломная работа [1,1 M], добавлен 30.03.2015

  • Модели информационного процесса обработки данных. Классификация баз данных. Сеть архитектуры и технология клиент-сервер. Создание запросов к реляционным базам данных на SQL. Работа с электронными таблицами MS Excel: форматирование данных, вычисления.

    контрольная работа [17,8 K], добавлен 17.01.2010

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.