|   |   | 
| 
 | v7: Перекрестные ссылки и удаление документов - нужна помощь. | ☑ | ||
|---|---|---|---|---|
| 0
    
        bigdenis22 10.09.15✎ 10:06 | 
        Есть Док ПрВыход (регистрируется выход продукции из производства), есть "подчиненный" док СтрокаПрВыход - им двигаются регистры.
 Первый док не двигает регистры, но в нем заполняются и хранятся некоторые параметры выходящей продукции, в том числе имеются метка времени выхода и ссылка на СтрокаПрВыход (для оперативной работы с ним). Так вот суть: в родительском документе есть ссылки на подчиненные (каждой строке подчинен док), и в подчиненном есть ссылка на родительский документ. - ИТОГ - все доки помечены на удаление, но не удаляются, пеняя на ссылки друг на друга... удаление без контроля ссылок - считаю не кошерно. может кто может предложить варианты ? | |||
| 1
    
        ДенисЧ 10.09.15✎ 10:07 | 
        вообще-то штатная удалялка такие ситуации обрабатывает     | |||
| 2
    
        mikecool 10.09.15✎ 10:07 | 
        изменить создание документов для односторонней связи
 очистить ссылки в одном из видов и удалить | |||
| 3
    
        VladZ 10.09.15✎ 10:08 | 
        Отличный вариант: разработать обработку удаления этих документов.     | |||
| 4
    
        bigdenis22 10.09.15✎ 10:28 | 
        вот и мне не понятно, почему штатная удалялка не обрабатывает эту ситуацию ???
 обработку-то наверно и придется написать, но сначала хочется разобраться в ситуации... просто последний месяц недосыпаю (в связи с полной перепиской базы) - голова квадратная, вот и думаю, что что-то упустил... | |||
| 5
    
        bigdenis22 10.09.15✎ 10:32 | 
        (2) к сожалению, ситуация такова, что ПриРедактированииСтроки() в родительском доке - необходима прямая ссылка на СтрокаПрВыход, подчиненный этой строке.
 т.е. ваше замечание - логично, но в моей ситуации - не применимо. | |||
| 6
    
        Ёпрст гуру 10.09.15✎ 10:33 | 
        (4) штатное удаление помеченных всё удаляет     | |||
| 7
    
        bigdenis22 10.09.15✎ 10:39 | 
        (6) писал бы я сюда, еслиб так было :(
 у доков существуют ссылки ТОЛЬКО друг на друга... могу скрины показать - если кто подскажет как их здесь выложить. | |||
| 8
    
        Масянька 10.09.15✎ 10:42 | 
        (7) На файлопомойку, сюда - ссылки.     | |||
| 9
    
        bigdenis22 10.09.15✎ 10:54 | ||||
| 10
    
        Serg_1960 10.09.15✎ 10:55 | 
        (6) "Ты не прав"(РАУЗ, "Тестирования и исправления ключей аналитики").     | |||
| 11
    
        bigdenis22 10.09.15✎ 11:21 | 
        а если делать удаление через обработку, то наверно обязательно надо описать удаление ссылок ?     | |||
| 12
    
        Масянька 10.09.15✎ 11:30 | 
        (11) Нельзя так делать (по поводу (0)). Нельзя :(     | |||
| 13
    
        bigdenis22 10.09.15✎ 11:38 | 
        (12) я прошу прощения, но можно подробней ?     | |||
| 14
    
        Масянька 10.09.15✎ 11:40 | 
        (13) Подробнее - открывай и читай про проектирование реляционных баз данных.     | |||
| 15
    
        bigdenis22 10.09.15✎ 11:47 | 
        (14) ...
 послать можно было и проще. | |||
| 16
    
        Масянька 10.09.15✎ 11:52 | 
        (15) Это не "посыл", ни в коем случае...
 Просто много чего объяснять/рассказывать нужно. Да, ты и сам понимаешь (теперь), что нельзя :( | |||
| 17
    
        bigdenis22 10.09.15✎ 12:07 | 
        родилась мысль, отказаться от ссылки в родительском документе, заменив её числовым значением номера подчиненного дока, с последующим поиском по номеру среди подчиненных. 
 (16) очень устал за последний месяц и туго соображаю, вот и хотелось чтоб кто-нибудь разъяснил факт : что перекрестных ссылок допускать нельзя (в 7.7 - так точно). | |||
| 18
    
        Масянька 10.09.15✎ 12:18 | 
        (17) Родилась глупая мысль...
 Отдохни. Зачем? Первый док-т - основание для второго (родительский - подчиненный). А вообще - расскажи смысл сего действа (2 док-ов). | |||
| 19
    
        bigdenis22 10.09.15✎ 13:02 | 
        (18) раньше был один док ПрВыход, заполняется в течении дня, в нем строка - конкретный "объект" выходящий из производства, в строке регистрируются параметры выходящего объекта (время выхода, температура, влажность, вес и т.п.) часть этих параметров к регистрам отношения - не имеет.
 Движения по регистрам делались разумеется этим доком. (движения выражаются в перемещении партии частями из склада цех в склад ГП с пересчетом себестоимости) При этом получили коллизию порядка движений регистра: так как док заполняется в течении дня, то он может иметь позицию ТОЛЬКО или на начало или на конец заполнения(и движения соответственно тоже)., в первом случае выходит продукция кот. ещё не начала делаться, а во втором - продается та, кот. ещё не вышла из производства. Поэтому было решено перенести движения в связанный документ СтрокаПрВыход, и проводить его с временем выхода... А для оперативного программного редактирования подчиненного документа из родительского - сделал прямую ссылку на него. | |||
| 20
    
        Масянька 10.09.15✎ 13:05 | 
        (19) А почему один док-т в течении дня? Нельзя делать несколько?     | |||
| 21
    
        bigdenis22 10.09.15✎ 13:23 | 
        (20) ... сложная история...
 во первых :) к первому документу уже привыкли и так им удобно работать. 2) так удобней заполнять и оперативно сравнивать параметры. иначе пришлось бы делать слишком насыщенный (параметрами) журнал документов(СтрокаПрВыход). | |||
| 22
    
        Масянька 10.09.15✎ 13:26 | 
        (21) Мало, что поняла...
 Почему нельзя делать несколько док-ов за день? | |||
| 23
    
        bigdenis22 10.09.15✎ 13:38 | 
        по сути док ПрВыход это смена весовщика/приемщика, участков 3, в каждом доке прибл. от 100 до 200 строк.
 каждая строка должна проводится со своей временной позицией. т.е. иной выход каждому весовщику вбивать 100-200 доков в день... иногда надо пройти проредактировать параметр по нескольким последним объектам - рыться в обширном журнале - не удобно... делать накрученый журнал с множественными отборами - мне показалось менее интересным чем связку документов... тем более у меня есть вторая подобная ситуация, но там двигают регистры и родительский и подчиненные доки... | |||
| 24
    
        Ёпрст гуру 10.09.15✎ 13:46 | 
        (9) и ?
 если оба документа помечены на удаление - всё удаляется. Если один из них нет - то ясен пень выдает тебе ссылки в штатной удалялке. | |||
| 25
    
        Масянька 10.09.15✎ 13:46 | 
        (23) Серьезно...
 Навскидку (хотя, нужно основательно подумать): ПрВыход - документ, не делает движений, хранит информацию; СтрПрВыход - вводится на основании строки ПрВыход, делает движения. СтрПрВыход - именно на основании, зверь к нему доступа не имеет - все программно. Хотя, я бы еще подумала... | |||
| 26
    
        bigdenis22 10.09.15✎ 14:05 | 
        (24) в родительском поменял ссылку на номер дока - все удалилось...
 повторюсь: я тоже считал, что должно работать... но маемо те що маемо... (25) ну как-то так и задумано :) | |||
| 27
    
        bigdenis22 10.09.15✎ 14:30 | 
        вобчем Ёпрст скорее всего прав...
 нашел, что некорректно отработало удаление партий, и на три дока СтрокаПрВыход остались ссылки в партиях, и удаление заклинилось(из-за перекрестных ссылок)... но Масанька натолкнула на верную мысль, что перекрестные ссылки - зло... (благодаря чему и была найдена ошибка). - 1 док ПрВыход и 230 Строк - поди найди где в этом количестве что зависло... | |||
| 28
    
        Масянька 10.09.15✎ 14:34 | 
        (27) Я бы все-таки избавилась от данной связки... 
 Нельзя автоматизировать ПрВыход? Если не 2-ух кнопок (создать-сохранить), то хотя бы до минимума (создать, ввести пару данных, сохранить). Чтобы все-таки ПрВыход делал движения, а не создал вагон и маленькую тележку подчиненных док-ов. Хотя, хозяин - барин. | |||
| 29
    
        bigdenis22 10.09.15✎ 16:25 | 
        (28)  я в (19) описал, почему пришлось перенести движения в СтрокаПрВыход, хотя я сам не в восторге от данного решения, но надож как-то разруливать ситуацию :)
 можно подвести итог: 1) почему не сработала штатная удалялка? - найдены не удаленные партии, кот. на давали удалятся всей цепочке. 2) перекрестные (кольцевые) ссылки в 1с - ЗЛО... без них не возникает длинных цепочек ВЗАИМОсвязанных объектов. | |||
| 30
    
        HawkEye 10.09.15✎ 17:16 | 
        чё тут? автор, штатная все правильно работает...     | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |