АИС "Работа с покупателями"

ФункцияглВернутьЦену(Номенклатура,ТипЦены,ДатаЦены=0,ЦенаЦены=0,ЕдЦены=0,ВалЦены=0,НаценкаЦены=0,НайденнаяЦена=0,НеДобавИздержки=0)ЭкспортДалее ФункцияGlVozrOst(кд_ном)ЭкспортДалее ФункцияGlVozrCeni()ЭкспортДалее ФункцияGlVozrNom()ЭкспортДалее //############################################################################### //БлокдляработысинтернетмагазиномчерезWebслужбу //******************************************************************* //Функциявозвращаетпараметрпоимениизфайлаnastr.txtрабочегокаталога //Форматфайла: //строкиначинающиесяс#-коментарии //имяпараметразадаётсякак[имя],азначениележитнастрочкувнизу ФункцияПарамПоИмени(пар) ПеремномСтрок; Перемстр; Ткст=СоздатьОбъект("Текст"); Ткст.КодоваяСтраница(0); Ткст.Открыть(КаталогИБ()+"nastr.txt"); номСтрок=1; ПоканомСтрок<=Ткст.КоличествоСтрок()Цикл стр=Ткст.ПолучитьСтроку(номСтрок); //удаляемпробелывначалеиконцестроки СокрЛП(стр); ЕслистрДлина(стр)>0Тогда //Есликоментарий,топропускаем ЕслиЛев(стр,1)="#"Тогда номСтрок=номСтрок+1; Продолжить; КонецЕсли; //Есликакойтопараметр,тогда ЕслиЛев(стр,1)="["Тогда стр=лев(стр,стрДлина(стр)-1); стр=прав(стр,стрДлина(стр)-1); //Еслиэтотпараметр-искомый Еслистр=парТогда ВозвратСокрЛП(Ткст.ПолучитьСтроку(номСтрок+1)); КонецЕсли; КонецЕсли; КонецЕсли; номСтрок=номСтрок+1; КонецЦикла; Возврат"0";//Еслиничегоненашли-возвращаетноль КонецФункции //****************************************************************** //Функциявозвращаетколичествотоварапоегокоду,преднозначенадлявыводачерезWebслужбу ФункцияGlVozrOst(кд_ном)Экспорт ПеремОст; Ном=создатьОбъект("Справочник.Номенклатура"); Склд=СоздатьОбъект("Справочник.Склады"); Регр=СоздатьОбъект("Регистр.ОстаткиТМЦ"); Склд.НайтиПоКоду("00001"); Ном.НайтиПоКоду(кд_ном); Ост=0; Ост=Регр.СводныйОстаток(,ном.ТекущийЭлемент(),Склд.ТекущийЭлемент(),,"Количество"); ВозвратОст; КонецФункции //******************************************************************* //Функциявозвращаеттаблицузначений-номенклатурускодомиеёпараметры ФункцияGlVozrNom()Экспорт ПеремОст,ТабЗн; ПеремКатВыгр; Запрос=СоздатьОбъект("Запрос"); ТекстЗапроса= "//{{ЗАПРОС(Номенклатура) |Ном=Справочник.Номенклатура.ТекущийЭлемент; |ГруппировкаНом;"//}}ЗАПРОС ; ЕслиЗапрос.Выполнить(ТекстЗапроса)=0Тогда Предупреждение("Ошибкавзапросе"); КонецЕсли; КатВыгр=ПарамПоИмени("КаталогВыгр")+ПарамПоИмени("Ном"); ДБФ=СоздатьОбъект("XBase"); ДБФ.ДобавитьПоле("EtoGruppa",1,1,0); ДБФ.ДобавитьПоле("KodNom",2,9,0); ДБФ.ДобавитьПоле("Otec",2,9,0); ДБФ.ДобавитьПоле("Strana",2,20,0); ДБФ.ДобавитьПоле("Naimenov",2,250,0); ДБФ.СоздатьФайл(КатВыгр+"nomen.dbf"); ДБФ.КодоваяСтраница(1); Запрос.ВНачалоВыборки(); ПокаЗапрос.Группировка(1)=1Цикл ДБФ.Добавить(); ДБФ.KodNom=Запрос.Ном.Код; ДБФ.Otec=Запрос.Ном.Родитель.Код; ДБФ.Strana=Запрос.Ном.СтранаПроисхождения.Наименование;; ДБФ.Naimenov=Запрос.Ном.Наименование; ДБФ.EtoGruppa=Запрос.ЭтоГруппа(1); ДБФ.Записать(); КонецЦикла; Возврат1; КонецФункции //******************************************************************* //Возвращаетценупоуказаннымпарметрам-используетсявзапросевнизу ФункцияВозрНомерПрайса(Кд)Экспорт ЕслиКд="00002"Тогда Возврат1; ИначеЕслиКд="00003"Тогда Возврат2; ИначеЕслиКд="00004"Тогда Возврат3; ИначеЕслиКд="00005"Тогда Возврат4; ИначеЕслиКд="00006"Тогда Возврат5; ИначеЕслиКд="00007"Тогда Возврат6; ИначеЕслиКд="00001"Тогда Возврат0; Иначе Возврат33;//Еслиошибка.0нельзя,т.к.вдругэтоунасболеенизкие КонецЕсли; КонецФункции //******************************************************************* //Функциявозвращаетценынаноменклатуруиномерпрайса ФункцияGlVozrCeni()Экспорт ПеремОст,ТабЗн; ПеремКатВыгр; ПеремизПроц; Запрос=СоздатьОбъект("Запрос"); ТекстЗапроса= "//{{ЗАПРОС(Цены) |Номенклатура=Справочник.Цены.Владелец; |ТипКод=Справочник.Цены.ТипЦен.Код; |Тип=Справочник.Цены.ТипЦен; |Цен=Справочник.Цены.ТекущийЭлемент; |ГруппировкаЦен; |"//}}ЗАПРОС ; ЕслиЗапрос.Выполнить(ТекстЗапроса)=0Тогда Предупреждение("Ошибкавзапросе"); КонецЕсли; КатВыгр=ПарамПоИмени("КаталогВыгр")+ПарамПоИмени("Цен"); ДБФ=СоздатьОбъект("XBase"); ДБФ.ДобавитьПоле("Cena",1,8,2); ДБФ.ДобавитьПоле("Nomen",2,9,0); ДБФ.ДобавитьПоле("Prajs",1,2,0); ДБФ.СоздатьФайл(КатВыгр+"Ceni.dbf"); ДБФ.КодоваяСтраница(1); Запрос.ВНачалоВыборки(); ПокаЗапрос.Группировка(1)=1Цикл Если(Запрос.ТипКод<>"00010")Тогда ДБФ.Добавить(); глВернутьЦену(Запрос.Номенклатура,Запрос.Тип,,изПроц,,,,0); ДБФ.Cena=изПроц; ДБФ.Nomen=Запрос.Номенклатура.Код; ДБФ.Prajs=ВозрНомерПрайса(Запрос.ТипКод); ДБФ.Записать(); КонецЕсли; КонецЦикла; Возврат1; КонецФункции //******************************************************************* //Функциявозвращаетостаткиноменклатуры ФункцияGlVozrOstatki()Экспорт ПеремкатВыгр,дат; Перемск; ОСТ=СоздатьОбъект("XBase"); ОСТ.ДобавитьПоле("Kod",2,9,0); ОСТ.ДобавитьПоле("Ostatok",1,5,0); катВыгр=ПарамПоИмени("КаталогВыгр")+ПарамПоИмени("Ост"); ОСТ.СоздатьФайл(катВыгр+"ost.dbf");

АИС Работа с покупателями

Реферат

Компьютеры, программирование

Другие рефераты по предмету

Компьютеры, программирование

Сдать работу со 100% гаранией
>описывать поведение элементов системы на встроенном языке.

 

Такое большое количество возможностей увеличивает и сложность работы системы в целом. Объектная модель в 1С построена слабо, что даёт такие негативные последствия как:

  1. сложность изменения объектов системы в связи с их не ясными связями с другими объектами системы,
  2. сложно ясно и всеобъемлюще представить работу приложения в целом (особенно при вмешательстве сторонних разработчиков - доработчиков).

"1С: Торговля и склад" поддерживается производителями торгового оборудования. Вместе с оборудованием идут драйвера и описание способов управлением оборудованием из системы 1С.

Внутреннее устройство 1С. Все вводимые данные хранятся в файлах *.DBF в указанном каталоге. Названия файлов не несут никакой смысловой нагрузки. Проследить связь между файлами данных не представляется возможным. Все аспекты работы системы с данными скрываются за объектной моделью. Работая с одним справочником, пользователь (разработчик) может и не догадываться, что изменяется более 3 файлов dbf. Данные файлы имеют формат «DBASE IV», что позволяет открывать их посредством технологии «ADO.NET», задавая соответствующим образом строку подключения.

В 1С имеется встроенный язык программирования. Синтаксис схож с языком программирования «Basic». Само программирование в 1С имеет много общего с программированием макросов для Microsoft Office. Все операторы на русском языке (хотя имеются и их англоязычные синонимы). Обмен данными между приложениями возможен через тестовые файлы, файлы XML (используется сторонняя компонента), файлы формата «Dbase IV» и OLE. В своей работе я использовал работу с файлами «*.dbf» для обеспечения связи с удалёнными точками и работу системы 1С в качестве OLE сервера для поставки данных WEB службе. Система 1С позволяет разрабатывать дочерние формы внешние обработки. Таким образом обеспечивается взаимодействие программы с пользователем через формы, создающиеся в окне приложения «1С Конструктор»(программа для программирования 1С).

Хотелось бы остановить внимание на структуре конфигурации. Сама конфигурация находится в определённом каталоге, в котором кроме файлов «*.dbf» c данными находится файл «1Cv7.md» ядро программы. В нём хранятся все программные модули, от которых зависит функционирование системы. Кроме этого из 1С имеется возможность загрузки так называемых «внешних форм» - файлов с расширением «ert». Этот файл содержит Windows форму и модуль обработки событий этой формы (можно ещё причислить отчёты, они же таблицы, которые также могут содержаться в файле обработки). Внешней обработке, как и встроенной, доступны все объекты системы 1С. Использование обработок позволяет проводить действия с системой, не изменяя ядро. Обработка работает в одном адресном пространстве с ядром программы.

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

Особенностью конфигурации «Торговля и Склад» является использование таких объектов, как «Регистр». «Регистр» представляет собой накопительную структуру, данные в которой изменяются при проведении документов. Это позволяет увеличить скорость получения данных. Не требуется пересчитывать данные документов, а нужно обратиться к «Регистру». Например, есть у нас регистр «ОстаткиТМЦ» и документы, которые изменяют атрибут «Количество» для указанной номенклатурной позиции в этом регистре - либо увеличивают значение, либо уменьшают его в зависимости от характера проведения операции (Реализация и возврат покупателю уменьшает остаток, а поступление увеличивает). Для получения количества нужно обратиться к свойству «Количество» данного регистра.

 

1.5.2 MS SQL Server 2000

Microsoft SQL Server 2000 нацелен на решение широкого круга задач во всех областях бизнеса, в том числе и в электронной коммерции.

Преимущества:

  1. Полная web-ориентированность. Осуществление запросов, анализ и управление данными через Интернет. Использование языка XML для обмена данными между удаленными системами. Простой и безопасный доступ к данным с помощью web-браузеров с использованием межсетевого экрана, быстрый поиск необходимых документов. Анализ потоков данных и получение информации о пользователях, в том числе и через Интернет,
  2. Масштабируемость и надежность. SQL 2000 Server обеспечивает практически неограниченный рост объемов данных за счет увеличения надежности и масштабируемости системы, используя все преимущества мультипроцессорной обработки данных,
  3. Скорость построения решений. SQL 2000 уменьшает время создания, развертывания и выхода на рынок современных приложений для задач бизнеса, электронной коммерции, использует встроенный отладчик T-SQL. Совершенствует и ускоряет процесс поиска данных, упрощает управление, позволяет использовать создаваемые пользователем функции в других приложениях, предоставляет широкие возможности для создания web-приложений,
  4. Рекордные показатели скорости. Еще до окончательного выхода на рынок система на «Windows 2000», «SQL 2000 Server» установила новый мировой рекорд по производительности, далеко опередив конкурирующие решения на различных платформах.

Это из официального описания системы. В данной работе особо пригодились такие средства как «Query Analyzer» и «SQL Profiler». Использование последнего помогло отладить работу с базой через SQL запросы. Нельзя не отметить то, что связка SQL Server < -- > ADO.NET хорошо проработана и оптимизирована компанией «Microsoft», что положительно сказывается на скорости обработки запросов и получения результатов. В «Visual Studio» для работы с «MS SQL Server» даже созданы специальные классы (их имена начинаются с SQL).

Сравнивая данную систему с InterBase в плане удобства работы с SQL Server работать приятней всё проще и наглядней. При разработке помогают Wizardы.

Также имеется очень мощная система T-SQL, позволяющая смешивать синтаксис SQL запросов с алгоритмическим языком, что позволяет перенести большую часть расчётов на сторону SQL сервера (хранимые процедуры).

 

1.5.3 MS Visual Studio.NET

В этом разделе будет рассказано о новейших технологиях, используемых в данной работе, за которыми, по мнению компании разработчика, бедующее (т.к. компания Microsoft не даёт альтернативы, медленно сворачивая поддержку «устаревших» технологий).

Когда говорят о .NET языках, прежде всего подразумевают C# - язык появившийся вместе с первой версией «.NET Framework» и являющийся основным языком «.NET». Почему это там, можно вести длительные споры и приводить множество аргументов, но основным из них будет то, что язык специально создавался под новую платформу, поэтому с момента своего рождения он поддерживал все концепции платформы .NET. Не раз в компьютерной прессе были публикации по поводу того, что C# - это Java от Microsoft (дабы отойти от компании Sun). Всё, что можно было упаковать в классы, было в них и упаковано.

Были использованы такие средства программного комплекса Visual Studio 2005 beta как:

  1. WEB службы. Среда разработки Visual Studio.NET представляет собой полный набор средств для быстрой разработки иинтеграции WEB - служб XML, позволяющий существенно повысить производительность труда разработчиков иоткрывающий новые возможности развития бизнеса. Передача данных через сеть теперь не представляет никакого труда. Visual Studio.NET избавляет отнеобходимости углубляться вструктуру XML (Это позволяет написав минимум кода, получить приложение со сложной внутренней функциональностью) ивникать всложности веб-служб, позволяя разработчикам создавать ииспользовать веб-службы точно также, как любые другие компоненты,
  2. Написание ASP.NET приложения. Хочу уточнить, что приложение было создано на .NET Framework 2.0 и ASP.NET 2.0. Первый русскоязычный хостер заявил о поддержке ASP.NET второй версии только в начале июня 2005 года. С каждой версией ASP.NET появляются новые и новые компоненты, позволяющие строить сайт из «кирпичиков», минимизируя написание программного кода конечным разработчиком. С использованием ASP.NET сайт можно сделать в минимальные сроки по сравнению с другими языками Web программирования,
  3. Доступ к данным посредством ADO.NET. Использовался доступ к таким поставщикам данных как MS Excel (через Jet), Dbase IV, MS SQL Server,
  4. Доступ к COM объектам через позднее связывание. Надо заметить что данная технология уже считается устаревшей и программная реализация работы с COM объектом моего типа в MSDN помечена как «новое, не является конечным вариантом».

 

2 ФУНКЦИОНАЛЬНАЯ ЧАСТЬ

 

2.1 Общее функционирование системы на базе «1С»

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

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

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

Было принято ре

Похожие работы

<< < 1 2 3 4 5 6 7 > >>