|
УАТ - отображение документов на путевом листе | ☑ | ||
---|---|---|---|---|
0
ЛучшийПрограммер1С
30.03.16
✎
12:42
|
Управление автотранспортом, редакция 1.0, Проф (1.0.10.1)
На лицевой стороне путевого листа отображается только номер документа предопределенного вида "Водительское удостоверение". Есть другие типы документов - Ввели новый тип документов "Удостоверение тракториста-машиниста", естественно он в отчете не отражается. А говорят надо. А когда у водителя 2 вида документов есть, то надо в зависимости от ТС документ брать. Как быть с такой проблемой? |
|||
1
Масянька
30.03.16
✎
12:53
|
(0) Ник поменять. Рано еще :)
|
|||
2
ЛучшийПрограммер1С
30.03.16
✎
12:59
|
Я вот не пойму - на форме кнопок печати нет внизу, а при работе приложения есть. Откуда они берутся? И как мне найти вообще отчет печатной формы путевого листа?
|
|||
3
ЛучшийПрограммер1С
30.03.16
✎
13:00
|
(1) Всегда найдутся те, кто будет говорить, что у тебя ничего не получится. Никого не слушай, если действительно хочешь чего-то добиться. Они говорят, что ничего не выйдет, потому что не смогли это сделать сами. (Анна)
|
|||
4
2083
30.03.16
✎
13:15
|
1) выяснить, может типовая конфигурация умеет с этим работать, а вы просто не читали инструкцию;
2) если все-таки не умеет, то выяснить, зачем вам такое надо, а то вдруг не надо; 3) если все-таки надо, то формализовать проблему в виде блок-схемы хотя бы; 4) можно и пропустить п.3; 5) написать ТЗ на доработку системы, согласовать его со всеми заинтересованными лицами; 6) быть мужиком и все сделать по ТЗ; 7) протестировать; 8) если тест неудачный, то уволиться; 9) п.9 можно пропустить; 10) исправить ошибки, вернуться к п.7; 11) если ошибок нет, то запустить все в опытную эксплуатацию, вдруг взлетит; 12) если не взлетело, то вернуться к п. 8; 13) запустить в промышленную эксплуатацию. |
|||
5
Масянька
30.03.16
✎
13:20
|
(3) И? К чему это?
(4) Много буков... |
|||
6
2083
30.03.16
✎
13:21
|
(5) а Вам оно и не надо, думаю, и так все знаете
|
|||
7
ЛучшийПрограммер1С
30.03.16
✎
13:32
|
Хватит умничать, скажите по делу.
|
|||
8
Одинесю
30.03.16
✎
14:42
|
(2) // Создать кнопки печати
ФормированиеПечатныхФорм.СоздатьКнопкиПечати(ЭтотОбъект, ЭтаФорма); |
|||
9
Одинесю
30.03.16
✎
14:44
|
Это формирование кнопок. Посмотри модуль объекта, функцию Печать() - там разбирайся что и почему.
|
|||
10
ЛучшийПрограммер1С
30.03.16
✎
15:11
|
(9) Спасибо!
Нужный код в процедуре печати: уатОбщегоНазначения.уатУдостоверениеВодителя(Водитель1, мВодительскоеУдСерия, мВодительскоеУдНомер, мВодительскоеУдКатегория); Обл.Параметры.НомерУдостоверенияВодителя = ?(СокрЛП(мВодительскоеУдСерия)="","",СокрЛП(мВодительскоеУдСерия) + " ") + мВодительскоеУдНомер; // Функция получает удостоверение водителя. // //Параметры: // ФизЛицо - водитель, входящий параметр // ДокументСерия - серия документа, исходящий параметр // ДокументНомер - номер документа, исходящий параметр // ДокументКатегория - категория документа, исходящий параметр // //Возвращаемое значение: // Булево. Истина, если документ найден. // Функция уатУдостоверениеВодителя(Сотрудник, ДокументСерия, ДокументНомер, ДокументКатегория) ЭКСПОРТ ДокументСерия = ""; ДокументНомер = ""; ДокументКатегория = ""; Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ ПЕРВЫЕ 1 | уатДокументыВодителей.Сотрудник, | уатДокументыВодителей.ВидДокумента, | уатДокументыВодителей.Серия, | уатДокументыВодителей.Номер, | уатДокументыВодителей.ДатаВыдачи КАК ДатаВыдачи, | уатДокументыВодителей.ДатаОкончания, | уатДокументыВодителей.КемВыдан, | уатДокументыВодителей.Категория |ИЗ | РегистрСведений.уатДокументыВодителей КАК уатДокументыВодителей | |ГДЕ | уатДокументыВодителей.Сотрудник = &Сотрудник И | уатДокументыВодителей.ВидДокумента = &ВидДокумента | |УПОРЯДОЧИТЬ ПО | ДатаВыдачи УБЫВ"; Запрос.УстановитьПараметр("Сотрудник", Сотрудник); Запрос.УстановитьПараметр("ВидДокумента", Справочники.уатВидыДДД.УдостоверениеВодителя); РезультатЗапроса = Запрос.Выполнить(); Если РезультатЗапроса.Пустой() Тогда Результат = Ложь; Иначе РезультатВыборки = РезультатЗапроса.Выбрать(); РезультатВыборки.Следующий(); ДокументСерия = РезультатВыборки.Серия; ДокументНомер = РезультатВыборки.Номер; ДокументКатегория = РезультатВыборки.Категория; Результат = Истина; КонецЕсли; Возврат Результат; КонецФункции // утПроверкаКорректностиПЛ А дальше дело техники, функцию и запрос поменяю в зависимости от типа ТС. |
|||
11
ЛучшийПрограммер1С
30.03.16
✎
15:14
|
Судя по всему, РегистрСведений.уатДокументыВодителей не содержит документов, которые недействительны или в архиве, раз условия такого нет?
|
|||
12
ЛучшийПрограммер1С
30.03.16
✎
15:16
|
А нельзя как-то существующий непредопределенный элемент справочника сделать предопределенным?
|
|||
13
ЛучшийПрограммер1С
30.03.16
✎
15:39
|
(1) Раньше был под другим ником, чморили вы тут меня конкретно, под этим вроде не так :)
|
|||
14
ЛучшийПрограммер1С
31.03.16
✎
09:11
|
Как-то так:
уатОбщегоНазначения.уатУдостоверениеВодителя2(ТранспортноеСредство.ТипТС, Водитель1, мВодительскоеУдСерия, мВодительскоеУдНомер, мВодительскоеУдКатегория); Функция уатУдостоверениеВодителя2(ТипТС, Сотрудник, ДокументСерия, ДокументНомер, ДокументКатегория) ЭКСПОРТ ДокументСерия = ""; ДокументНомер = ""; ДокументКатегория = ""; Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ВЫБОР | КОГДА уатТипыТС.Ссылка В ИЕРАРХИИ (&ТипТСГруппаТрактора) | ТОГДА &ВидДокументаТракториста | ИНАЧЕ &ВидДокументаВодительское | КОНЕЦ КАК ВидДокумента |ПОМЕСТИТЬ ТипТС |ИЗ | Справочник.уатТипыТС КАК уатТипыТС |ГДЕ | уатТипыТС.Ссылка = &ТипТС |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ ПЕРВЫЕ 1 | уатДокументыВодителей.Сотрудник, | уатДокументыВодителей.ВидДокумента, | уатДокументыВодителей.Серия, | уатДокументыВодителей.Номер, | уатДокументыВодителей.ДатаВыдачи КАК ДатаВыдачи, | уатДокументыВодителей.ДатаОкончания, | уатДокументыВодителей.КемВыдан, | уатДокументыВодителей.Категория |ИЗ | РегистрСведений.уатДокументыВодителей КАК уатДокументыВодителей, | ТипТС КАК ТипТС |ГДЕ | уатДокументыВодителей.Сотрудник = &Сотрудник | И уатДокументыВодителей.ВидДокумента = ТипТС.ВидДокумента | |УПОРЯДОЧИТЬ ПО | ДатаВыдачи УБЫВ"; Запрос.УстановитьПараметр("Сотрудник", Сотрудник); Запрос.УстановитьПараметр("ВидДокументаВодительское", Справочники.уатВидыДДД.УдостоверениеВодителя); Запрос.УстановитьПараметр("ВидДокументаТракториста", Справочники.уатВидыДДД.НайтиПоНаименованию("Удостоверение тракториста-машиниста")); Запрос.УстановитьПараметр("ТипТС", ТипТС); Запрос.УстановитьПараметр("ТипТСГруппаТрактора", Справочники.уатТипыТС.НайтиПоНаименованию("Тракторная техника")); РезультатЗапроса = Запрос.Выполнить(); Если РезультатЗапроса.Пустой() Тогда Результат = Ложь; Иначе РезультатВыборки = РезультатЗапроса.Выбрать(); РезультатВыборки.Следующий(); ДокументСерия = РезультатВыборки.Серия; ДокументНомер = РезультатВыборки.Номер; ДокументКатегория = РезультатВыборки.Категория; Результат = Истина; КонецЕсли; Возврат Результат; КонецФункции // уатУдостоверениеВодителя2 |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |