|
1С:Предприятие
:: 1С:Предприятие 8 общая
|
|
| ||
bolobol 30.09.16 - 20:18 | Доброго времени суток!
Итого, вроде бы разобравшись с возможностью запихнуть документ в конец секунды, вдруг выясняется, что этот конец секунды только в пределах этого типа документа! Так как у ссылки документа имеется префикс, который можно видеть если сделать ЗначениеВСтрокуВнутр: Поступление: 303:bdb80025909995f011e5bba490e77305 Списание: 332:8bd10025909995f011e5b9462599600f Корректировка долга: 240:ff540015178177f811e5ba9f0b14cba6 Итого: получается что невозможно сделать корректировку долга внутри одной секунды после документов Поступления и Списания. ХЗрасчётный.Остатки(МоментВремени(Корретировка)) - не отображает остатков! На следующую секунду - остатки имеются! Может, я неправильно ссылку понимаю, и по ЗначениеВСтрокуВнутр "ff540015178177f811e5ba9f0b14cba6" - это совсем не значение, по которому ссылки сортируются? Однако, штатная сортировка при выборке запросом - подтверждает, что ссылка выглядит именно так. Где косяк? | ||
bolobol 1 - 30.09.16 - 20:20 | +
Но ссылка по Регистратор в запросе выдаёт следующую последовательность: 332:8bd10025909995f011e5b9462599600f Списание 303:bdb80025909995f011e5bba490e77305 Поступление
240:ff540015178177f811e5ba9f0b14cba6 Корректировка долга
Т.е. - сортирует с неким трёхзначным префиксом.
Это ж все основы последовательности документов к чертям летят, не? | ||
GedKo 2 - 30.09.16 - 20:28 | (1) а зачем пытаться сделать это в одну секунду? | ||
mehfk 3 - 30.09.16 - 20:29 | "некий трёхзначный префикс" - это ид объекта метаданных. | ||
mehfk 4 - 30.09.16 - 20:31 | Если нужна сквозная сортировка как в 7.7 по DATE_TIME_IDDOC - то переходи на 7.7 :) | ||
Dmitrii 5 - 30.09.16 - 20:35 | (0) Тоже мне новость.
Момент времени = Дата + Ссылка. Однако ссылки упорядочиваются только внутри объектов одного типа. Последовательность ссылок объектов даже одного типа, полученных из разных источников происхождения (разных узлов РИБ) вообще непредсказуема. То, что типовыми методами получит последовательность документов внутри одной секунды невозможно известно давно. А вообще сама постановка задачи - упорядочить внутри одной секунды Поступление - Списание - Корректироку - какой-то маразм. | ||
Fragster 6 - 30.09.16 - 21:11 | (5)+100500 | ||
mistеr 7 - 01.10.16 - 14:05 | |||
hhhh 8 - 01.10.16 - 14:31 | (1) три варианта:
- не делать эти 3 документа в 1 секунду - создать в конфе еще документ Корректировка1, который будет вставать правильно. - переписать проведение корректировки, чтобы она сама располагалась в начале секунды, но остатки брала на коней секунды. | ||
H A D G E H O G s 9 - 01.10.16 - 17:49 | (0) Граница() | ||
vde69 10 - 01.10.16 - 19:11 | (0) восьмерка не имеет штатных механизмов позволяющих оперировать документами внутри одной секунды....
наверно можно пробовать подбирать гуиды для новых и еще не записанных документов сравнивая их моменты что-бы все выстроилось все правильно... (9) не должно работать для автора, граница дает возможность получить остатки на конкретный документ, но в сабже вопрос другой, у него вопрос, что отгрузка по границе встает раньше поступления | ||
H A D G E H O G s 11 - 01.10.16 - 19:16 | (10) "граница дает возможность получить остатки на конкретный документ"
Что за ерунда?
Запрос.УстановитьПараметры("ГраницаОстатков",Новый Граница(Документ.Дата,ВидГраницы.Включая));
Причем тут момент времени? | ||
vde69 12 - 01.10.16 - 19:38 | (11) граница это дата+гуид+флаг, в общем это момент+флаг...
в любом случае ни граница ни момент автору не поможет | ||
KSergey1C 13 - 01.10.16 - 20:16 | (0)> Итого: получается что невозможно сделать корректировку долга внутри одной секунды после документов Поступления и Списания.
А если в дереве матаданных подвинуть документ? | ||
RomanYS 14 - 01.10.16 - 20:24 | (13) не поможет, там тоже УИДы. Ты же не собираешься для таких целей пересоздавать документ | ||
KSergey1C 15 - 01.10.16 - 20:38 | (14)
332:8bd10025909995f011e5b9462599600f Списание 303:bdb80025909995f011e5bba490e77305 Поступление 240:ff540015178177f811e5ba9f0b14cba6 Корректировка долга Пишут, что 332, 303, 240"– это номер таблицы в sql базе или не в sql (для файлового режима) данных например _ReferenceN135 (в другой базе этот номер может быть другой, в разрезе баз они разные)"(С) | ||
Serg_1960 16 - 01.10.16 - 20:41 | Это идентификатор метаданных в конфигурации. "Идентификатор" - потому, что не порядковый номер. И база тут совсем не причём. Ни разу. | ||
H A D G E H O G s 17 - 01.10.16 - 20:44 | Я один не понимаю всей вселенской проблемы автора, которая по моему мнению не стоит и выеденного яйца? | ||
ShAV 18 - 01.10.16 - 20:52 | |||
vde69 19 - 01.10.16 - 20:56 | (17) он хочет делать в 23:59:59 одновременно и поступление и отгрузку и удивляется почему у него момент времени поступления оказался больше чем момент времени реализации... | ||
KSergey1C 20 - 01.10.16 - 20:57 | (14) (16)
Создал конфу и два документа. Забил по паре штук: Документ1 000000001 от 01.10.2016 21:38:30 {"#",f6f3f5f4-918e-4603-86c7-1a4747ff99a8,10:9d9b94de806eef4811e687fddd608b6c} Документ2 000000001 от 01.10.2016 21:38:30 {"#",62e88d1c-afdf-4f68-b883-4047f816483c,11:9d9b94de806eef4811e687fddd608b6e} У первого документа ид 10 у второго 11 Поменял порядок документов в конфе, выгрузил конфигурацию через "Выгрузить конфигурацию в файлы", удалил документы, и загрузил обратно. Документ1 000000001 от 01.10.2016 21:51:17 {"#",f6f3f5f4-918e-4603-86c7-1a4747ff99a8,22:9d9b94de806eef4811e687ffa1f35ff0} Документ2 000000001 от 01.10.2016 21:51:32 {"#",62e88d1c-afdf-4f68-b883-4047f816483c,21:9d9b94de806eef4811e687ffa1f35ff1} У Документа1 - код 22, у документа2 код 21. При желании можно опрелить порядок документов в секунде, но только для тонких извращенцев. | ||
RomanYS 21 - 01.10.16 - 21:06 | (20) "Поменял порядок документов в конфе, выгрузил конфигурацию через "Выгрузить конфигурацию в файлы", удалил документы, и загрузил обратно." это и есть "пересоздать". | ||
KSergey1C 22 - 01.10.16 - 21:09 | (21) В чем проблема? Выгружаешь данные в ХМЛ, пересоздаешь конфу. с документами в нужном тебе порядке, загружаешь данные из ХМЛ.
Конечно с УППшной базой под 20 гигов - я бы такое не стал делать, но с БП 3.0 в 500мб - почему бы и нет. | ||
H A D G E H O G s 23 - 01.10.16 - 21:11 | (19) Ну тоесть, у автора нет проблемы, есть вопрос. Ок. | ||
mistеr 24 - 01.10.16 - 22:30 | (23) Автор отчаянно ищет косяк, понимаешь? Ну хочется ему. Остальной текст для прикрытия, чтоб не забанили. | ||
bolobol 25 - 03.10.16 - 18:21 | (24) Поржал))
Всем спасибо! Понял, что самый простой способ - отодвинуть документы на секунду взад, а затем создавать корректировки. Ибо это уже не будет зависеть от последовательности в метаданных и без изменения штатного поведения корректировки. Однако... - однако. | ||
H A D G E H O G s 26 - 03.10.16 - 18:21 | **facepalm | ||
Cyberhawk 27 - 03.10.16 - 18:34 | Я правильно понял, что автора смущает то, что при подсовывании в запрос границы нет гарантии, что в эту границу попадут документы с той же датой? | ||
Cyberhawk 28 - 03.10.16 - 18:35 | Если да, то почему бы не подсовывть границу + 1 секунда с видом "Исключая" и отбросить ненужные виды документов? | ||
bolobol 29 - 03.10.16 - 18:41 | (28) Так это ж 1С-овцы прописали, мне там не подкорректировать, у них в головах-то) | ||
bolobol 30 - 03.10.16 - 18:48 | (28) Я-то именно так и делал, и вот... был неприятно удивлён, что закрывается корректировками не всё, что я вижу. Я в отчёте вижу а корректировка - не видит. Дорабатывал, передвигал за максимальную ссылку, а оно вононо как - с идентификатором типа документа. Рекламное место пустует | ||
H A D G E H O G s 31 - 03.10.16 - 18:50 | (30) Что конкретно не видит коррективка? | ||
Cyberhawk 32 - 03.10.16 - 18:59 | |||
bolobol 33 - 03.10.16 - 20:02 | |||
H A D G E H O G s 34 - 03.10.16 - 20:14 | (33) Запрос, выполняемый в документе Корректировка, не видит остатки с учетом проведенных (в ту же секунду) ПТУ и Списания? В этом проблема? | ||
bolobol 35 - 03.10.16 - 20:55 | (34) Да. Запрос заполнения. И запросы в проведении. | ||
H A D G E H O G s 36 - 03.10.16 - 21:02 | (35) Запрос.УстановитьПараметры("ГраницаОстатков",Новый Граница(Документ.Дата,ВидГраницы.Включая)); | ||
bolobol 37 - 03.10.16 - 21:09 | (36) Это включая всю дату+время. А в корректировке везде написано: включая всё внутри даты (и времени), но до документа. | ||
H A D G E H O G s 38 - 03.10.16 - 21:13 | (37) Не включая этот документ? | ||
H A D G E H O G s 39 - 03.10.16 - 21:14 | (37) Не включая движения по корректировки? | ||
H A D G E H O G s 40 - 03.10.16 - 21:15 | (37) Или: не включая и движения других документов, проведенных после корректировки? | ||
Fragster 41 - 03.10.16 - 21:25 | (40) ты что! Если подумать и сформулировать, что нужно, всё становится слишком просто | ||
bolobol 42 - 03.10.16 - 21:28 | (40) Да. Собираются итоги на МоментВремени(Корректировка) | ||
H A D G E H O G s 43 - 03.10.16 - 21:30 | Остатки на Запрос.УстановитьПараметры("ГраницаОстатков",Новый Граница(Документ.Дата,ВидГраницы.Исключая)); минус движения, где: Период>=&ДокументДата И Регистратор<=ДокументСсылкаили Период>=&ДокументДата И Регистратор<ДокументСсылка (Тут уж как вам надо) | ||
bolobol 44 - 03.10.16 - 21:35 | (43) Не пойму, как мне это поможет разместить новую корректировку после всех существующих в базе документов в последней секунде квартала? | ||
H A D G E H O G s 45 - 03.10.16 - 21:37 | (44) Никак не поможет, так как у тебя каша в голове. | ||
bolobol 46 - 03.10.16 - 21:40 | (45) Каша в голове, как раз - у вас. | ||
etc 47 - 03.10.16 - 21:52 | Попробуй вместо даты подставить момент времени:
Запрос.УстановитьПараметры("ГраницаОстатков",Новый Граница(Документ.МоментВремени(), ВидГраницы.Исключая)); И вообще сравни моменты времени у документов в эту секунду. У момента времени есть метод Сравнить() | ||
etc 48 - 03.10.16 - 21:54 | Вот только помоему управлять размещением документов по оси времени в этой секунде ты не сможешь. Поэтому смысла нет. | ||
bolobol 49 - 03.10.16 - 23:15 | (47) В Границе тоже этот номер "таблицы/типа данных" присутствует. | ||
Дарлок 50 - 03.10.16 - 23:18 | Можно смотреть вечно на то как горит огонь, течет вода и как 1с-ки фапают на последовательность документов. | ||
bolobol 51 - 03.10.16 - 23:36 | (50) Тогда уж (теперь уж): е*у*ся с последовательностью... | ||
H A D G E H O G s 52 - 03.10.16 - 23:40 | (51) Я решу твою проблему за ммм, 15 минут :-) | ||
H A D G E H O G s 53 - 03.10.16 - 23:45 | Но, как пел великий Оффспринг:
I won't pay, I won't pay ya, no way (now now) Why don't you get a job Say no way, say no way ya, no way (now now) Why don't you get a job | ||
bolobol 54 - 04.10.16 - 10:26 | (53) Чессно говоря, я ничерта не понял:
"Я не заплачу, я не заплачу я, нет пути (сейчас) почему бы тебе не устроиться на работу Сама, ни я, ни
(сейчас) почему бы тебе не устроиться на работу"
Но, думаю, если бы существовало какое-то решение - его бы уже нашёл многоуважаемый All. А так, из надёжных решений - только отодвигать все документы на секунду назад, чтобы вставить корректировку последним документом квартала. | ||
Дарлок 55 - 04.10.16 - 10:29 | (54) решение есть в области методологии учета.
Хотя и техническое можно при желании найти, но нужно четко понимать нафига оно тебе. | ||
Дарлок 56 - 04.10.16 - 10:29 | |||
bolobol 57 - 04.10.16 - 10:50 | (56) А, спасибо! (53) - Толсто! (или тонко)) (55) И что говорит методология учёта в данной ситуации? Сделайте проводки вручную ОперациейБУХ ? Или заполнить операции автомагически по принципу движений Корректировки? Логично, но более "нагружено", нежели отодвинуть все документы на секунду взад в сложившейся ситуации. | ||
Дарлок 58 - 04.10.16 - 11:00 | (57) методологии вообще чхать на последовательность документов, главное остатки на конец отчетного периода, а последовательно это технические заморочки...
как вариант нормально реализованный в 1С это РАУЗ, но можно было сделать и иначе | ||
Cyberhawk 59 - 04.10.16 - 12:00 | Я так понял, автор хочет разместить корректировку после всех документов для того, чтобы при каком-нибудь массовом перепроведении результат не менялся.
Но так не бывает, когда движения документа опираются не на данные этого документа, а на остатки регистра (фактически это означает, что движения документа опираются на данные других документов). | ||
Cyberhawk 60 - 04.10.16 - 12:01 | +(59) Не понимаю, почему бы в процедуре проведения не вызывать процедуру заполнения документа нужным образом и просто не проводить его. Какая потом разница, встал он последним в этой секунде или не встал? Рекламное место пустует | ||
Cyberhawk 61 - 04.10.16 - 12:02 | +(60) Одно из возможных объяснений - бизнес-логика завязана на какой-нибудь алгоритм типа "взять сумму остатка всех регистраторов перед регистратором вида "Корректировка"", но это кажется тупиковым путем (сам себе яму роешь) | ||
bolobol 62 - 04.10.16 - 13:56 | (59) Да не то что массовое перепроведение... Тут массово: открыл документ, посмотрел, какой он заполненный весь и "ОК", закройся... и это не лечится. Да и исправлять типовую конфу - это последний метод, несмотря, на то что он много проще решает задачу.
(61) А особой бизнес-логики никакой, просто корректировка (как пример) должна закрывать все имеющиеся остатки, а не только по тем документам, у которых идентификатор типа меньше, чем у корректировки. | ||
Cyberhawk 63 - 04.10.16 - 14:10 | (62) "корректировка (как пример) должна закрывать все имеющиеся остатки, а не только по тем документам, у которых идентификатор типа меньше, чем у корректировки"// Ну так и замечательно: получай остатки на конец периода (граница - включая) и вычитай ненужные остатки. "исправлять типовую конфу - это последний метод"// А в какой это типовой и при каком сценарии наблюдается нежелательное поведение (неправильные проводки или что)? | ||
Дядя Лёша 64 - 04.10.16 - 14:15 | (62) В чем проблема использовать просто конец периода? А не Документ.Моментвремени. | ||
H A D G E H O G s 65 - 04.10.16 - 14:22 | (63) "// Ну так и замечательно: получай остатки на конец периода (граница - включая) и вычитай ненужные остатки.
"мы это уже проходили, но автор ниасилил. | ||
bolobol 66 - 04.10.16 - 14:44 | (65) Это вы никак тему не можете осилить, всё о своём, на своей волне. Создайте свою тему и решайте там задачу создания документа запросом, о Боже)
(63) В (0) описано. (64) Нет проблемы, но КорректировкаДолга писана 1С-ом, а не мной, а 1С вряд ли будет срочно менять поведение документа. И я типовое поведение исправлять не буду, когда есть альтернативные решения. | ||
DTX 4th 67 - 04.10.16 - 14:52 | |||
Дарлок 68 - 04.10.16 - 14:58 | (66) КорректировкаДолга в УПП технический документ. Он как бы не очень был рекомендован для использования. Там много нюансов как его правильно нужно заполнять. | ||
bolobol 69 - 04.10.16 - 15:26 | (67) Ой, да.. Бух 2. | ||
Cyberhawk 70 - 04.10.16 - 15:31 | Честно прочитал (0), но в деталях ни фига не ясно: что не так с документом "Корректировка долга", а вернее с его алгоритмом проведения (изи какой-нибудь команды заполнения)? | ||
mistеr 71 - 04.10.16 - 15:34 | (62) >открыл документ, посмотрел, какой он заполненный весь и "ОК", закройся... и это не лечится.
Еще как лечится. Запрет неоперативного проведения называется. | ||
bolobol 72 - 04.10.16 - 15:35 | (70) А какие нужны детали к "Итого: получается что невозможно сделать корректировку долга внутри одной секунды после документов Поступления и Списания." ?
Его алгоритм проведения и заполнения не подразумевают, что в одной секунде с корректировкой будут ещё документы. Вот и всё. | ||
mistеr 73 - 04.10.16 - 15:36 | Кажется, я понял, какую задачу решает ТС. Он хочет своей корректировкой скрыть косяки бухов в учете. Что ж, удачи. Потом придет плакаться, что его крайним сделали. | ||
bolobol 74 - 04.10.16 - 15:36 | (71) И как же тогда проводить документы прошлого квартала? Создавать новые, изменять существующие? | ||
bolobol 75 - 04.10.16 - 15:37 | (73) А, понятно. Вы стремительный? Выводы впереди анализа? | ||
mistеr 76 - 04.10.16 - 15:54 | |||
DTX 4th 77 - 04.10.16 - 15:59 | Так, а если документ новый, то он все остатки выгребет?
Если да, то мб проще новый документ заводить? | ||
bolobol 78 - 04.10.16 - 16:07 | (77) При перепроведении - документ уже перестанет быть новым, т.е. - потеряет документы текущей секунды. | ||
DTX 4th 79 - 04.10.16 - 16:32 | (78) Так табличные части же не обновляются при перепроведении. Создал документ - заполнил, провёл - спишь спокойно. | ||
Cyberhawk 80 - 04.10.16 - 17:22 | (72) Хм-хм, ну погоди: в случае с новым документом он при первом проведении работает правильно (формирует нужные проводки)?
При втором проведении его проводки изменятся что ли? | ||
bolobol 81 - 04.10.16 - 18:02 | |||
DTX 4th 82 - 04.10.16 - 20:21 | (81) В курсе.
Ты хочешь сказать, что при перепроведении она меняет свои табличные части? Т.к. документ расчетов указывается в ТЧ, которые должны перезаполняться только при нажатии кнопок "Заполнить" из формы документы, либо вручную. В общем, что-то мне не верится. | ||
RomanYS 83 - 04.10.16 - 20:28 | (82) там скорей всего есть режим "авто", при котором 3-е субконто заполняется автоматически из остатков при проведении. | ||
bolobol 84 - 04.10.16 - 21:16 | (82) фейспалм... Не табличные части, а движения меняет!
А в табличной части указывается что зачесть... И вот если на момент проведения суммы по "что зачесть" на остатках документ не увидит, зачтёт сумму по себе любимому, а не по указанному в ТЧ документу. | ||
DTX 4th 85 - 06.10.16 - 13:26 | (84) Чет ты не договариваешь, либо сам не в курсе)
http://i.imgur.com/aDn8Zp8.png Разумеется, никакой задолженности у Алхимова нет. Но сумма списалась целиком | ||
DTX 4th 86 - 06.10.16 - 13:34 | Видимо, понял, о чем ты. У нас просто взаиморасчеты не ведуться по документам расчетов.
Но всё равно проблема непонятна. Сумма же заполняется один раз, и при первом проведении списывается нормально. Так если ты потом добавишь в эту секунду ещё один документ, остатки изменятся, но при перепроведении корректировки её проводки поменятся не должны. А если бы они менялись, то как раз бы вылезал косяк - часть суммы списалась бы на последний документ, а предыдущие не закрылись бы полностью |
|
Список тем форума
|