|
Как решить простую задачу 🠗 (Волшебник 23.07.2015 20:56) | ☑ | ||
---|---|---|---|---|
0
ComradeKite
23.07.15
✎
18:58
|
Всем привет, может кто знает простое решение как изменять комплекты в периоде.
Понятное дело что тут желательно использовать механизмы платформы. Что делать если: 01.01.2015 1 НаборУтренний - Булочка 2 НаборУтренний - Чай 3 НаборУтренний - Сникерс 03.01.2015 1 НаборУтренний - Булочка 2 НаборУтренний - Чай Срез последних вернет мне Сникерс с предыдущего набора, хотя набор у меня уже из двух номенклатур состоит. Спасибо! |
|||
1
Desna
23.07.15
✎
19:00
|
Сникерс не съели поэтому и вернет
|
|||
2
Ненавижу 1С
гуру
23.07.15
✎
19:00
|
Это по сути 2 разных набора
|
|||
3
Рэйв
23.07.15
✎
19:02
|
(0)Набор - измерение, все остальное ресурсы.
Так устроит?:-) |
|||
4
lEvGl
гуру
23.07.15
✎
19:06
|
что значит "набор"? срезпоследних вернет Все последнее, если надо только то что было после 03.01.2015 тогда простое решение - условие на период наложить Где Период >= 03.01.2015
|
|||
5
Рэйв
23.07.15
✎
19:09
|
(4)Твое безумие в данный момент неизлечимо.
|
|||
6
Рэйв
23.07.15
✎
19:10
|
может быть завтра с твоего похмелья будет возможность говорить об излечении
|
|||
7
kosts
23.07.15
✎
19:20
|
(0) Регистр сведений, с двумя измерениями: Набор и НПП, в ресурсе товар.
|
|||
8
DmitrO
23.07.15
✎
19:20
|
Документ Набор с реквизитом ВидНабора и табличной частью Состав с реквизитом Номенклатура.
|
|||
9
ComradeKite
23.07.15
✎
19:34
|
kosts а что такое НПП?
|
|||
10
kosts
23.07.15
✎
19:36
|
номер по порядку
|
|||
11
ComradeKite
23.07.15
✎
19:38
|
Рэйв, набор в измерении конечно не устроит.
Измерения это ключ, то есть к примеру в течении дня набор может меняться один раз. Поставив периодичность день я смогу ввести только один раз набор в измерение. А набор состоит из многих продуктов. |
|||
12
lEvGl
гуру
23.07.15
✎
19:39
|
про запрос подумал
|
|||
13
ComradeKite
23.07.15
✎
19:41
|
to 10 не поможет
01,01,2015 Н1 1 Сникерс Н1 2 Марс Н1 3 Твикс 03,01,2015 Н1 1 Марс Н1 2 Сникерс Срез последних вернет кашу))) |
|||
14
zhig75
23.07.15
✎
19:44
|
А сам набор то это что? Документ, справочник?
|
|||
15
ComradeKite
23.07.15
✎
19:45
|
to 12 Запросом тоже можно, только как в целом расположить регистры и запрос.
Идея простая в целом простая. Есть комплекты, состоящие из номенклатур. Комплект может меняться не чаще один раз в день. Сегодня комплект состоит из пяти товаров. Завтра из трех. Как при списаниии распознать сколько сейчас реально в комплекте товаров? |
|||
16
ComradeKite
23.07.15
✎
19:47
|
to 14
Набор это элемент справочника Номенклатура с реквизитом ВидНоменклатуры, значение Набор. Логически это набор продуктов То есть набор "Завтра утренний", состоит из Чая, Сникерса и Булочки. |
|||
17
GreyK
23.07.15
✎
19:47
|
(15) По количеству в наборе вестимо.
|
|||
18
ComradeKite
23.07.15
✎
19:50
|
to 15 Да что по количество понятно, я сделаю реквизит количество и буду списывать по нему.
Как вот обработать сегодня Набор состоял из 6 наименований, а через три дня из 3 продуктов. Или так же из 6, но уже сникер поменяли на марс. |
|||
19
ComradeKite
23.07.15
✎
19:51
|
Я бы начал рыть в сторону с двумя регистрами, делать сложную какую то проверку, но велосипед изобретать неохота.
Сто пудов такое раньше решали не раз. |
|||
20
zhig75
23.07.15
✎
19:56
|
А В самом регистре то какие измерения и ресурсы?
|
|||
21
GreyK
23.07.15
✎
19:59
|
(18) Моя твоя не понимай? Результат запроса вчерашний день:
Чая 40 100гр - 5 шт Пирожок засохший - 1 шт Сникерс - 0 шт Результат запроса сегодняшний день: Чая 40 100гр - 0 шт Пирожок засохший - 0 шт Сникерс - 1 шт Кефир - 1 шт |
|||
22
ComradeKite
23.07.15
✎
20:02
|
to 21 Вариант имеет место быть, но явно не оптимальный и не на механизмах платформы реализован.
Надо анализировать предыдущий день, смотреть что там за список товаров, сравнивать их количество. А мне бы так срез последних дать команду и получить последний набор с учетом списка номенклатуры и количества. |
|||
23
ComradeKite
23.07.15
✎
20:06
|
to 20
Состав регистра самый простой хотел применить Регистр: НаборыПродуктов Измерения Номенклатура Ресурсы Набор, КоличествоВНаборе Структура подходит если в наборе количество продуктов не меняется. И задав срез последних получаешь последние записи из набора. Но не работает если было три продукта в наборе и стало после изменения 2. Этот один тянется и предвоследнего в последний по срезу последних. |
|||
24
GreyK
23.07.15
✎
20:07
|
(22) Ты случайно "Чая 40" не перепил, зачем анализировать предыдущий день? Это стандартный вариант формирования комплектов.
|
|||
25
ComradeKite
23.07.15
✎
20:14
|
to 24
Мне надо последний актуальный набор вытащить из регистра сведений. Как понять какой у тебя последний? Или какая структура регистра сведений должна быть в твоем случае? |
|||
26
GreyK
23.07.15
✎
20:20
|
(25) Позиции с нулевым количеством убери из запроса.
|
|||
27
wertyu
23.07.15
✎
20:22
|
(25) тебе надо регистр остатков и оборотов
|
|||
28
ComradeKite
23.07.15
✎
20:40
|
to 27 можно что либо думать в этом направлении, но хотелось бы попроще))
|
|||
29
Garykom
гуру
23.07.15
✎
20:46
|
для (0) простейший вариант это вынести "комплекты" из периода
сделать отдельную сущность состав комплекта, которая(ые) будет уникальной (не меняются только заводятся новые) и менять только ссылку на нее на даты |
|||
30
Garykom
гуру
23.07.15
✎
20:48
|
01.01.15
набор утренний - состав комплекта 1 (булочка, чай, сникерс) 03.01.15 набор утренний - состав комплекта 2 (булочка, чай) |
|||
31
wertyu
23.07.15
✎
20:48
|
(28) я серьёзно, у тебя типичные остатки
|
|||
32
Garykom
гуру
23.07.15
✎
20:49
|
(31) да можно и через остатки, но это слегка изврат
особенно если комплекты часто меняются то сдохнешь все 0 убирать )) |
|||
33
Nite
23.07.15
✎
20:51
|
Хватит уж над человеком издеваться.
Например. Временная таблица с Максимум(Дата) КАК МаксВыборка и соединение с основной либо такой же вложенный запрос. |
|||
34
ComradeKite
23.07.15
✎
20:51
|
to 31 меня остатки не интересуют вообще.
У меня есть сегодня Множество А(а,б,с) Завтра Множество А изменилось и стало А(а,с) Если делать это на регистрах сведений то я хочу чтобы срез последних вернул мне А(а,с). Но срез последних мне возвращает А(а,б,с) |
|||
35
Nite
23.07.15
✎
20:52
|
(34) См. 33
|
|||
36
wertyu
23.07.15
✎
20:53
|
(35) а в любой момент времени?
|
|||
37
wertyu
23.07.15
✎
20:54
|
(34) у тебя на складе1 была номенклатура 1 ...
|
|||
38
ComradeKite
23.07.15
✎
20:54
|
to 33 Я думал так сделать, но если таких наборов куча то где она там максимум где минимум))) Один набор месяц назад менялся и был из 10 комплектующих, а сейчас он из 5, тоже не айс метод.
|
|||
39
Garykom
гуру
23.07.15
✎
20:55
|
(34) лучше см. (29)(30)
срез последних вернет тебе например СоставКомпдекта2, далее смотришь к примеру его ТЧ "Товары" и там твои чай с булочкой только |
|||
40
wertyu
23.07.15
✎
20:56
|
(39) да хорош уже, это остатки
|
|||
41
Garykom
гуру
23.07.15
✎
20:56
|
(40) угу с "булевым количеством"... ;)
|
|||
42
Garykom
гуру
23.07.15
✎
20:57
|
(41)+ можно просто в регистр сведений еще ресурс/измерение засунуть булево "юзается"
|
|||
43
wertyu
23.07.15
✎
20:58
|
(42) да какой регистр сведений, регистр сведений - это меняющийся признак, а не число
|
|||
44
Nite
23.07.15
✎
20:59
|
(36) В любой. Ничто не мешает наложить ограничение на связь по периоду действия. Если ввести доп.реквизиты, то будет еще проще.
|
|||
45
wertyu
23.07.15
✎
21:00
|
(44) ага, остаток на начало, приход, расход, конечный остаток
|
|||
46
ComradeKite
23.07.15
✎
21:01
|
to 39, 38 у меня не ТЧ не Складов нет)))
Еще одна версия объяснения))) У меня есть справочник Номенклатура В этом справочнике хранятся Продукты, Наборы. Делятся реквизитом ВидНоменклатуры. Наборы могут состоять из Продуктов. Набор может меняться не чаще чем один раз в день. При продаже набора НаборУтренний я должен списать какие то продукты. Как определить какие продукты входят в набор? Делаю регистр сведений, потом беру по срезу последних актуальный набор и буду списывать номенклатуру входящую в набор. Вот тут и косяк, что срез последних берет мне не правильную составляющую набора. |
|||
47
wertyu
23.07.15
✎
21:02
|
(46) я тебе написал как правильно, делай как нравится
|
|||
48
Nite
23.07.15
✎
21:02
|
(45) Нет. Период действия регистратора. ДействуетС и До.
|
|||
49
wertyu
23.07.15
✎
21:04
|
(48) "Период действия регистратора" это в 8.3.10?
|
|||
50
ComradeKite
23.07.15
✎
21:06
|
to 47
Я не понял зачем мне регистр накопления? У меня на остатках лежат продукты, наборов там нет. В расходной я продаю набор, как теперь переконвертировать НаборУтренний в Марс, Чай, Булочка? |
|||
51
Nite
23.07.15
✎
21:07
|
(49) Нет. Это на любой платформе 8-ки. Добавляем к периодическому регистру сведений нужные поля и потом по ним запросом фильтруем какой регистратор с каким набором, в случае автора, нужно взять на конкретный момент времени.
|
|||
52
ComradeKite
23.07.15
✎
21:07
|
to 48
Не получится так. От куда я знаю когда менялся состав набора последний раз? Я хочу взять просто последний актуальный набор. |
|||
53
wertyu
23.07.15
✎
21:08
|
(50) я не заставляю тебя нарушать религиозные основания твоего учёта, если твой брахма запрешает, то конечно нельзя, кто я такой, чтобы запрещать?
|
|||
54
Nite
23.07.15
✎
21:09
|
(52) Ты и возьмешь последний актуальный набор! Попробуй уже!
|
|||
55
wertyu
23.07.15
✎
21:09
|
(51) ах ты хитрый, ты забыл про регистр накопления, который соберёт эти справочники (РАУЗ)
|
|||
56
Nite
23.07.15
✎
21:13
|
(55) Не нужен он в (0)
|
|||
57
wertyu
23.07.15
✎
21:15
|
(56) да только регистр накопления в (0) и нужен )
|
|||
58
ComradeKite
23.07.15
✎
21:15
|
to 54
что имеется ввиду под периодом? У меня есть дата сейчас(Время в которое я проверяю актуальность) у меня нет периода. |
|||
59
wertyu
23.07.15
✎
21:15
|
(56) у него обычные остатки
|
|||
60
kosts
23.07.15
✎
21:17
|
Подходящий запрос, для варианта (7).
(Как пример, можно немного и по другому делать)
|
|||
61
Garykom
гуру
23.07.15
✎
21:17
|
(46) а может не издеваться?
и не изменять номенклатуру а просто заводить новую? ЗЫ все проблемы снимаются и ничего делать не нуна |
|||
62
Nite
23.07.15
✎
21:19
|
(58) В регистр добавь два поля, например, ДействуетС и ДействуетПо. Потом запрос, примерно как в (60)
|
|||
63
wertyu
23.07.15
✎
21:20
|
(62) а ты прав, это же регистр расчёта )
|
|||
64
ComradeKite
23.07.15
✎
21:29
|
to 61 я набор меняю, номенклатуру я не трогаю.
to kosta Решение рабочее, но не самое простое. Надо потестировать его, что бы вариант железный был. |
|||
65
wertyu
23.07.15
✎
21:31
|
(64) делай регистр расчёта
|
|||
66
ComradeKite
23.07.15
✎
21:32
|
to 60 За вариант с НПП спасибо, возьму обязательно на вооружение, раньше я такого не делал, но во многих случаях может пригодиться))
to 64 С регистрами расчета у меня никогда проблем не было))) Там алгоритм один всегда почти и нового придумать тяжело)) |
|||
67
wertyu
23.07.15
✎
21:32
|
Измерения: Номенклатура
Ресурсы: Количество |
|||
68
ComradeKite
23.07.15
✎
21:38
|
to kosta вроде все ок с решением, остановлюсь на варианте с НПП и запросе что предложил kosta.
Всем спасибо |
|||
69
wertyu
23.07.15
✎
21:49
|
(68) забавно, там чистый регистр расчёта, но решать конечно тебе
|
|||
70
Ildarovich
24.07.15
✎
01:45
|
Кажется, что в варианте запроса (60) номер по порядку (НПП) - вообще лишний. По сути запрос (60) - это специфическая реализация среза последних, требующая одномоментности задания состава набора. Условие
И НаборыСрезПоследних.Период = ВложенныйЗапрос.Период эту одномоментность и проверяет. Так что в этом случае набор может быть максимально компактно задан периодическим РС с измерениями набор и номенклатура и ресурсом количество. Но если вернуться к сути проблемы - желанию использовать стандартный срез последних, то ее тоже просто решить. Достаточно к срезу последних добавить условие Количество > 0, а при записи нового набора перекрывать нулем номенклатуру, выводимую из состава ПРЕДЫДУЩЕГО набора, как бы прекращая ее участие с этого момента в составе набора. То есть записывать ставшую ненужную в новом наборе номенклатуру с нулевым количеством. Тоже неплохой вариант. |
|||
71
kosts
24.07.15
✎
06:16
|
(70) >при записи нового набора перекрывать нулем номенклатуру, выводимую из состава ПРЕДЫДУЩЕГО набора
Нет смысла перекрывать, т.к. не надежно это. Т.к. теоретически наборы могут записываться в любой последовательности периодов. > набор может быть задан периодическим РС с измерениями набор и номенклатура и ресурсом количество Вот тут ты прав. Только и количество не нужно. С другой стороны срезом последних в чистом виде так и так не воспользоваться. Так что регистр можно в принципе делать не периодическим, только вместо измерения "Период" добавить например "Дата". |
|||
72
ComradeKite
24.07.15
✎
08:53
|
to 70 вариант хороший тоже. Так даже 1с ники делать рекомендуют, с НПП мне понравилось больше.
Во первых срез последних всегда вернет измерение Набор, периодичность регистра день, что тоже требуется условием. Ну а дать возможность набор размножить по измерению как раз и дает НПП. Этот НПП неразрывно связан с ТЧ составляющие набора. По срезу берем набор и последний период регистрации если что то прилетело раньше отсекаем внутренним соединением. На мой взгляд не плохо получается. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |