Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Вопрос из методички, документ "Заявка на транспорт"
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 8.2 > Программирование обычных форм 1С 8.2 и не интерфейсной логики
Said
У меня вот какой вопрос, Есть документ "ЗаявкаНаТранспорт" и "ФормированиеБригады". В документе ЗаявкаНаТранспорт при выборе машины доставки нужно что бы автоматически заполнялись поля "Водитель", "Грузчик1" "Грузчик2", из документа "ФормированиеБригадыт" Если за машиной не определена бригада выдатся сообщение "Бригада не сформирована". при этом поле машина сбрасывается. добавлю что это задача из методички "Введение в конфигурирование в систме 1с Предприятие основные объекты".

на основании все информации нужно видеть какя бригада работала на какой машине, какой водиль в скольки доставках участвовал и с каким километражом, также нужно получать состояние счетчика на нач каждого дня.
Создал переодический регистр сведений СостояниеАвтомобиля в нем определил измерения НазначеныйАвтомобиль, Водитель, грузчик1, Грузчик2, ПоказанияСчетчика.
в модуле формы создал обработчик события "МашинаПриИзменении"

прошу сильно не пинать. Заранее Большое Спасибо!
logist
Цитата(Said @ 03.02.11, 12:27) необходимо зарегистрироваться для просмотра ссылки
Создал переодический регистр сведений СостояниеАвтомобиля в нем определил измерения НазначеныйАвтомобиль, Водитель, грузчик1, Грузчик2, ПоказанияСчетчика.
в модуле формы создал обработчик события "МашинаПриИзменении"

... а дальше ждете что тут кто-то напишет Вам остальной код?
1. Для начала измените регистр, измерение в Вашем случае будет одно, остальное будет ресурсами.
Said
Цитата(logist @ 03.02.11, 13:44) необходимо зарегистрироваться для просмотра ссылки
... а дальше ждете что тут кто-то напишет Вам остальной код?
1. Для начала измените регистр, измерение в Вашем случае будет одно, остальное будет ресурсами.


я не жду что мне кто то что то напишет, я хочу сам понять и разбраться, что то узнаю из книги что то приходиться спрашивать у Вас, мне не надо готовых ответов, я хочу что бы Вы давали подсказки как и что надо сделать. Думаю Вы меня понимаете?
Vofka
Said, так вопрос в чём? В первом посте вообще не одного вопроса нет.
Said
Цитата(Vofka @ 03.02.11, 14:07) необходимо зарегистрироваться для просмотра ссылки
Said, так вопрос в чём? В первом посте вообще не одного вопроса нет.

Вопрос таков: Есть документы "ЗаявкаНаТранспорт" и "ФормированиеБригады". В документе ЗаявкаНаТранспорт при выборе машины доставки нужно что бы автоматически заполнялись поля "Водитель", "Грузчик1" "Грузчик2", из документа "ФормированиеБригадыт". Если за машиной не определена бригада выдатся сообщение "Бригада не сформирована". при этом поле машина сбрасывается. Добавлю что это задача из методички "Введение в конфигурирование в систме 1с Предприятие основные объекты".

Я начал делать след. Создал переодический регистр сведений СостояниеАвтомобиля в нем определил измерение НазначеныйАвтомобиль, ресурсы: Водитель, грузчик1, Грузчик2, ПоказанияСчетчика.
в модуле формы создал обработчик события "МашинаПриИзменении" Вот собственно и все, было бы хорошо что бы Вы подсказали последовательность или алгоритм, что за чем нужно сделать. Спасибо.
logist
В обработке события изменения сделать:
отбор из регистра по выбранной машине,
если бригада есть, подставить значения из регистра в реквизиты документа,
иначе очистить выбор машины и выдать сообщение.

Вот Вам и весь алгоритм...
Said
Цитата(logist @ 03.02.11, 14:55) необходимо зарегистрироваться для просмотра ссылки
В обработке события изменения сделать:
отбор из регистра по выбранной машине,
если бригада есть, подставить значения из регистра в реквизиты документа,
иначе очистить выбор машины и выдать сообщение.

Вот Вам и весь алгоритм...

где можно посмотреть пример похож на этот? что бы понять какими методами пользоваться:?
logist
Цитата(Said @ 03.02.11, 14:17) необходимо зарегистрироваться для просмотра ссылки
где можно посмотреть пример похож на этот?

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

Цитата(Said @ 03.02.11, 14:17) необходимо зарегистрироваться для просмотра ссылки
что бы понять какими методами пользоваться:?

Что значит какими методами? Описание методов можно найти во встроенном синтаксис-помощнике.
mister-x
Цитата(Said @ 03.02.11, 13:27) необходимо зарегистрироваться для просмотра ссылки
У меня вот какой вопрос, Есть документ "ЗаявкаНаТранспорт" и "ФормированиеБригады". В документе ЗаявкаНаТранспорт при выборе машины доставки нужно что бы автоматически заполнялись поля "Водитель", "Грузчик1" "Грузчик2", из документа "ФормированиеБригадыт" Если за машиной не определена бригада выдатся сообщение "Бригада не сформирована". при этом поле машина сбрасывается. добавлю что это задача из методички "Введение в конфигурирование в систме 1с Предприятие основные объекты".

на основании все информации нужно видеть какя бригада работала на какой машине, какой водиль в скольки доставках участвовал и с каким километражом, также нужно получать состояние счетчика на нач каждого дня.
Создал переодический регистр сведений СостояниеАвтомобиля в нем определил измерения НазначеныйАвтомобиль, Водитель, грузчик1, Грузчик2, ПоказанияСчетчика.
в модуле формы создал обработчик события "МашинаПриИзменении"

прошу сильно не пинать. Заранее Большое Спасибо!


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

А от пробував спитатися щодо проблем у свого викладача?

ася - 306687675
mister-x
Цитата
А от пробував спитатися щодо проблем у свого викладача?

пробуваЛИ smile.gif, мушу слідувати правилам
Said
Цитата(mister-x @ 03.02.11, 19:54) необходимо зарегистрироваться для просмотра ссылки
Шановний, я також це реалізую необходимо зарегистрироваться для просмотра ссылки. Можемо на цю тему поспілкуватися.

А от пробував спитатися щодо проблем у свого викладача?

ася - 306687675

на даный момент доступа к асе нет. поэтому предлагаю поговорить пока так или перейти в личку.
Vofka
Цитата
поэтому предлагаю поговорить пока так

Протестую, иначе тема попадет в офтоп или удалится. Не захлямляйте тему личной перепиской!
Said
Цитата(Vofka @ 04.02.11, 10:58) необходимо зарегистрироваться для просмотра ссылки
Протестую, иначе тема попадет в офтоп или удалится. Не захлямляйте тему личной перепиской!


Сори, сообщения можете подчистить.
Said
Цитата(Said @ 03.02.11, 15:17) необходимо зарегистрироваться для просмотра ссылки
где можно посмотреть пример похож на этот? что бы понять какими методами пользоваться:?


Кажется отбор из регистра по выбраной машине сделал.
&НаСервере
Процедура ПолучитьЗначениеАвтомобиля()
    ЗначениеРегистра = РегистрыСведений.СостояниеАвтомобиля;
    СостояниеАвтомобиля = ЗначениеРегистра.ПолучитьПоследнее(Новый Структура("НазначеныйАвтомобиль",  Объект.Машина));    
    
КонецПроцедуры

Как быть дальше? Где можно посмотреть методы? или пример.
logist
Можно не входить в дебри... и разумнее получать отбор на дату

&НаСервере
Процедура ПолучитьЗначениеАвтомобиля()
    СостояниеАвтомобиля = РегистрыСведений.СостояниеАвтомобиля.СрезПоследних(Объект.Дата,Новый Структура("НазначеныйАвтомобиль",  Объект.Машина));    
КонецПроцедуры
Said
Цитата(logist @ 04.02.11, 12:17) необходимо зарегистрироваться для просмотра ссылки
Можно не входить в дебри... и разумнее получать отбор на дату

&НаСервере
Процедура ПолучитьЗначениеАвтомобиля()
    СостояниеАвтомобиля = РегистрыСведений.СостояниеАвтомобиля.СрезПоследних(Объект.Дата,Новый Структура("НазначеныйАвтомобиль",  Объект.Машина));    
КонецПроцедуры


А как теперь привязаться к проверке есть ли водитель и грузчики...?
logist
Цитата(Said @ 04.02.11, 11:36) необходимо зарегистрироваться для просмотра ссылки
А как теперь привязаться к проверке есть ли водитель и грузчики...?

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

&НаСервере
Процедура ПолучитьЗначениеАвтомобиля()
    СостояниеАвтомобиля = РегистрыСведений.СостояниеАвтомобиля.СрезПоследних(Объект.Дата,Новый Структура("НазначеныйАвтомобиль",  Объект.Машина));    
    Если ТутЗадаемУсловиеПроверкиЗаполненностиРесурсов Тогда
           // если ресусры заполнены
          ПрисваимваемРеквизитуДокумента = ЗначениеСоответствующегоРесурса;
    Иначе
          // если ресусры не заполнены
          ОчищаемЗначениеАвтомобилия;
          ИВыдаемСообщение;
КонецПроцедуры
Said
Цитата(logist @ 04.02.11, 12:45) необходимо зарегистрироваться для просмотра ссылки
Вот спросил сразу, Вам надо написать код, а Вы ломаетесь как девочка... И алгоритм дали, все равно никак... Все Ваши вопросы сходят к написанию кода, пинать то некуда...

&НаСервере
Процедура ПолучитьЗначениеАвтомобиля()
    СостояниеАвтомобиля = РегистрыСведений.СостояниеАвтомобиля.СрезПоследних(Объект.Дата,Новый Структура("НазначеныйАвтомобиль",  Объект.Машина));    
    Если ТутЗадаемУсловиеПроверкиЗаполненностиРесурсов Тогда
           // если ресусры заполнены
          ПрисваимваемРеквизитуДокумента = ЗначениеСоответствующегоРесурса;
    Иначе
          // если ресусры не заполнены
          ОчищаемЗначениеАвтомобилия;
          ИВыдаемСообщение;
КонецПроцедуры


Ну Вы же код не написали, это только схема и инструкции что за чем над делать. Это то что надо, спасибо!
logist
Цитата(Said @ 04.02.11, 12:05) необходимо зарегистрироваться для просмотра ссылки
Ну Вы же код не написали, это только схема и инструкции что за чем над делать. Это то что надо, спасибо!

Я и не собираюсь писать сразу нужный код
Мне каждый раз становиться очень интересно, какой же вопрос будет следующим,... точнее я догадываюсь какой, для себя интересно - угадал или нет smile.gif))
Марат Башаров
Цитата(logist @ 04.02.11, 13:09) необходимо зарегистрироваться для просмотра ссылки
Я и не собираюсь писать сразу нужный код
Мне каждый раз становиться очень интересно, какой же вопрос будет следующим,... точнее я догадываюсь какой, для себя интересно - угадал или нет smile.gif))

logist я за Вами наблюдаю .... biggrin.gif
mister-x
Цитата(logist @ 03.02.11, 13:44) необходимо зарегистрироваться для просмотра ссылки
... а дальше ждете что тут кто-то напишет Вам остальной код?
1. Для начала измените регистр, измерение в Вашем случае будет одно, остальное будет ресурсами.

Ні все ж вважаю правильним, Виміри: Водитель, Грузчик1, Грузчик2. Ресурс: НазначенныйАвтомобиль. Оскільки, набір "Водитель, Грузчик1, Грузчик2" - визначає конкретну бригаду. Далі необхідно на певний час отримати: яка машина за якою конкретною бригадою (отим набором) закріплена. Інакше вийде відношення машина - набір "Водитель, Грузчик1, Грузчик2" - які можуть і не бути бригадою (тобто такий набір відсутній у док. "Формирование бригады").
logist
Оригинал задания никто не выкладывал, в топике написано:
Цитата(Said @ 03.02.11, 12:27) необходимо зарегистрироваться для просмотра ссылки
В документе ЗаявкаНаТранспорт при выборе машины доставки нужно что бы автоматически заполнялись поля "Водитель", "Грузчик1" "Грузчик2"

Цитата(Said @ 03.02.11, 12:27) необходимо зарегистрироваться для просмотра ссылки
Если за машиной не определена бригада выдатся сообщение "Бригада не сформирована".

Мне отсюда понятно, что ведущим значением должна быть машина. Иначе как Вы собираетесь заполнить в документе Заявка поля "Водитель", "Грузчик1" "Грузчик2", выбрав автомобиль? Отбор по ресурсу осуществить нельзя.

Выкладывайте оригинал задания, мне лично Ваша логика не понятна.
mister-x
Цитата(logist @ 05.02.11, 3:09) необходимо зарегистрироваться для просмотра ссылки
Оригинал задания никто не выкладывал, в топике написано:


Мне отсюда понятно, что ведущим значением должна быть машина. Иначе как Вы собираетесь заполнить в документе Заявка поля "Водитель", "Грузчик1" "Грузчик2", выбрав автомобиль? Отбор по ресурсу осуществить нельзя.

Выкладывайте оригинал задания, мне лично Ваша логика не понятна.

Ваша правда, але у документі "Формирование бригады" обов'язково мають заповненні бути всі члени бригади і всі ці дані записуватись у регістр - інакше при відборі із регістру щодо прикріпрення авто до бригади вийде бурда smile.gif .

Завдання хіба Вам в ПП напишу або ел. адресу, я ж все-таки погодився не розповсюджувати матеріали smile.gif .
logist
Цитата(mister-x @ 05.02.11, 14:28) необходимо зарегистрироваться для просмотра ссылки
але у документі "Формирование бригады" обов'язково мають заповненні бути всі члени бригади і всі ці дані записуватись у регістр

Тогда зачем проверять это при выборе машины, и выдавать сообщение что бригады у машины нет...?
Даже если так, то тогда выбор автомобиля в заявку должен осуществляться не из регистра где хранятся бригады, а из справочника "Автомобили", а потом проверятся регистр на наличие там этого автомобиля, и если автомобиль найден то считать бригаду из регистра.

Короче, что я могу сказать - как был задан начальный вопрос - так и был дан ответ, подробности ж никто не оглашал.
logist
Бегло посмотрел задание, собственно выше я был прав:
Выбор автомобиля в заявку должен осуществляться из справочника "ТранспортныеСредства", а потом проверятся регистр "Бригад" на наличие там этого автомобиля, и если автомобиль (т.е. по нему на дату доставки сформирован документ ФормированиеБригады) найден то считать бригаду из регистра.
Отбор регистра обязательно по дате, равной дате доставки в заявке.

Документ "Формирование бригады" должен быть регистратором для регистра бригад, ну и с проверкой заполнения всего состава бригады.
mister-x
Цитата(logist @ 05.02.11, 15:36) необходимо зарегистрироваться для просмотра ссылки
Тогда зачем проверять это при выборе машины, и выдавать сообщение что бригады у машины нет...?
Даже если так, то тогда выбор автомобиля в заявку должен осуществляться не из регистра где хранятся бригады, а из справочника "Автомобили", а потом проверятся регистр на наличие там этого автомобиля, и если автомобиль найден то считать бригаду из регистра.

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


ТЗ в ПП.
logist
Цитата(mister-x @ 05.02.11, 16:29) необходимо зарегистрироваться для просмотра ссылки
ТЗ в ПП.

Ответ необходимо зарегистрироваться для просмотра ссылки smile.gif
Said
Цитата(Марат Башаров @ 04.02.11, 13:44) необходимо зарегистрироваться для просмотра ссылки
logist я за Вами наблюдаю .... biggrin.gif

В общем у меня получилось вот что:

&НаКлиенте
Процедура МашинаПриИзменении(Элемент)
    
    ПолучитьЗначениеАвтомобиля();
КонецПроцедуры

&НаСервере
Процедура ПолучитьЗначениеАвтомобиля()
    
    СостояниеАвтомобиля = РегистрыСведений.СостояниеАвтомобиля.СрезПоследних(Объект.Дата, Новый Структура("НазначеныйАвтомобиль",  Объект.Машина));    
    Если СостояниеАвтомобиля.Следующий() тогда
        Объект.Водитель = СостояниеАвтомобиля.Водитель;
        Объект.Грузчик1 = СостояниеАвтомобиля.Грузчик1;
        Объект.Грузчик2 = СостояниеАвтомобиля.Грузчик2;
    Иначе Объект.Машина = Справочники.ТранспортныеСредства.ПустаяСсылка();
        Сообщить("За машиной не закреплено ни одной бригады");
    КонецЕсли;
        
КонецПроцедуры

и пишет такую ошибку, {Документ.ЗаявкаНаТранспорт.Форма.ФормаДокумента.Форма(15)}: Метод объекта не обнаружен (Следующий)
Если СостояниеАвтомобиля.Следующий() тогда
Может я не тот метод выбрал?
logist
Разумеется не тот. У регистра нет метода "Следующий". Читайте синтаксис-помощник!!!!!! Вы задаете много вопросов ответ на которые содержатся во встроенной справке 1С.

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