|
Как написать запрос. | ☑ | ||
---|---|---|---|---|
0
dred999
20.07.15
✎
13:09
|
Всем привет! Есть Бухгалтерия предприятия редакция 3.0 (3.0.40.36).
В ней документ РасходноКассовыйОрдер. В этом документе надо сменить нумерацию документа (допустим с мая 2015). Написал запрос который выбирает документы по указанному периуду, и в принципе меняет нмерацию. Но Нужно сделать так чтобы когда выбирается периуд - Май. чтоб он цеплял последний документ за апрель, цеплял его номер и продолжал номерацию с этого номера за май. |
|||
1
cw014
20.07.15
✎
13:10
|
Шито?
|
|||
2
dred999
20.07.15
✎
13:11
|
вот сам запрос
Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ПриходныйКассовыйОрдер.Ссылка КАК Документ, | """" КАК Номер, | ПриходныйКассовыйОрдер.Номер КАК ИсходныйНомер, | ПриходныйКассовыйОрдер.Дата КАК Дата, | ПриходныйКассовыйОрдер.ПодразделениеОрганизации КАК ПодразделениеОрганизации |ИЗ | Документ.ПриходныйКассовыйОрдер КАК ПриходныйКассовыйОрдер |ГДЕ | ПриходныйКассовыйОрдер.Дата МЕЖДУ &ДатаН И &ДатаК | И ПриходныйКассовыйОрдер.Организация = &Организация | |УПОРЯДОЧИТЬ ПО | ПриходныйКассовыйОрдер.МоментВремени"; |
|||
3
aka AMIGO
20.07.15
✎
13:12
|
(0) имхо - это две разные задачи, решай каждую отдельно
|
|||
4
dred999
20.07.15
✎
13:14
|
(3) Тоесть нужно еще один запрос писать? А не этот дописывать?
|
|||
5
cw014
20.07.15
✎
13:16
|
Ну во-первых выяснить, какая периодичность нумерации у ПКО (или РКО, уже не поймешь, ибо в задачи РКО, а в запросе ПКО)
|
|||
6
Redkiy
20.07.15
✎
13:18
|
(0) есть готовое решение - 999руб.
|
|||
7
cw014
20.07.15
✎
13:18
|
Демпингую - 800 р
|
|||
8
dred999
20.07.15
✎
13:20
|
(5) РКО и ПКО. там дальше он подменяет ПКО на РКО если ты выбираешь ПКО. А переодичность нумерации сбита . Надо выловит если выбираем периуд май. последний документ апреля и продолжить нумерацию.
|
|||
9
cw014
20.07.15
✎
13:21
|
(8) У тебя в апреле последний документ 000000363, то есть в мае все документы должны иметь один и тот же номер, равный 000000364
|
|||
10
cw014
20.07.15
✎
13:21
|
(8) Так?
|
|||
11
dred999
20.07.15
✎
13:21
|
(9) да!
|
|||
12
dred999
20.07.15
✎
13:23
|
(10) 000000364, 000000365, 000000366
|
|||
13
cw014
20.07.15
✎
13:24
|
(12) > Надо выловит если выбираем периуд май. последний документ апреля и продолжить нумерацию.
Читаем и думаем. Алгоритм: 1) Создаем документ, получаем последний номер за апрель = 000000363 2) Инкрементируем номер 000000363 + 1 = 000000364 3) Создаем еще один документ, получаем последний номер за апрель = 000000363 4) Инкрементируем у нового документа номер 000000363 + 1 = 000000364 Дальше описывать? |
|||
14
dred999
20.07.15
✎
13:27
|
(13) Тк вот как написать запрос чтоб получать последний номер за апрель?
|
|||
15
cw014
20.07.15
✎
13:29
|
(14) Как в 13 и описано
|
|||
16
cw014
20.07.15
✎
13:29
|
Можешь запросом
|
|||
17
Redkiy
20.07.15
✎
13:31
|
(14) а почему именно апрель? Если в апреле не было движений по кассе то номер 1? Думай... или 999...
|
|||
18
dred999
20.07.15
✎
13:31
|
(16) добавить в существующий запрос параметры?
|
|||
19
cw014
20.07.15
✎
13:32
|
(18) Таки да, в (17) тебе прямо таки сказали в чем косяк твоего тз
|
|||
20
dred999
20.07.15
✎
13:34
|
(19) Нет не именно апрель. и движения по кассе были.в апреле.
|
|||
21
cw014
20.07.15
✎
13:36
|
(20) периодичность у нумератора какая?
|
|||
22
dred999
20.07.15
✎
13:43
|
(21) В переделах года
|
|||
23
cw014
20.07.15
✎
13:44
|
(22) То есть тебе все равно, что номера в течение года будут дублироваться, что приведет к нарушению уникальности?
|
|||
24
aka AMIGO
20.07.15
✎
13:45
|
(23) кмк, ему нужно узнать последний помер за апрель, чтобы перенумеровать все оставшиеся, начиная с 1 мая..
|
|||
25
dred999
20.07.15
✎
13:46
|
(24) номер последнего документа за апрель чтоб дальше продолжить его
|
|||
26
dred999
20.07.15
✎
13:47
|
(24) да.!
|
|||
27
cw014
20.07.15
✎
13:47
|
(26) Ты разово это хочешь сделать?
|
|||
28
aka AMIGO
20.07.15
✎
13:48
|
должна-ж быть в 8-ке функция "ВыбратьДокументы()" с указанием "ОбратныйПорядок"..
Начать цикл (за апрель), и прервать его на документе.. Вот и будет номер, и Запрос тут .. не нужен.. |
|||
29
cw014
20.07.15
✎
13:49
|
(28) Ты уверен, что последний документ за апрель имеет максимальный номер до этого периода?
|
|||
30
aka AMIGO
20.07.15
✎
13:49
|
(29) нет, но судя по желанию ТС, это так..
|
|||
31
dred999
20.07.15
✎
13:50
|
(29) Да
|
|||
32
cw014
20.07.15
✎
13:52
|
(31) Не дакай, Ответь на вопрос в (27)
|
|||
33
dred999
20.07.15
✎
13:53
|
Да разово (32)
|
|||
34
cw014
20.07.15
✎
13:53
|
А хотя... За криворукость ТС ответственности не несу.
ВЫБРАТЬ МАКСИМУМ(Номер) КАК Номер ИЗ Документ.ПриходныйКассовыйОрдер ГДЕ Дата МЕЖДУ (НАЧАЛОПЕРИОДА(&Период, ГОД)) И (КОНЕЦПЕРИОДА(&Период, МЕСЯЦ)) |
|||
35
aka AMIGO
20.07.15
✎
13:54
|
(32) :))
Думаю, шаловливые ручонки веселых бушек не позволят заплесневеть "разовой" обработке :) наверняка испортят, и не раз :) (34) Во! шедевр готов :) |
|||
36
aka AMIGO
20.07.15
✎
13:56
|
+35 молодец :)
|
|||
37
cw014
20.07.15
✎
13:57
|
(36) Ага, можно еще и так:
ВЫБРАТЬ МАКСИМУМ(Документ.ПриходныйКассовыйОрдер.Номер) КАК Номер ГДЕ Документ.ПриходныйКассовыйОрдер.Дата МЕЖДУ (НАЧАЛОПЕРИОДА(&Период, ГОД)) И (КОНЕЦПЕРИОДА(&Период, МЕСЯЦ)) |
|||
38
dred999
20.07.15
✎
14:00
|
(34) Но туту не указанно что выбрать номер документа перед началом периуда
|
|||
39
aka AMIGO
20.07.15
✎
14:02
|
ЗЫ. я - 7-рочник, редко мыслю категориями Запросов :)
потому и гнул своё с Выборкой документов :) (38) зато получишь то, что просил: последний номер в апреле.. ты уж определись как-нибудь, чего хочешь, не путай форумчан.. |
|||
40
cw014
20.07.15
✎
14:02
|
(38) P.S. &Период - любая дата апреля
|
|||
41
cw014
20.07.15
✎
14:03
|
(38) Что у тебя "перед началом периУда"? Что это?
|
|||
42
aka AMIGO
20.07.15
✎
14:05
|
а вернее-то не последний номер в апреле.. , а наибольший номер в периоде Запроса.. если бушки накосячили еще и в нём..
|
|||
43
floody
20.07.15
✎
14:06
|
обработку с ИТС использовать для перенумерации не модно?
|
|||
44
Redkiy
20.07.15
✎
14:10
|
(43) ТС хочет разово сделать перенумерацию, но вбить начальный номер в обработку с ИТС ему в лом...
|
|||
45
aka AMIGO
20.07.15
✎
14:15
|
(44) если есть ИТС .. Хозяева могут экономить каждый рубль :)
(38) найди на ИТСе "УниверсальныеПодборИОбработкаОбъектов" |
|||
46
aka AMIGO
20.07.15
✎
14:16
|
+45 а интереснее-то самому-бы написать..
Вход-то парадный указан.. |
|||
47
dred999
20.07.15
✎
14:19
|
Всем спасибо.
|
|||
48
aka AMIGO
20.07.15
✎
14:23
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |