|
v7: как получить документ основание | ☑ | ||
---|---|---|---|---|
0
yalanton
19.04.15
✎
15:45
|
Добрый день в 1с 7.7. Все просто есть документ1(акт) На осноании документа1 сделан документ2(счет) через ввод на основании Вопрос как позиционируясь в цикле на документ2(на счет) получит документ1(акт) на основнии которого он был создан . Наоборот понятно через ВыбратьПодчиненныеДокументы , а пото как основание получить . спасибо
|
|||
1
Euguln
19.04.15
✎
15:49
|
Реквизит ДокументОснование. Не?
|
|||
2
yalanton
19.04.15
✎
15:49
|
т.е стоя на документ2(счет) программно надо получить документ1 (акт)и из него инфу
|
|||
3
yalanton
19.04.15
✎
15:53
|
нету такого реквизита ДокументОснование
|
|||
4
yalanton
19.04.15
✎
15:57
|
вот у справочника есть атрибуты владелец ,родитель а как у дока документоснование получить
|
|||
5
kobzon2
19.04.15
✎
16:08
|
Процедура ЗаполнитьПоДокументуОснованию(ДокОснование)
Если ДокОснование.Выбран() = 0 Тогда Возврат; КонецЕсли; Если ДокОснование.Вид() = "акт" Тогда БлаБлаБла КонецЕсли; КонецПроцедуры |
|||
6
yalanton
19.04.15
✎
16:18
|
не то kobzon2
Счет=Создатьобъект("Документ.Счет"); Счет.ВыбратьДокументы(); Пока Счет.ПолучитьДокумент()>0 Цикл //вот тут как со счета попасть в документ его основавший т.а. акт Примерно Акт= Счет.ДокументОсновние но так не работает в 7.7 КонецЦикла |
|||
7
kobzon2
19.04.15
✎
16:28
|
(6) С какого это не работает?
|
|||
8
AntiBuh
19.04.15
✎
16:34
|
(6) потому что не Документ, а Док
|
|||
9
yalanton
19.04.15
✎
16:35
|
Счет.ДокументОсновние - так не работает уж не знаю с какого
|
|||
10
Dmitry1c
19.04.15
✎
16:36
|
тест
|
|||
11
kobzon2
19.04.15
✎
16:36
|
(8) "потому что не Документ, а Док" - не правда!
(6) (8) - отладчик возьмите в руки. |
|||
12
yalanton
19.04.15
✎
16:39
|
мы про 7-ку хоть говорим надеюсь
|
|||
13
AntiBuh
19.04.15
✎
16:41
|
(11) сравни своё (5) и его (6)
|
|||
14
kobzon2
19.04.15
✎
16:41
|
(12) А я 8-ку и не знаю.
|
|||
15
AntiBuh
19.04.15
✎
16:42
|
+(13) если ДокОснование.Выбран(), а Счет.ДокументОсновние - нет, без отладчика всё ясно
|
|||
16
kobzon2
19.04.15
✎
16:42
|
(13) Я ему пример показал процедуры заполнения.
Код у него рабочий. Если основание есть, то оно найдется. Если нет будет просто: Акт= Счет.ДокументОсновние = |
|||
17
AntiBuh
19.04.15
✎
16:49
|
а вообще б ТС показал бы что именно "не работает"
|
|||
18
kobzon2
19.04.15
✎
16:51
|
Вот такую обработку сделай и запусти:
//******************************************* Процедура Сформировать() Док = СоздатьОбъект("Документ.Счет"); Док.ВыбратьДокументы(); Пока Док.ПолучитьДокумент() = 1 Цикл Докосн = Док.ДокументОснование; Сообщить(Докосн.Вид()); Сообщить(Докосн.НомерДок); КонецЦикла; КонецПроцедуры //******************************************* |
|||
19
kobzon2
19.04.15
✎
16:51
|
(17) +1
|
|||
20
yalanton
19.04.15
✎
16:56
|
Док = СоздатьОбъект("Документ.НалоговаяНакладная");
Док.ВыбратьДокументы(д1,д2); Пока Док.ПолучитьДокумент() = 1 Цикл Докосн = Док.ДокументОснование; Сообщить(Докосн.Вид()); Сообщить(Докосн.НомерДок); КонецЦикла; вот сделал только вместо счета НалоговаяНакладная Ошибка Докосн = Док.ДокументОснование; {G:\1C\К\777.ERT(132)}: Поле агрегатного объекта не обнаружено (ДокументОснование) |
|||
21
ДенисЧ
19.04.15
✎
16:58
|
Мда... Вместо того, чтобы угадывать - не проще в конфигураторе посмотреть, как (если есть) называется реквизит?
|
|||
22
AntiBuh
19.04.15
✎
17:01
|
(20) вот не поленился и типовую открыл
ДокОснование |
|||
23
kobzon2
19.04.15
✎
17:02
|
А у нас хоть типовая?))
|
|||
24
Хряк
19.04.15
✎
17:04
|
ввод документа на основании не означает, что он обязательно сохраниться в реквизите
|
|||
25
Абыр
19.04.15
✎
17:09
|
(0) Документ-основание можно получить, если:
- в документе предусмотрен реквизит для хранения ссылки на документ-основание (или предусмотрен общий реквизит); - этот реквизит был корректно заполнен при вводе на основании. |
|||
26
yalanton
19.04.15
✎
17:10
|
вот в этом и проблема Хряк что есть рекизит РодительскийДокумент но там не всегда есть информация - как служебной командой узнать документ основание ?
|
|||
27
yalanton
19.04.15
✎
17:12
|
Абыр реквизит есть но не всегда корректно заполнен при вводе на основании. - что делать ? т.е у счета есть рекв РодительскийДокумент куда д.б. записан акт по идеи но не всегда там есть инфа
|
|||
28
ДенисЧ
19.04.15
✎
17:14
|
(27) нет инфы - нет документа
|
|||
29
yalanton
19.04.15
✎
17:15
|
плохо почему есть команда ВыбратьПодчиненныеДокументы а наоборот например выбрать документоснование нет такой команды
|
|||
30
Абыр
19.04.15
✎
17:17
|
(26) если имеются навыки, то можно прямым запросом. индекс по childid в 1s_crdoc есть, искать будет быстро
|
|||
31
yalanton
19.04.15
✎
17:18
|
нет таких навыков если только напишешь как :)
|
|||
32
yalanton
19.04.15
✎
17:20
|
а может команда есть какая нибудь - ?
|
|||
33
yalanton
19.04.15
✎
17:31
|
не пойму все равно если я стоя на документе основание могу выбрать подчиненные ВыбратьПодчиненныеДокументы т.е стоя на акте могу выбрать счета которые ввел на основании этого акта
значит есть связь значи я должен как то смочь наоборот стоя на счет выбрать его документ основание акт даже если в счете не заполнен рекизит для хранения ссылки на документ основание |
|||
34
Хряк
19.04.15
✎
17:32
|
если реквизит пустой, - ничего ты не узнаешь
|
|||
35
yalanton
19.04.15
✎
17:34
|
ВыбратьПодчиненныеДокументы но при пустом реквизите команда же работает
|
|||
36
Креатив
19.04.15
✎
17:39
|
Подчинённые документы - это те, у которых в каком-либо реквизите есть ссылка на данный документ.
|
|||
37
yalanton
19.04.15
✎
17:39
|
как же тогда обратная связь устроена от дока основания к его подчиненным связь же работает даже если у подчинных доков не заполнен рекизит для хранения ссылки на документ основание
|
|||
38
yalanton
19.04.15
✎
17:42
|
У меня есть рекизит в подчиненном доке РодительскийДокумент он иногда пуст но даже с пустым значением реквизита они попадают в список подчиненных т.е. связь в одну сторону есть а в другую нет
|
|||
39
Креатив
19.04.15
✎
17:43
|
(37)Ссылка может быть в ЛЮБОМ реквизите. Возможно даже табличной части, но тут надо проверять.
|
|||
40
ДенисЧ
19.04.15
✎
17:47
|
(39) Не надо проверять...
|
|||
41
yalanton
19.04.15
✎
17:49
|
нету других реквизитов
|
|||
42
yalanton
19.04.15
✎
17:49
|
ДенисЧ а как надо ?
|
|||
43
yalanton
19.04.15
✎
18:00
|
Креатив Спасибо ты прав был другой рекизит просто "Заказ"
Вообщем результат у подчиненног дока должен быть реквизит и он должен быть заполнен только тогда есть связь между подчиненным доком и доком основанием |
|||
44
yalanton
19.04.15
✎
18:03
|
подскажите еще плиз как мне перебрать проводки конкретного дока в 7.7. на котором стою ?
|
|||
45
Хряк
19.04.15
✎
18:20
|
найти операцию
выбрать проводки |
|||
46
yalanton
19.04.15
✎
18:28
|
А как найти операцию ?
|
|||
47
Хряк
19.04.15
✎
18:32
|
синаксис-помощник потерял?
|
|||
48
GreyK
19.04.15
✎
19:10
|
(47) Не плохо-бы спросить ДенисЧ, больно ловко украли...
Да и продаёт он их, что наводит на мысель :) |
|||
49
ifso
19.04.15
✎
19:40
|
(48) чета сегодня по клюшакм не продает ^^
выходной, не?) |
|||
50
ИсчадиеADO
19.04.15
✎
19:46
|
(30)+ 1с++
|
|||
51
ИсчадиеADO
19.04.15
✎
20:03
|
как пример http://catalog.mista.ru/public/85668/ только нужено поле PARENTVAL
описание таблиц http://www.script-coding.com/v77tables.html я вот так сурово получал http://www.1cpp.ru/docum/icpp/html/ODBC.html |
|||
52
ИсчадиеADO
19.04.15
✎
20:05
|
хм, миста подменяет в адресе ис?
|
|||
53
Сияющий Асинхраль
19.04.15
✎
20:21
|
(29) Огорчу автора ВыбратьПодчиненныеДокументы тоже работает только в том случае, если реквизит типа Документ основание в документе 2 таки предусмотрен, если не предусмотрен выбор работать не будет, ибо без этого реквизита связь между документами существует только в момент ввода на основании, а после записи ее нет :-(
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |