Диплом: Автоматизация учета поступления сырья в базе конфигурации "1С: Предприятия 8.3" в ОАО "Бобруйский мясокомбинат"

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
77
Весы.Объект.ДлинаСтроки
= 0;
ИначеЕсли (Весы.Тип =
Перечисления.ЮИ_ТипыВесов.EDH)
ИЛИ (Весы.Тип =
Перечисления.ЮИ_ТипыВесов.AD)
ИЛИ (Весы.Тип =
Перечисления.ЮИ_ТипыВесов.ADH) Тогда
//Весы.Объект.НачалоСтроки = "";
Весы.Объект.КонецСтроки
= "";
Весы.Объект.ДлинаСтроки
= 1;
ИначеЕсли (Весы.Тип =
Перечисления.ЮИ_ТипыВесов.AXIS) Тогда
// Протокол LonG.
Весы.Объект.ДлинаСтроки
= 16;
Весы.Объект.КонецСтроки
= Символ(13) + Символ(10);
//ИначеЕслиВесыв.Тип =
Перечисления.ЮИ_ТипыВесов.РучнойВвод Тогда
ИначеЕсли (Весы.Тип =
ПредопределенноеЗначение("Перечисление.ЮИ_ТипыВесов.CASCI")) Тогда
78
Весы.Объект.ДлинаСтроки
= 22;
Весы.Объект.КонецСтроки
= Символ(13) + Символ(10);
Весы.Объект.СкоростьПередачи = 9600;
//ВесыОбъект.СтоповыеБиты = 0;
ИначеЕсли (Весы.Тип =
ПредопределенноеЗначение("Перечисление.ЮИ_ТипыВесов.CASPDI")) Тогда
Весы.Объект.ДлинаСтроки
= 12;
Весы.Объект.КонецСтроки
= Символ(13) + Символ(10);
Весы.Объект.СкоростьПередачи = 9600;
//ВесыОбъект.СтоповыеБиты = 0;
КонецЕсли;
Если НЕ
(Весы.Объект.НомерПорта = Весы.НомерCOMПортаПодключения) Тогда
Весы.Объект.НомерПорта
= Весы.НомерCOMПортаПодключения;
79
Весы.Объект.ОткрытьПорт();
КонецЕсли;
Исключение
ТекстСообщения = "Не удалось
открыть порт '" + Весы.ПортПодключения + "' (" +
Весы.ИмяВнешнейКомпоненты + ") для строки № "+
НастройкаВесов.НомерСтроки + " настроек весов в настройке терминала!";
ОбщегоНазначения.СообщитьОбОшибке(ТекстСообщения, Отказ,
ЗаголовокСообщения);
КонецПопытки;
Иначе
ТекстСообщения = "Не удалось
создать объект (" + Весы.ИмяВнешнейКомпоненты + ") для строки № "+
НастройкаВесов.НомерСтроки + " настроек весов в настройке терминала!";
ОбщегоНазначения.СообщитьОбОшибке(ТекстСообщения, Отказ,
ЗаголовокСообщения);
КонецЕсли;
КонецЕсли;
Иначе
80
ТекстСообщения = "Не указан таймаут ожидания
в строке № "+ НастройкаВесов.НомерСтроки + " настроек весов в настройке
терминала!";
ОбщегоНазначения.СообщитьОбОшибке(ТекстСообщения, Отказ,
ЗаголовокСообщения);
КонецЕсли;
Иначе
ТекстСообщения = "Не указан тип в строке № "+
НастройкаВесов.НомерСтроки + " настроек весов в настройке терминала!";
ОбщегоНазначения.СообщитьОбОшибке(ТекстСообщения, Отказ,
ЗаголовокСообщения);
КонецЕсли;
Иначе
ТекстСообщения = "Не указан номер COM-порта
подключения в строке № "+ НастройкаВесов.НомерСтроки + " настроек весов в
настройке терминала!";
ОбщегоНазначения.СообщитьОбОшибке(ТекстСообщения,
Отказ, ЗаголовокСообщения);
КонецЕсли;
КонецПроцедуры // ПодключитьВесы()
81
Функция ОтключитьВесы(Весы)
Отказ = Ложь;
Попытка
//Весы.Объект.ЗакрытьПорт();
Исключение
ОбщегоНазначения.СообщитьОбОшибке(ОписаниеОшибки(),
Отказ);
КонецПопытки;
Возврат НЕ Отказ;
КонецФункции // ОтключитьВесы()
Процедура ОтправитьЗапросНаПолучениеДанныхОтВесов(Весы,
Форма, Элемент, Отказ = Неопределено, ЗаголовокСообщения = "") Экспорт
Попытка
Если (Весы.Тип = Перечисления.ЮИ_ТипыВесов.BW) Тогда
Весы.Объект.ЗаписатьСтроку("D");
82
ИначеЕсли (Весы.Тип =
Перечисления.ЮИ_ТипыВесов.ТензоМ_6_43) Тогда
Весы.Объект.ЗаписатьСтроку(Символ(16));
ИначеЕсли (Весы.Тип =
Перечисления.ЮИ_ТипыВесов.ТензоМ) Тогда
Весы.Объект.ЗаписатьСтроку(Символ(198));
ИначеЕсли (Весы.Тип = Перечисления.ЮИ_ТипыВесов.EDH)
ИЛИ (Весы.Тип = Перечисления.ЮИ_ТипыВесов.AD)
ИЛИ (Весы.Тип = Перечисления.ЮИ_ТипыВесов.ADH)
Тогда
Если Весы.ВОжиданииДанных Тогда
Возврат;
ИначеЕсли (Весы.ЭтапОжиданияДанных = 0) Тогда
Весы.Объект.ДлинаСтроки = 1;
Весы.Объект.КонецСтроки = "";
Весы.Объект.ЗаписатьСтроку(Символ(5));
Весы.ЭтапОжиданияДанных = 1;
ИначеЕсли (Весы.ЭтапОжиданияДанных = 1) Тогда
83
Весы.Объект.ЗаписатьСтроку(Символ(17));
Весы.Объект.ДлинаСтроки = 0;
Весы.Объект.КонецСтроки = Символ(3) +
Символ(4);
Весы.ЭтапОжиданияДанных = 2;
КонецЕсли;
ИначеЕсли (Весы.Тип =
Перечисления.ЮИ_ТипыВесов.AXIS) Тогда
// Протокол LonG.
Весы.Объект.ЗаписатьСтроку("SI");
ИначеЕсли (Весы.Тип =
ПредопределенноеЗначение("Перечисление.ЮИ_ТипыВесов.CASCI")) Тогда
// Узнать и дописать.
ИначеЕсли (Весы.Тип =
ПредопределенноеЗначение("Перечисление.ЮИ_ТипыВесов.CASPDI")) Тогда
// Ничего не отправляем.
КонецЕсли;
84
Исключение
//ОбщегоНазначения.СообщитьОбОшибке(ОписаниеОшибки(), Отказ,
ЗаголовокСообщения);
Предупреждение("Ошибка при запросе на получение данных
от весов!");
Возврат;
КонецПопытки;
Если (Весы.Тип = Перечисления.ЮИ_ТипыВесов.РучнойВвод)
Тогда
Форма.ПодключитьОбработчикОжидания("ПриТаймаутеОжиданияДанн
ыхОтВесов", 1/10, Истина);
Иначе
Форма.ПодключитьОбработчикОжидания("ПриТаймаутеОжиданияДанн
ыхОтВесов", Весы.ТаймаутОжидания, Истина);
КонецЕсли;
Весы.ВОжиданииДанных = Истина;
Весы.ЭлементВОжиданииДанных = Элемент;
Весы.ФормаВОжиданииДанных = Форма;
КонецПроцедуры // ОтправитьЗапросНаПолучениеДанныхОтВесов()
Процедура ОбработчикПриПолученииДанныхОтВесов(Весы, Форма,
Данные = Неопределено, Отказ = Ложь) Экспорт
85
Если (Весы.Тип = Перечисления.ЮИ_ТипыВесов.EDH)
ИЛИ (Весы.Тип = Перечисления.ЮИ_ТипыВесов.AD)
ИЛИ (Весы.Тип = Перечисления.ЮИ_ТипыВесов.ADH) Тогда
Если (Весы.ЭтапОжиданияДанных = 1) Тогда
Если (Данные = СимволASCII(6)) Тогда
Иначе
Весы.ЭтапОжиданияДанных = 0;
КонецЕсли;
Весы.ВОжиданииДанных = Ложь;
ОтправитьЗапросНаПолучениеДанныхОтВесов(Весы, Форма,
Весы.ЭлементВОжиданииДанных);
Отказ = Истина;
Возврат;
КонецЕсли;
КонецЕсли;
Форма.ОтключитьОбработчикОжидания("ПриТаймаутеОжиданияД
анныхОтВесов");
Весы.ВОжиданииДанных = Ложь;
Весы.ЭтапОжиданияДанных = 0;
КонецПроцедуры // ОбработчикПриПолученииДанныхОтВесов()
86
Процедура ОбработчикПриТаймаутеОжиданияДанныхОтВесов(Весы)
Экспорт
Весы.ВОжиданииДанных = Ложь;
Весы.ЭтапОжиданияДанных = 0;
КонецПроцедуры // ОбработчикПриТаймаутОжиданияДанныхОтВесов()
Функция ОбработатьДанныеОтВесов(Данные, Весы) Экспорт
РезультатОбработки = Новый Структура("Стабильно, Вес,
ТекстОшибки", Ложь, 0, "");
Если (Весы.Тип = Перечисления.ЮИ_ТипыВесов.BW) Тогда
Если (СтрДлина(Данные) = 20) Тогда
РезультатОбработки.Стабильно = (Лев(Данные, 2) =
"ST");
Попытка
РезультатОбработки.Вес =
Число(СтрЗаменить(Сред(Данные, 10, 8), " ", ""));
Исключение
РезультатОбработки.ТекстОшибки =
"Неправильный формат данных.";
КонецПопытки;
Иначе

Смотрите также:

"Автоматизация обработки заявок ООО "Проектно-Строительная Компания"
"Автоматизация процесса аттестации персонала для ООО "Нэт Бай Нэт Холдинг"
"Анализ интернет-активности конкурентов ( на примере конкурентов "Газпром нефть")
"Бухгалтерский учёт и аудит расчётов с подотчётними лицами в организации на примере ООО "ЛОЦ 10""
«Психологическое сопровождение персонала в организации на примере ООО «Крокус»
Cовершенствование деловой оценки персонала в организации (на примере ООО "Даймонд кейтеринг развитие")
IPO - инструмент финансирования деятельности организации. На примере ПАО «Нефтяная компания «Лукойл»
PR как средство продвижения организации (на примере ПАО "Тамбовский завод "Комсомолец им. Н.С. Артемова")
PR-коммуникации в сфере общественного питания (на примере кафе-кондитерской «Cream Cheese»)
SMM как средство повышения эффективности работы учреждений социокультурной сферы (на примере Малого театра)