Как заполнить список списком всех ДОКУМЕНТОВ в конфигурации? #90067


#0 by Алексей Шабанов
Подаскажите пожалуйста! Как можно заполнить элемент формы "списокзначений" всеми имеющимися ДОКУМЕНТАМИ в конфигурации, добавив для каждого в список его номер и дату? Заранее благодарен.
#1 by колодина
через метаданные...
#2 by 427
"номер и дату"... Похоже, ему надо реальные доки...
#3 by mrist
а универсальный журнал документов чем не устраивает? может еще какие данные нужны, а то для списка значений маловато колонок будет
#4 by колодина
ну и реальные может... достать из метаданных вид документа, а потом выборку сделать документов этого вида...  по-моему такой вопрос уже возникал, поищите.
#5 by Алексей Шабанов
а как через метаданные? мне как раз через них и надо, но это только для 7.7? в 7.7 можно вот так, это пример из книги: в 8.0 такой синтаксис не проходит! как быть? я новичок в это деле и мне нужно всё до мелочей объяснить. идеалогию в 7.7 я вроде понял, в новой 8.0 как-то всё иначе обстоит и документации никакой нет. подскажите пожалуйста, это срочно. А также что такое "Универсальный журнал документов"? где он и как мне его использовать для своей задачи, чтобы его загнать в списокзначений на форме?
#6 by mrist
в типовой УТ 10.2.3.7 Обработка.УниверсальныйЖурналДокументов может до своей задачи еще книги почитать?
#7 by Алексей Шабанов
Товарищи! Идеи это хорошо, но вы может понимаете сразу как это написать, а я только понимаю! :) Это срочно очень надо! Мне задание сдать надо и на этом я подвис.
#8 by колодина
так и посмотрите в типовой... вам же подсказывают.
#9 by 427
В 8 просто другой синтаксис... Интересно, в какой книге приведен пример из ?
#10 by Алексей Шабанов
А ЗАДАНИЕ ТАКОГО ВИДА: 1. Необходимо с помощью программных средст языка 1С написать обработку "Перегрузка документа". В верхнем окне указывается информация(наименование и номер) произвольного документа(например Расчетный Кассовый Ордер, или Расходная Накладная). Пользователь должен иметь возможность выбрать произвольный документ конфигурации. В нижнем окне имя файла, в который будет производиться выгрузка. Каждое окно имеет кнопку выбора, рядом с нижним окном есть кнока выбора, рядом с нижним окном есть кнопка "просмотр", с помощью которой можно открыть для просмотра выбранный файл. 2. По кнопке "выгрузить" информация, содержащаяся в выбранном документе, выгружается в указанный файл. Информация должна быть исчерпывающей, то есть выгружаться должна такая информация, чтобы при нажатии кнопки "Загрузить" в базе создавалась бы копия исходного документа(за исключением номера, т.к. номер документов в системе уникальные). 3. При написании обработки необходимо использовать элемент языка "Метаданные. ..." Это делается для универсализации программного текста. 4. При написании обработки не использовать функции "ЗначениеИзСтроки" и "ЗначениеВСтроку". Это условие дается для взятие формата выгрузки и зазгрузки под свой контроль 5. Работу проводить в конфигурации "Торговля и склад", релиз 7.70.879 демо-версия.(НО МНЕ НУЖНО СДЕЛАТЬ ЭТО В 1С:8.0 Управление производственным предприятие). Это для полноты того что мне нужно сделать и что я спрашиваю у вас. Подскажите как это реализовать!
#11 by Алексей Шабанов
Пример из книги "1С:Предприятие Версия 7.7 Описание встроенного языка ч.2", стр. 896 из стандартного комплекта поставки 1С
#12 by колодина
так вот вам и подсказывают как сделать... посмотрите в типовой как получить список всех документов, а потом из выгружайте. а вы какую помощь хотите?
#13 by Алексей Шабанов
Я хочу получить помощь как этот список документов вытащить и как это написать программно, синтаксис! Остальное я всё пока представляю. И ещё какой синтаксис нужен для выгрузки документа, сохранения всех его полей, как к ним обращаться.
#14 by колодина
то есть вы хотите, чтобы вам тут полностью код обработки написали?
#15 by Алексей Шабанов
А это разве сложно для действительно знающего человека? :) Да мне не надо полностью, хотя б кусочек, и на том спасибо!
#16 by mrist
консультантом в ЦКП? или студенческая олимпиада?
#17 by колодина
ну вот например выбор операций по всем документам:
#18 by Алексей Шабанов
Эх! Всё не то! Пример некудышный, я даже задание привёл выше, чтобы понятнее было что мне нужно. Мне совсем не нужны ни движения, ни операции. Список названий всех доков надо в спискезначений формы
#19 by колодина
я вам как пример привела... вы же говорили - хоть кусочек... внутри цикла вы получаете Документ, а потом делайте с ним что хотите...
#20 by Лихо
По-моему, автору всё-таки нужен код целиком.
#21 by колодина
так помогите человеку - напишите задание, ведь не даром он полностью текст привел. и воздастся вам....
#22 by Лихо
А насчет воздастся - можно поподробнее? Кстати, автор этот аспект тоже не осветил.
#23 by колодина
я это не в материальном смысле - воздастся... просто помогите - безмозмездно... и человек задание сделает... наверное на хорошую работу устроится... с "достойной" зарплатой.
#24 by Лихо
Аааа. Я-то сразу про деньги подумл. Мелочный я какой-то.
#25 by колодина
меркантильный... а сейчас между прочим - великий пост, надо хорошие дела делать... вот тоже думаю - может сейчас взять да и написать для человека обработку... потом зачтется...
#26 by Лихо
Делать хорошие дела ... в расчете на то, что потом зачтется - не меркантильность?
#27 by колодина
действительно... мне стыдно... значит не буду писать...
#28 by Artemius
Насколько понял - нужно следующее.... Пишу на 7,7, ибо не знаю, как на 8,0...
#29 by koord
На Delphi ему что-ли написать
#30 by колодина
да, длл-ку... хотя автор уже все высказал в и похоже ушел...
#31 by Лихо
И какой же народ непонятливый! Автор написал, что именно ему надо, а никто и не почесался. Нечуткие вы!
#32 by колодина
так сам же меня отговорил...
#33 by Алексей Шабанов
Artemius, ты голова!!! СПАСИБО! Всё работает! Как надо! Ещё у мадам Колодиной проверю... Всем спасибо! Вот так надо работать! :)
#34 by Алексей Шабанов
Теперь у меня в списке предложенном Artemius-ом находятся все документы в 1с 7.7. Необходимо его обработать. Как можно получить ссылку на документ который мы выбрали чтобы начать его выгрузку или здесь нужно приводить к типам? Если да, то каким оператором? В 7.7 есть процедура "ВыгрузитьТабличнуюЧасть" можно ли ей воспользоваться для выгрузки документа в файл и добавить в этот же файл выгрузки ещё дополнительные атрибуты ДОКУМЕНТа, как то ДатаДок, реквизиты и т.д.?
#35 by Лихо
Я отговорил??? Я только спросил, не меркантильный ли ты поступок совершаешь. То, что это плохо - я не говорил. Кстати, а что автор у тебя проверять будет ? Ты ему что-то на проверку сдавала? Заметила - автор новое задание выложил. Будешь его делать?
#36 by 427
фздец... Что начнется, когда дело до загрузки дойдет....
#37 by mr_white_devil
Алексей Шабанов от Artemius (у меня новое имя... пароль забыл... 8-)))) С выгрузкой - вариантов много. Но я делал так: создавал две таблицы: для шапок и для таб. частей. Связывал их по ключу ДатаДок + НомерДок. Дело геморное, сразу говорю. Чем больше видов документов ты хочешь иметь выгружать, тем сложнее. Если чего - советом помогу. Не вопрос. Можешь писать на мыло: mr_white_devil@inbox.ru или аськой: 208844509
#38 by mr_white_devil
Чтоб иметь ссілку на выбранный документ пишем чуть-чуть иначе: ... ..... Теперь чтоб узнать какой документ выбрали - пишем так: ....  Док = СписЗначений.ПолучитьЗначение(СписЗначений.ТекущаяСтрока); .... И вот с этим Док и творим свои черные дела... 8-)
#39 by Всем
спать
#40 by Алексей Шабанов
Mr White Devil(Artemius), большое тебе человеческое спасибо! Всё отлично работает. Мне осталось выгрузить теперь табличную часть, делаю я это встроенной процедурой "ВыгрузитьТабличнуюЧасть" для Документа, для этого сформировав список значений, и загнав туда аттрибуты документа, как то дата его, операция, номер строки... чтобы сохранить его в файл как он полностью есть. Только вот: не работает должным образом когда я пытаюсь его добавить в СписПолей.ДобавитьЗначение(Док.НомерСтроки); //СписПолей объект типа СписокЗначений добавляется в список только "Таблица значений". Можно это как-то привести к нужно типу и обязательно ли пользоваться ЗначениеВСтрокуВнутр(стр) для этого? Заранее благодарен!
#41 by колодина
будем со стороны наблюдать за обсуждением....
#42 by 427
шоу продолжается...
#43 by Лихо
А как же!
#44 by mr_white_devil
Так у тебя не выйдет. При вызове метода Док.ВыгрузитьТабличнуюЧасть(Стр) у тебя выгружается вся табличная часть махом. А при обращении к члену Док.НомерСтроки ты получаешь номер ТЕКУЩЕЙ строки документа. А она у тебя при таком раскладе не разу и не спозиционирована. Попробуй так: Док.ВыгрузитьТабличнуюЧасть(Стр); КонецЦикла; Но убей не пойму - нафига ты собираешь номера строк документов в списке?! 8-)
#45 by mr_white_devil
Господа! Безусловно - Вы умны, опытны, у Вас годы опыта за спиной. Вам повезло. Возможно, что Вам так же повезло при начале изучения 1С. И мне повезло - был человек, которого можно было поспрашивать. А многим моим знакомым так не повезло. Поэтому, если Вам не интерестно отвечать на вопросы - не отвечайте. Но и выссказывания типа "шоу продолжается" мне кажутся слегка неуместными.
#46 by колодина
так уже советовали... но примерно с перестала понимать что нужно... начиналось вроде с получения списка всех документов, а потом какая-то выгрузка возникла.
#47 by mr_white_devil
Алексей Шабанов Я перечитал твое задание - тебе все нужно сделать несколько иначе. На форме обработки должен быть список со всеми видами (!) документов, а не самими документами. Далее когда пользователь выбирает конкретный вид документа он нажимаеть кнопичку, и у него открывается журнал документов выбранного вида, где уже юзверь указывает конкретно документ, который будет выгружаться. По условиям задачи ЗначениеВСтроку и ЗначениеИзСтроки использовать нельзя - все нужно делать через метаданные. Вот так заполняется список видов документов:
#48 by mr_white_devil
Так узнаем, какой вид документа выбрали: СписВидовДокументов.ПолучитьЗначение(СписВидовДокументов.ТекущаяСтрока) А так - получаем информацию о реквизитах табличной части:    Для Ин = 1 По Метаданные.Документ(СписВидовДокументов.ПолучитьЗначение(СписВидовДокументов.ТекущаяСтрока)).РеквизитТабличнойЧасти Цикл
#49 by Алексей Шабанов
Mr White Devil, тот вариант для списка что ты написал был как раз самым нужным, по заданию. По типам мне не надо! А ты случайно с 8-кой не знаком? Мне надо её именно на ней делать, то есть переписать с 7.7 на 8.0.
#50 by 121
С самого начала было тружно сказать, что это в 8.0 нужно?
#51 by колодина
еще раз обращаю ваше внимание на - используйте этот синтаксис и внутри цикла делайте что хотите с документом.
#52 by Алексей Шабанов
С самого начала и сказал, что в 8-ке. И из контекста вначале видно, что спрашивал как это в 7.7, так как в 8-ке иначе. И в теме была указана галочка напротив "v8". Как теперь это дело разрулить в 8-ке? Они ругаются, не хотят так принимать. Я дело в том что на 1С программирую всего 2-ой день, в 7.7 ещё как-то разбираюсь. А вот с типами и иерархией объектов я вообще пока не представляю и преобразованием типов тоже. Вот то ли в Delphi, C, я б там даже и не парился, а здесь всё примитивно, зато так не запутанно.
#53 by Иде я
Так это жи типичная загрузка выгрузка между базами тебе ешшо нужно выгружить все справочники которые участвуют в документах и тп. иначе назад ты не загрузишь... геммор редкостный однако хотя и не шибко сложный.
#54 by колодина
- понятно тогда...
#55 by Алексей Шабанов
Насколько я убедился, дело действительно только изначально кажется не сложным, а потом. Ну в Delphi я б это дело замутил за пару часов, а тут за два дня практических навыков и столько же дней изучения книг далеко не уйдешь...
#56 by Алексей Шабанов
А у меня вопрос, его так и обошли. А можно так сделать в 8-ке, чтобы не нарушать ссылочную целостность и сделать это с помощью метода "ВыгрузитьТабличнуюЧасть"?
#56 by колодина
а вы думали за два дня разобраться ? я думаю, что и на делфи не так все просто... чтобы все корректно сделать и правильно, все равно время нужно.
#58 by Алексей Шабанов
А у меня вопрос, его так и обошли. А можно так сделать в 8-ке, чтобы не нарушать ссылочную целостность и сделать это с помощью метода "ВыгрузитьТабличнуюЧасть"?
#59 by колодина
а при чем здесь ссылочная целостность? вам бы лучше позаниматься, а потом - вопросы спрашивать...
#60 by aka AMIGO
??? пишешь в сабже "всех ДОКУМЕНТОВ в конфигурации" а по ходу дела тебе оказывается нужен список "всех ДОКУМЕНТОВ в БазеДанных" это-же разные понятия.. :((
#61 by Алексей Шабанов
Колодина, Вы в давали алгоритм для каждого Документ из Метаданные.Документы Цикл а он чего-то не фурычит... у меня на форме список с именем "ВсеДокументыСписок".  А синтаксический анализтор выдает, что он не понимает что такое "Движения" и процедуру "ВыборДвижений" не знает. Как быть? Не подскажете также где есть реальные доки по 8-ке?
#62 by колодина
рекомендую радченко, очень хорошая книга, я ее читала перед сном в течение недели и у меня после этого значительно просветелело в голове. хотя ведь вы хотите за пару дней все освоить... я к сожалению ни одну систему программирования не осваивала так быстро, так что вряд ли могу что-то вам советовать.
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

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