"Перегрузка документа" Изучаю 1С четвёртый день :) #509767


#0 by Nikitvol
Всем Привет! Ребят, устраиваюсь на работу (в сфере 1С); дали там задание, мол если сделаешь, то на собеседование позовем. Я с 1С 4ый день знаком, поэтому только основы узнал. Так вот задание (выполняется в 1С:Предприятие 8.2): Необходимо с помощью программных средств языка 1С написать внешнюю обработку «Перегрузка документа». На форме находятся 2 поля: в одном выбираем документ, в другом файл; и две кнопки: "Выгрузить" и "Загрузить" По кнопке «Выгрузить» информация, содержащая в выбранном документе, выгружается в указанный файл. По кнопке «Загрузить», из указанного файла, в базе создается копия исходного документа (за исключением номера документа, так как номера документов в системе уникальные). При написании обработки необходимо использовать элемент языка «Метаданные.…». Форму я сделать смог, как в полях документ и файл выбирать разобрался, а вот какие процедуры нужно написать к кнопкам (точнее как их написать) не допираю :( :( Я так понял, что нужно документ выгружать в xml или txt файл... А потом из файла загружать... На форуме искал похожие темы, находил, но они не помогали :( Помогите пожалуйста, кто чем сможет :) P.S. Не судите строго, я пока нуб в 1С :)
#1 by Shutov
Сиринт? :)
#2 by AlexNew
Иди туда, где сначала не дают тестовые задания, побегаешь, научишься (может быть).
#3 by nick slaughter
Ну подскажут вам тут как обработку сделать, а на собеседовании то чо делать будете? Все равно ж завалитесь.
#4 by Garlic
В пятницу? На ночь глядя? - Иди девчонок окучивай!
#5 by Shutov
Ребята, это было первое задание, вы хотите знать какое второе задание для стажера? %)
#6 by Nikitvol
да, а откуда знаешь? без тестовых заданий и бегать не не захочется! на первом же собеседовании (когда задание давали) их не испугало то что я не знаю 1С.
#7 by AlexNew
Отлично, иди без задания, им ИТС разносить некому, сначала обновлять научишься, дальше - как пойдет.
#8 by Shutov
Сам делал в 2005-ом такое задание 8) Привет передавай Савлюку Вячеславу и Вадиму Михайловичу из Москвы, если устроишься на работу. На самом деле у "Сиринта" подход очень простой, и, как показала практика, верный и работающий - они берут толковых студентов на 3-4-ом курсах из ИТ-специальностей (без каких-либо знаний 1С!), прокачивают их заданиями (около 10-ти различных) по сферам программирования в 1С, бухгалтерии и т.п., а потом под руководством ведущего специалиста ставят на проект в должность младшего программиста. Человек, если он толковый, быстро "прокачивается" и через 2 года сам может вести проекты. Реально.
#9 by Shutov
Модель продвижения стажера через ИТС и разъезды к клиенту ИМХО сливная, на такую работу "звезд" не наберешь!
#10 by AlexNew
Правда? Наш бывший курьер сейчас нормально работает как самостоятельный прог. Кто к чему стремится.
#11 by Nikitvol
Обязательно передам привет :) Помоги только пожалуйста!!! :) Хоть чем нибудь.
#12 by AlexNew
Думаю, что сериализация и заполнитьзначениясвойств. По-моему самый короткий путь.
#13 by Heckfy
Мочи второе задание   :):):
#14 by Nikitvol
а можно небольшой пример, пжалуста!
#15 by GenV
Лучше начинать с книг. Толку будет больше. Например, "1С:Предприятие 8.0. Простые примеры разработки" А.П. Габец, Д.И. Гончаров. Там есть полезная для тебя инфа.
#16 by Shutov
Сериализацию использовать нельзя. Цель задания - чтобы человек сам разобрался с различными типами объектов в системе, в первую очередь со справочниками и документами. На базе какой конфигурации делаешь задание?
#17 by AlexNew
#18 by Shutov
Второе задание - это 7 вопросов по бухгалтерскому учету, нужно понимать что такое счет, проводка, план счетов, баланс, субконто и т.п. знать 5 основных проводок. В легкую за 1 неделю с книгами это все можно самостоятельно пройти и разобраться.
#19 by AlexNew
Пачиму? Они не знают как это работает?
#20 by Shutov
Книги книгами, но реально с Конфигуратором и справкой быстрее. Крутой код :) Начни с того, чтобы написать по нажатию кнопки "Выгрузить" обход полей документа вне зависимости от того, какой тип документа выбран - используй объект "Метаданные", тип документа - определяй по выбранному документу пользователем. Затем к этому обходу прикрути сохранение в текстовый файл, типа в таком формате: "Док.РеализацияТоваровИУслуг Номер=0001234 Дата=21.08.10 Реквизит1= Реквизит2= Реквизит3= ..."
#21 by Nikitvol
Спасибо, полистаю, а Предприятие 8.0 сильно отличается от Предприятия 8.2? P.S. Я тут уже прочитал половину книги: Радченко М., Хрусталева Е. 1C Предприятие 8.2 Практическое пособие разработчика. Я сам начал свою конфигурацию делать по книге. Это одно из условий задания. вот это второе задание, идёт у меня вместе с первым. Его я сделал, два дня потратил.
#22 by Shutov
С сериализацией смысл написания обработки теряется. Человек должен понять, что элементы справочника нужно читать по коду, документы искать по номеру и дате и т.д.
#23 by Shutov
8.0 от 8.2 в том виде, котором тебе нужно, не отличаются. Я вообще учился по книжке к 7.7 :) Вбивал оттуда код и не мог понять почему он в 8-ке не работает. Советую для тестирования брать не свою новую пустую конфигурацию, а возьми 1С:Бухгалтерию 8 или 1С:УПП 8 - там все те нюансы, которые ты упустишь, будут сразу видны. У тебя принимать задание будут именно на одной из таких конфигураций. Реально уже решил задачу по бухгалтерии? Все, принято?
#24 by Nikitvol
я конечно смутно понял, возьму этот код на заметку. "элементы справочника нужно читать по коду, документы искать по номеру и дате и т.д." т.е. использовать метаданные???
#25 by AlexNew
Бред. С автомобилями теряется смысл велосипедов.
#26 by GenV
Как говорится, кому как. Тем более там есть примеры и без сериализации. Смотря в каком режиме. В управляемом приложение отличается логика.
#27 by Shutov
Тебе нужно: а) Понять какой тип документа у тебя выбрал пользователь в реквизите "Документ" - например, "РеализацияТоваровИУслуг"; б) Обратиться через объект "Метаданные" к метаданным этого документа - типа Метаданные["РеализацияТоваровИУслуг"]; в) Обойти у этого типа документов его метаданные циклом - типа Для Каждого Реквизит Из Метаданные["РеализацияТоваровИУслуг"] Цикл ... КонецЦикла г) Каждый реквизит аккуратно положить файл в виде Реквизит.Имя + "=" + Реквизит.Значение. Если это простой тип (строка, число и т.п.), то все ляжет просто. Если это тип (сложный) справочник, документ и т.д. подумай как его можно так сохранить, чтобы потом при восстановлении можно было восстановить каждый из таких сложных типов.
#28 by Shutov
Выгрузка документа, с точки зрения кода, не будет отличаться ни в управляемом режиме, ни в обычном ;)
#29 by AlexNew
По какому коду? Ты сам этот бред писал?
#30 by Shutov
и По коду справочника. Чел, хватит троллить! Не сбивай человека.
#31 by GenV
Хм. Глобальный контекст (Global context) Метаданные (Metadata) Использование: Только чтение. Описание: Тип: ОбъектМетаданныхКонфигурация. Используется для доступа к структуре метаданных конфигурации. Доступность: Сервер, толстый клиент, внешнее соединение. Нужное подчеркнуть? :)
#32 by Shutov
Согласись, в этом задании это абсолютно не принципиально сейчас?
#33 by Nikitvol
задачу по бухгалтерии решил (раскрыл на 13 страниц, надеюсь этого хватит), но еще не отправлял. Вот сделаю "перегрузку документа", тогда отправлю. Спасибо :) А что это: управляемый и обычный режимы?
#34 by ВлюбленныйРомео
хрусталев ето тот что в камеди клаю снимается ?
#35 by Shutov
Везет, по почте сдаешь задания. Я тоже исписал 10 страниц в свое время, приехал сдавать в офис, а мне их закрыли и заставили писать по памяти на чистом листе :) Пожалуйста :) Обращайся. Сейчас все стандартные конфигурации работают в обычном режиме, поэтому не заморачивайся на этом. (условно - управляемый режим нужен, если мы хотим к этой базе доступ через веб обеспечить напрямую).
#36 by AlexNew
Не понял, где что-то было некорректно, кроме постановки задачи и твоих ответов на вопросы?
#37 by GenV
Сейчас, судя по его информированности, нет. Но в общем отличия существенные. В управляемом режиме идет разделение вызовов на клиент и сервер. И весь интерфейс/формы по другому строятся.
#38 by Shutov
Смотри , написал, что сериализацию нельзя использовать.
#39 by ВлюбленныйРомео
33 я тебе честно расскажукогда я пришел работать прогарммситом 1с мне платили за выполнение 1сных задач ...я примерно неделю пытался свернуть таблицу занчений по колонкам пришлось прочитать жкк) я б за бесплатно не согласился - не те деньги у программистов чтобы обучени етебе не оплачивалось, лучше идти менегером там перспективы есть
#40 by Shutov
Если ничего не изменилось, то выполнение таких учебных задач оплачивается в каком-то учебном размере. Если же учишься на рабочих задачах с проекта, то они оплачиваются, но по ставке и времени работы опытного специалиста 1С.
#41 by Nikitvol
Вот жесть, а я бы и не подумал, что могут спросить по заданию. мне программировать по душе.
#42 by AlexNew
В условиях этого не было, а если бы к нам пришел чел, к-рый умеет это использовать, я думаю, что он бы получил определенные преференции. То, что люди не умеют этим пользоваться не умоляет значения механизма. Привет великам!!!
#43 by ВлюбленныйРомео
41 дурак :(
#44 by Nikitvol
эт почему?
#45 by AlexNew
Главное, что он не одинок, в своем заблуждении:)
#46 by Shutov
Написал же в , что знаю это задание и эту компанию. Сам принимал такие же задания в этой компании у стажеров. И если бы к нам пришел чел с сериализацией в обработке, то конечно бы ничего страшного не случилось, но он пошел бы переделывать тоже самое без сериализации. Это очередной тролль %) Или бухой программист 1С ;) Пятница же. Реально в Сиринте, незнаю как сейчас, но раньше можно было очень хорошие деньги поднимать, тем более для студента! По сравнению с другими 1С-франчайзи, которые действительно стажеров отправляла на ИТС (диски развозить) и прочую не интересную работу, здесь тебя грузили действительно рабочими задачами и всегда давали больше ответственности за то, что ты делаешь. Поэтому советую!
#47 by Nikitvol
Спасибо, пробиться бы еще туда :) Я так понимаю ты сейчас и работаешь в Сиринте?
#48 by Immortal
гг.. ответственность как мотивация это немного смешно
#49 by Shutov
Это реально, если есть "голова на плечах". Я уехал 2,5 года назад и работаю теперь в Москве. В Сиринте работал на проектах БФК, СПК, НГУ и др. Это круто, это реально тебя поднимает. Год работы в таком режиме и подъем в опыте на 5 лет! Прихожу на собеседование в Москве, мне говорят - как так, вам 25, а вы - руководитель проектов?! У нас моложе 30-ти такую должность не занимают, потому что еще нет опыта.
#50 by Nikitvol
Получается ты в Новосибе учился?
#51 by Shutov
Да, СибГУТИ.
#52 by Nikitvol
Понятно, а я в СГГА на 4м щас.
#53 by ice777
Походу, рекламюги начального уровня не отстают от журналюг )
#54 by ice777
естественно, еще бы смешно. За ответственность еще никто не снял квартиру.
#55 by AlexNew
А чем сериализация не угодила, или условия задачи задать конкретнее?
#56 by Stalker1986
Люди, не спорьте! Задачка эта на перегрузку в Сиринте придумалась еще в бородатые годы. Я сам сдавал ее на 7.7, потом на 8.0. Смысл был такой как пишет Шутов - в изучении возможностей платформы на уровне метаданных. Причем пока напишешь эту обработку перелопатишь кучу литры, и реально начнешь втыкать че к чему. Понятно, что щас никто не будет писать выгрузку в текстовый файл, есть конвертация. Но на тот момент это был одним из часто используемых способов, поэтому и задачку учебную сделали в этом стиле. А насчет эффективности работы ИТС-ником: ты тратишь свое время на тупую работу - изучение инсталляционного пакета 1С, дорогу от одного клиента к другому и т.д. вместо решения конкретных задач, где нужна смекалка, творческий подход, коммуникабельность, умение работы в команде, умение разбираться в незнакомой теме, предметной области. Хотите быстрого проф. роста - работайте задешево, но на проектах под руководством спецов. Не нужно питать иллюзий - пока человек не изучит УПП (именно УПП, потому что в ней наиболее полный пакет учетных блоков)вдоль и поперек на РЕАЛЬНЫХ задачах - он ламер, а не специалист 1С. И потому как ламеру ему положена маленькая зарплата. Большая зарплата у НЕ специалиста сразу может быть только там, где нет никаких перспектив (если ты конечно не гений). Поэтому обучение ПОЧТИ бесплатное - хочешь учись, не хочешь - не учись.
#57 by ice777
а если к спецу подкидывают кукушёнка, который нацелен только на кaръеру?
#58 by Stalker1986
а в чем нацеленность на карьеру заключается? :) или вопрос в том, что будет с кукушенком, который собирает галочки об участии в проектах?
#59 by Shutov
Нужно чтобы стажер понял, что есть нюансы при выгрузке реквизитов сложных типов. Например, что у справочников бывают Владельцы и их тоже нужно правильно выгружать и пр. Да, ты реально прав. К спецу ставят перспективного стажера, который уже проверено - научился основам 1С и готов быстро получать новые знания и развиваться самостоятельно, с достаточно минимальным вмешательством ведущего специалиста или руководителя проекта.
#60 by Immortal
жираф большой, ему видней..
#61 by МастерВопросов
+1 "простые приемы"- самый короткий путь узнать "а как это делается в 1С".
#62 by AlexNew
Какую лит-ру, а предметную область куда? Конфигуряторы...
#63 by AndreyFAN
Шутов, тебе +! из Молдавии :-) в Пятницу!
#64 by Shutov
Спасибо! :)
#65 by Nikitvol
У тебя 4 часа ночи, а ты не спишь! :)
#66 by kuzma7126
Делаю аналогичное задание. Просьба сильно не пинать) как я понял нужно это сделать без плана обмена Проблема в следущем: &НаКлиенте выдает ошибку {Форма.ПерегрузкаДокумента.Форма(38,28)}: Процедура не может возвращать значение    запись.Закрыть(пвИмяФайла)<<?>>; (Проверка: Сервер) {Форма.ПерегрузкаДокумента.Форма(38,28)}: Процедура не может возвращать значение    запись.Закрыть(пвИмяФайла)<<?>>; (Проверка: Тонкий клиент)
#67 by Nikitvol
тоже в Сиринт устраиваешься?
#68 by NcSteel
Код один а ошибка из другой оперы ? приведи в соответствие запись.Закрыть(пвИмяФайла) <> запись.Закрыть
#69 by kuzma7126
спасибо, разобрался. Nikitvol, ага
#70 by Nikitvol
забавно :) Я так вижу ты с 1С давно уже знаком?
#71 by kuzma7126
нет. только начал. 4 дня изучаю
#72 by Nikitvol
И как? Близок к завершению задания? Тебе так же, 2 задания дали (по бухгалтерии и 1с)?
#73 by kuzma7126
да. первое сделал.отправил. Второе в процессе, но конец еще не близок (
#74 by Nikitvol
Какой объём по первому заданию получился? Ответ не прислали никакой?
#75 by kuzma7126
Мб личку будем писать? хотя... её здесь нет)
#76 by Nikitvol
да, надо бы в личку :) пиши мне на почту, она у меня не скрыта должна быть. Или другой вариант предложи :)
#77 by kuzma7126
проверь почту
#78 by Nikitvol
WTF!! Дибильная почта, глючи, ниче не пришло :(
#79 by kuzma7126
стучи в аську 4девять3 4четыре4 66три
#80 by Nikitvol
Щас погоди. скачаю, установлю, зарегюсь :)
#81 by Nikitvol
чето не могу я тебя найти :(
#82 by kuzma7126
скажи свой номер. сам тебя найду
#83 by Nikitvol
да вот как раз с номером я и запуталси :( почта заканала!
#84 by ILM
Круто, но чоткие пацаны, используют иногда и хранилище значений ))) Получил объект, положил в хранилище и записал. А ещё можно и несколько строк в ТЗ сделать, а потом всю её в хранилище и в файл. Тогда и никаких XML не нужно)))
#85 by jcage
Учись, студент: КонецПроцедуры
#86 by Nikitvol
спасибо конечно, но у нас в задании написано: 4.    При написании обработки не использовать функции «ЗначениеИзСтроки» и «ЗначениеВСтроку». Это условие дается для взятия формата выгрузки и загрузки под свой контроль. 5.    Не использовать функцию «Универсальные идентификаторы». Вот еслиб мастер класс "Учись студент" без этих функций показали...  :)
#87 by jcage
4.    При написании обработки не использовать функции «ЗначениеИзСтроки» и «ЗначениеВСтроку». Это условие дается для взятия формата выгрузки и загрузки под свой контроль. а где я использовал эти функции? Я использовал "ЗначениеВФайл" - это другое..
#88 by Nikitvol
да...   но они так похожи :)
#89 by Nikitvol
А как на счет вот этого пункта: 3.    При написании обработки необходимо использовать элемент языка «Метаданные. …». Это делается для универсализации программного кода.
#90 by Nikitvol
+ И этого: 2.    По кнопке «Выгрузить» информация, содержащая в выбранном документе, выгружается в указанный файл. Информация должна быть исчерпывающей, то есть выгружаться должна такая информация, чтобы при нажатии кнопки «Загрузить» в базе создавалась бы копия исходного документа (за исключением номера, так как номера документов в системе уникальные).
#91 by jcage
КонецПроцедуры Все условия соблюдены.
#92 by Nikitvol
т.е. и загрузится с новым номером? :)
#93 by Nikitvol
Спасибо конечно. Возьму на заметку. Только вот эта фраза: "Информация должна быть исчерпывающей, то есть выгружаться должна такая информация..." Звучит так, как будто нужно перебирать все элементы и записывать те которые нужно.
#94 by jcage
Через СериализаторXDTO сделай. Пример в ветке был.
#95 by Nikitvol
в ветке и нельзя говарили...
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С