![]() |
![]() |
![]() |
|
Списание "задним" числом | ☑ | ||
---|---|---|---|---|
0
zak555
27.04.09
✎
10:05
|
есть бюджетка типовая... бухи постоянно списывают что-либо "задним" числом.
во всей ней в модулях дока идёт анализ остатков на ТекущийДокумент() => если могут возникать отрицательные значения как лучше это обойти? |
|||
1
povar
27.04.09
✎
10:06
|
что именно обойти ?
|
|||
2
zak555
27.04.09
✎
10:08
|
(1) пример остаток на счете 5 штук сегодня. Делаю списание 5 штук. В это время буха делает списание документа вчерашним числом тоже на 5 штук. В итоге остаток будет -5
|
|||
3
ДенисЧ
27.04.09
✎
10:08
|
Проверять на документ и на ТА.
|
|||
4
zak555
27.04.09
✎
10:09
|
(3) последовательность вводить?
|
|||
5
ДенисЧ
27.04.09
✎
10:09
|
(4) голову включать.
|
|||
6
zak555
27.04.09
✎
10:10
|
(5) пример можно?
|
|||
7
DGorgoN
27.04.09
✎
10:10
|
(3) А если в середине какой то документ делает -10?
Зы - все движения от сих до сих проверять.. |
|||
8
selenat
27.04.09
✎
10:11
|
(3) и что это даст? Тогда уж переделывать все глобально и проверять только на ТА...
|
|||
9
DenLaDen
27.04.09
✎
10:11
|
(0) глядеть по дату рассчитанных бухитогов, не списывается ли этот товар позднее
|
|||
10
ДенисЧ
27.04.09
✎
10:12
|
(6) Голова.Включить() :-))
|
|||
11
zak555
27.04.09
✎
10:14
|
(9) пример можно?
|
|||
12
zak555
27.04.09
✎
10:16
|
думал сделать запрос на "последний" документ
но тогде не понятно, как списывать по-среднему.. |
|||
13
selenat
27.04.09
✎
10:22
|
(12) используй широкую стальную линейку. За другие способы лучше не берись, ибо сложно тебе будет...
|
|||
14
zak555
27.04.09
✎
10:24
|
или думал разрешить только одному человеку делать списание задним числом (сделать недоступным ДатаДок)
|
|||
15
Ochkarito
27.04.09
✎
10:29
|
Объяснить бухам как не надо делать.
|
|||
16
DenLaDen
27.04.09
✎
10:32
|
(11)
БухИтоги = СоздатьОбъект( "БухгалтерскиеИтоги" ); БухИтоги.ИспользоватьСубконто( ВидыСубконто.Номенклатура ); ДатаКон = КонецРассчитанногоПериодаБИ(); БухИтоги.ВыполнитьЗапрос( ДатаНач, ДатаКон, "41.1",,,, "Операция" ); БухИтоги.ВыбратьСубконто(); Пока БухИтоги.ПолучитьСубконто() = 1 Цикл МинКоличество = БухИтоги.СНД("К"); БухИтоги.ВыбратьПериоды(); Пока БухИтоги.ПолучитьПериод() = 1 Цикл Если МинКоличество > БухИтоги.СКД("К") Тогда МинКоличество = БухИтоги.СКД("К"); КонецЕсли; КонецЦикла; Если МинКоличество <= 0 Тогда Продолжить; КонецЕсли; КонецЦикла; вот как-то так, правда чем документ будет раньше, тем дольше будет это дело выполняться |
|||
17
zak555
27.04.09
✎
10:42
|
(16) ДатаНач = текущийДокумент() ???
|
|||
18
zak555
27.04.09
✎
10:44
|
(15) при большом документообороте невозможно!
|
|||
19
zak555
27.04.09
✎
11:10
|
(16) зачем это условие МинКоличество <= 0 ?
|
|||
20
zak555
27.04.09
✎
16:18
|
а может вообще проще смотреть остатки на КонецРассчитанногоПериодаБИ()
в разрезе аналитик всех и нужных счетов? т.е. если есть есть вообще остаток, то можно проводить, если нет - нельзя а дальше оставить стандартную реализацию списания по-среднему |
|||
21
у лю 427
27.04.09
✎
17:08
|
(16) бред....
|
|||
22
NikVars
27.04.09
✎
17:27
|
(0) Ты точно про учет говоришь или про его имитацию?
Ничего не делай! Пусть они сами потом свою каку разграбют своими загребущими ручками. |
|||
23
zak555
27.04.09
✎
17:53
|
(21) как лучше реализовать?
(22) доки не всегда приходят вовремя ... |
|||
24
zak555
27.04.09
✎
18:06
|
.
|
|||
25
NikVars
27.04.09
✎
18:08
|
(23) Если учет вести с умом, вернее если вести учет, то будет все в порядке даже и в этом случае.
|
|||
26
zak555
27.04.09
✎
18:15
|
(25) ну кто набивает доки - он же не в курсе, чего не хватает ;-)
|
|||
27
zak555
27.04.09
✎
20:02
|
так (20) подойдёт?
|
|||
28
у лю 427
27.04.09
✎
20:06
|
нет, не подойдет - ты делаешь документ 10-м числом, списывая три гвоздя, на конец БИ на остатке 20 гвоздей, но пришли они после 10 числа...
И твое списание пойдет в минус по количеству с нулевой себестоимостью... |
|||
29
Immortal
27.04.09
✎
20:09
|
вот и Пит подтянулся..неоперативно правда=)
|
|||
30
zak555
27.04.09
✎
20:28
|
(28) точно...
а какую тогда проверку замутить? |
|||
31
у лю 427
27.04.09
✎
20:34
|
хе-хе...
тут весь форум уже года 3 над этой проверкой трахаеЦЦо - до сих пор допереть не могут... |
|||
32
zak555
27.04.09
✎
20:36
|
(31) ;-)
а ты? |
|||
33
Sadovnikov
27.04.09
✎
20:37
|
(32) Он-то допер. Причем, давно. Еще раз причем, - решение элементарное...
|
|||
34
Дядя Васька
27.04.09
✎
20:38
|
(30) Да никак ее нормально не замутить. Если делаешь списание 10-м числом и по остатку вроде бы все путем и на 10-е и на 20-е это еще не значит что не будет минуса 15-го. Потому что товар который ты пытаешься списать могли продать 15-го, а 16-го поступил другой приход.
Разве что с партиями извращаться, когда приходный док=партия, да в разрезе партий тот остаток смотреть. Но их нет в бухучете. Да и возвраты могут быть, из-за которых все равно остаток между датой А и Б туда-сюда плясать может. |
|||
35
zak555
27.04.09
✎
20:45
|
(33) так какое? не код не нужен - принцип...
(34) что-то все противорячат друг другу |
|||
36
Дядя Васька
27.04.09
✎
21:50
|
(35) А Пит давно говорит что придумал простой способ, но сам способ не озвучивает, бо стопудово разгромят :)
Реальный способ только один: не давать лазить в закрытый период. Квартал подбили, все, туда не лазим. В рамках текущего пусть играются, но перед закрытием все перепровести, исправить косяки и больше не трогать. |
|||
37
у лю 427
27.04.09
✎
21:52
|
(36) не можешь допереть - не трынди...
|
|||
38
zak555
27.04.09
✎
21:53
|
(36) в закрытый никто и не собирается добавлять доки!
я про текущий... |
|||
39
Дядя Васька
27.04.09
✎
21:57
|
(37) А чего тут допирать? Математически невозможно. Пока всю цепочку не проверишь всегда есть вероятность что между задним числом и сегодняшним есть минус.
|
|||
40
Дядя Васька
27.04.09
✎
21:58
|
(38) Только если по каждой позиции всю движуху проверишь. С заднего числа по последнее движение, если где-то есть минус - не проводить. А это долго. Разве что прямым... ну да все равно долго...
|
|||
41
Дядя Васька
27.04.09
✎
22:04
|
Ну разве что такой вариант, документ поступления = партия, дальше только реализации по этой партии, если есть возврат, то делать как обратную продажу, т.е. уже новая партия будет, а что отгрузили, то ушло. Тогда достаточно проверить остаток на ТА в разрезе партий. Но это все равно не спасет от кривых рук, если есть права тупо изменить дату прихода. Подвинут его вперед, после первой продажи, и получите минус.
|
|||
42
zak555
27.04.09
✎
22:10
|
(28) а если сделать так: анализировать ДО() - КО() <0
|
|||
43
zak555
27.04.09
✎
22:10
|
+(42) за период ТекущийДокумент() до КонецРассчитанногоПериодаБИ()
|
|||
44
zak555
27.04.09
✎
22:16
|
+ (43) при условие, что не было "минуса" в остатке
|
|||
45
zak555
27.04.09
✎
22:17
|
(39) а чего математически невозможно?
|
|||
46
Дядя Васька
27.04.09
✎
22:23
|
(45) По остатку понять какие были движения. Только при условии что все движения строго в одну сторону. Т.е. если смотришь остаток в разрезе приходного документа после которого может быть только расход, то по конечному остатку ты точно знаешь что минусов нет, если он положительный. Если же у тебя за промежуток времени может быть не только расход, но и приход на ту же партию (когда возврат делают такое бывает), тогда конечный остаток не скажет тебе о том что было несколько дней назад.
|
|||
47
Дядя Васька
27.04.09
✎
22:25
|
(44) так тебе и надо узнать, есть он там или нет
|
|||
48
zak555
27.04.09
✎
22:44
|
(46) так (42) кажись решение задачи...
(47) я точно знаю, что нет + условие (44) можно вообще убрать! |
|||
49
Дядя Васька
27.04.09
✎
22:45
|
(48) И партионный учет у тебя есть?
|
|||
50
zak555
27.04.09
✎
22:47
|
(49) ну какой партионный в бюджетке 7-ке?
|
|||
51
Дядя Васька
27.04.09
✎
22:48
|
(50) Ну и че тогда ты хочешь? В разрезе просто товара у тебя движения в обе стороны. Приходит он неоднократно.
|
|||
52
zak555
27.04.09
✎
22:49
|
(51) теперь я интерсуюсь : (42) решение (0) ?
|
|||
53
Дядя Васька
27.04.09
✎
22:51
|
(52) Нет. Просто получится остаток. Он тебе ничего не даст.
|
|||
54
zak555
27.04.09
✎
22:57
|
(53) ну тут ты неправ:
Пример допустим: на 01 число остаток по товару 10 штук в конце дня было списано тоже 10 штук в итоге на 02 чило остаток 0 02 числа был приход на 6 штук тогда сальдо на конец 03 числа - 6 штук Ввожу документ списание от 01 числа в конец дня на десять штук... если я буду анализировать при проведении разницу между ДО и КО за период ТекущийДокумент() [который списание] по КонецРассчитанногоПериодаБИ() [ну или на 03 число] получаю: ДО = 6 КО = 10 разница = - 4 и всё... |
|||
55
zak555
27.04.09
✎
23:00
|
+ (54) понятно что итоги в разрезах аналитик анализируются + счетах
|
|||
56
zak555
27.04.09
✎
23:04
|
(53) ye nfr xnj&
|
|||
57
zak555
27.04.09
✎
23:15
|
(53) ну так что?
|
|||
58
Дядя Васька
27.04.09
✎
23:16
|
приходуешь ты 01 числа 10 штук, продаешь 03 числа четыре штуки, пытаешься сделать списание 02 числа и анализируешь ДО-КО со второго по третье, и получаешь те же -4, и чо?
|
|||
59
zak555
27.04.09
✎
23:19
|
(58) ну тогда делать анализ СКД() - СНД() за тот же период
|
|||
60
Дядя Васька
27.04.09
✎
23:20
|
+(58) не мучайся ДО-КО без начального остатка не даст ничего, а с начальным получишь конечный. Партионный нужен, причем чтобы в плюс в разрезе партии шло только раз, затем только в минус.
|
|||
61
zak555
27.04.09
✎
23:23
|
(60) так а если (59) ?
|
|||
62
Дядя Васька
27.04.09
✎
23:25
|
(61) Мля, ну не тупи... Когда у тебя в периоде движения в обе стороны идут ни начальный остаток с конечным, ни обороты, не скажут тебе о том что было в середине периода.
|
|||
63
zak555
27.04.09
✎
23:27
|
(62) да ... хрень написал в (59) ... даже (54) не сработает
|
|||
64
zak555
27.04.09
✎
23:32
|
(62) а если СНД() + ДО() - КО() ?
|
|||
65
Дядя Васька
27.04.09
✎
23:40
|
(64) Пипец... График нарисуй что ли... Если линия вниз все время идет, ты точно знаешь на сколько клеток можешь ее опустить, чтобы она ни в каком месте в минус не ушла, так как в конце линии ее самое маленькое значение. Если же она у тебя то вверх то вниз, то зная только ее начало и конец, ты не можешь узнать провалится она в минус где-то в середине или нет, так как в конце она может вверх пойти.
|
|||
66
Дядя Васька
27.04.09
✎
23:41
|
обороты они не для этого, это чтобы сторно отличать от обратной проводки. Тебе ничего не даст.
|
|||
67
zak555
27.04.09
✎
23:43
|
(64) - хрень... что-то пиво не помагает...
|
|||
68
zak555
28.04.09
✎
00:17
|
(66) тогда надо анализировать первый "расход" за период и узнать есть ли на него нужный остаток...
БухИтоги = СоздатьОбъект( "БухгалтерскиеИтоги" ); БухИтоги.ИспользоватьСубконто( ВидыСубконто.Номенклатура ); ДатаНач = ТекущийДокумент(); ДатаКон = КонецРассчитанногоПериодаБИ(); БухИтоги.ВыполнитьЗапрос( ДатаНач, ДатаКон, "41.1",,,, "Операция" ); БухИтоги.ВыбратьСубконто(1); Пока БухИтоги.ПолучитьСубконто(1) = 1 Цикл БухИтоги.ВыбратьПериоды(); Пока БухИтоги.ПолучитьПериод() = 1 Цикл Если 0 <> БухИтоги.КО("К") Тогда Если БухИтоги.СКД("К")>= СколькоЯХочуСписать Тогда ФлагСПисанияТовара = 1; Иначе ФлагСПисанияТовара = 0; КонецЕсли; Прервать; КонецЕсли; КонецЦикла; КонецЦикла; |
|||
69
zak555
28.04.09
✎
00:50
|
+ (68) даже надо анализировать все списания со счета
|
|||
70
zak555
28.04.09
✎
01:19
|
БухИтоги = СоздатьОбъект( "БухгалтерскиеИтоги" );
БухИтоги.ИспользоватьСубконто( ВидыСубконто.Номенклатура ); ДатаНач = ТекущийДокумент(); ДатаКон = КонецРассчитанногоПериодаБИ(); БухИтоги.ВыполнитьЗапрос( ДатаНач, ДатаКон, "41.1",,,, "Операция" ); БухИтоги.ВыбратьСубконто(1); Пока БухИтоги.ПолучитьСубконто(1) = 1 Цикл БухИтоги.ВыбратьПериоды(); ФлагСПисанияТовара = 1; Пока БухИтоги.ПолучитьПериод() = 1 Цикл Если 0 <> БухИтоги.КО("К") Тогда Если БухИтоги.СКД("К")<СколькоЯХочуСписать Тогда ФлагСПисанияТовара = 0; КонецЕсли; Прервать; КонецЕсли; КонецЦикла; КонецЦикла; |
|||
71
zak555
28.04.09
✎
01:21
|
+ (70) вернее так:
БухИтоги = СоздатьОбъект( "БухгалтерскиеИтоги" ); БухИтоги.ИспользоватьСубконто( ВидыСубконто.Номенклатура ); ДатаНач = ТекущийДокумент(); ДатаКон = КонецРассчитанногоПериодаБИ(); БухИтоги.ВыполнитьЗапрос( ДатаНач, ДатаКон, "41.1",,,, "Операция" ); БухИтоги.ВыбратьСубконто(1); Пока БухИтоги.ПолучитьСубконто(1) = 1 Цикл БухИтоги.ВыбратьПериоды(); ФлагСПисанияТовара = 1; Пока БухИтоги.ПолучитьПериод() = 1 Цикл Если 0 <> БухИтоги.КО("К") Тогда Если БухИтоги.СКД("К")<СколькоЯХочуСписать Тогда ФлагСПисанияТовара = 0; Прервать; КонецЕсли; Прервать; КонецЕсли; КонецЦикла; КонецЦикла; |
|||
72
zak555
28.04.09
✎
01:38
|
(37) похоже на правду (71) ?
|
|||
73
zak555
28.04.09
✎
01:43
|
БухИтоги = СоздатьОбъект( "БухгалтерскиеИтоги" );
БухИтоги.ИспользоватьСубконто( ВидыСубконто.Номенклатура ); ДатаНач = ТекущийДокумент(); ДатаКон = КонецРассчитанногоПериодаБИ(); БухИтоги.ВыполнитьЗапрос( ДатаНач, ДатаКон, "41.1",,,, "Операция" ); БухИтоги.ВыбратьСубконто(1); Пока БухИтоги.ПолучитьСубконто(1) = 1 Цикл БухИтоги.ВыбратьПериоды(); ФлагСПисанияТовара = 1; Пока БухИтоги.ПолучитьПериод() = 1 Цикл Если БухИтоги.СКД("К")<СколькоЯХочуСписать Тогда ФлагСПисанияТовара = 0; Прервать; КонецЕсли; Если ФлагСПисанияТовара=0 Тогда Сообщить("товар в жопе!"); КонецЕсли; КонецЦикла; КонецЦикла; |
|||
74
zak555
28.04.09
✎
01:44
|
БухИтоги = СоздатьОбъект( "БухгалтерскиеИтоги" );
БухИтоги.ИспользоватьСубконто( ВидыСубконто.Номенклатура ); ДатаНач = ТекущийДокумент(); ДатаКон = КонецРассчитанногоПериодаБИ(); БухИтоги.ВыполнитьЗапрос( ДатаНач, ДатаКон, "41.1",,,, "Операция" ); БухИтоги.ВыбратьСубконто(1); Пока БухИтоги.ПолучитьСубконто(1) = 1 Цикл БухИтоги.ВыбратьПериоды(); ФлагСПисанияТовара = 1; Пока БухИтоги.ПолучитьПериод() = 1 Цикл Если БухИтоги.СКД("К")<СколькоЯХочуСписать Тогда ФлагСПисанияТовара = 0; Прервать; КонецЕсли; КонецЦикла; Если ФлагСПисанияТовара=0 Тогда Сообщить("товар в жопе!"); КонецЕсли; КонецЦикла; |
|||
75
Злопчинский
28.04.09
✎
03:00
|
Решений, имхо, несколько
1. работа должна быть сделана тогда, когда она должна быть сделана, а не тогда когда захочется... если документ принесенный 15 числа колотят 5-ым числом - это не проблема программы. Жили же как-то 10 дней без этого дока? жили! ну и вводите тогда 15 числом когда принесли - ах надо 5-ым? ну так нехрен трындеть - работать надо - вводитть документ 5-ым! 2. во время проведения фиксируются/запоминаются списанные партии/остатки. Во врем япроведения задним числом эти партии извлекаются и НЕ ТРОГАЮТСЯ - раз движения по ним устраивали до вчера - с какого хрена перестали устраивать сегодня? .. не надо рассчитывать на машину времени! НЕТУ ЕЕ!!! ВЗАД ВЕРНУТЬСЯ НИЗЯ!!! пусть Пит меня разгромит - я не обижусь, выберусь к нему в НН на пиво/закусь или чего там надо... |
|||
76
zak555
28.04.09
✎
03:07
|
(75) так а что ж делать, если расходники не сразу вбиваются?
|
|||
77
Злопчинский
28.04.09
✎
03:41
|
что мешает расходники вбить сразу???
я думаю, общий пофигизм на фирме. Как лечить, очень просто: подлови кассу когда будет выдана большая сумма без расходника и сдлай так, чтобы кассу в это время проаудировали, чтобы касса огребла люлей по самое нехочу... |
|||
78
у лю 427
28.04.09
✎
06:54
|
(75) "выберусь к нему в НН на пиво/закусь или чего там надо..."
В НН живут суровые ннчане - они тебя отмиздят.... Не надо туда ездить.... |
|||
79
у лю 427
28.04.09
✎
06:55
|
(75)"не надо рассчитывать на машину времени! НЕТУ ЕЕ!!! ВЗАД ВЕРНУТЬСЯ НИЗЯ!!! "
вернуться? Взад? Да запросто.... |
|||
80
selenat
28.04.09
✎
09:10
|
Чем не устраивает решение, озвученное Дядей Васькой? Я уже давно про него говорю, все руки не доходят сделать
|
|||
81
zak555
28.04.09
✎
12:33
|
(77) оно мне надо?
|
|||
82
zak555
28.04.09
✎
13:23
|
(80) какое из них?
|
|||
83
Дядя Васька
28.04.09
✎
13:26
|
(82) Там только одно, просто я тебе его объяснял и так и этак. Но так и не дошло.
|
|||
84
birkoFFFF
28.04.09
✎
13:26
|
zak555, продолжи фразу : "Автоматизируя хаос, получишь ...."
|
|||
85
zak555
28.04.09
✎
13:37
|
(84) автоматизированный хаос?
|
|||
86
NikVars
28.04.09
✎
13:40
|
(84) ...хорошие премиальные!
|
|||
87
zak555
28.04.09
✎
13:47
|
так что (74) тоже не вариант?
|
|||
88
selenat
28.04.09
✎
13:50
|
||||
89
zak555
28.04.09
✎
14:03
|
(88) ну это мне не нужно, мне-то нужна проверка
|
|||
90
selenat
28.04.09
✎
14:09
|
(89) ну, не хочешь - как хочешь...
(83) я вот все никак не соберусь продумать, как этот способ контроля остатков состыковать еще с резервами товаров. Остаток ведь может не уходить в минуса в прмежутке, но за счет резерва тоже не подлежать списанию... |
|||
91
selenat
28.04.09
✎
14:10
|
Таки автор отверг все возможные варианты решения задачи. Начиная от наведения порядка административными мерами, до нормального контроля программными средствами. Остается только развести руками...
|
|||
92
zak555
28.04.09
✎
14:21
|
(91) "нормального контроля программными средствами" - партионный учёт?
|
|||
93
zak555
28.04.09
✎
14:37
|
(91) так (74) тоже не вариант проверки?
|
|||
94
zak555
28.04.09
✎
15:12
|
(83) ещё раз перечитал все твои "возможные" примеры.
так получается (74) и анализирует все приходы/расходы на период (с текДолка по конецЗасчетного) : если же остаток по приходному/расходному документу будет меньше, чем я хочу списать - то это и будет означать запрет на ввод этой номенклатуры иначе всё нормально и можно вводить документ. |
|||
95
zak555
28.04.09
✎
16:15
|
(79) кажись все условия подходят для (74)
|
|||
96
zak555
28.04.09
✎
17:27
|
(77) "что мешает расходники вбить сразу???"
а если большой документооборот (200 доков прихода/расхода в день) один док забыли вбить вчера, дата у него отгрузки вчерашняя |
|||
97
у лю 427
28.04.09
✎
17:52
|
200 доков прихода - расхода... Малчик.... ты с кем меряться собралЦО?
Не дорос ты еще 1400-2000 доков в день - только расход.... 150-500 доков в день - возврат + документы выпуска продукции - до 200... + СЧФ (выписываются на несколько расходов сразу).... |
|||
98
у лю 427
28.04.09
✎
17:53
|
Причем здесь есть некто Садовников - у него документооборот в разы толще моего...
|
|||
99
GreyK
28.04.09
✎
18:10
|
В (74) вполне работоспособный вариант. Если хочется получить правильную себестоимость, то дорабатываем напильником.
|
|||
100
у лю 427
28.04.09
✎
18:10
|
100
|
|||
101
zak555
28.04.09
✎
18:26
|
(99) как его оптимизировать...
БухИтоги = СоздатьОбъект( "БухгалтерскиеИтоги" ); БухИтоги.ИспользоватьСубконто( ВидыСубконто.Местахранения,Место,2 ); БухИтоги.ИспользоватьСубконто( ВидыСубконто.Номенклатура,,1 ); ДатаНач = ТекущийДокумент(); ДатаКон = КонецРассчитанногоПериодаБИ(); БухИтоги.ВыполнитьЗапрос( ДатаНач, ДатаКон, "41.1",,,1, "Операция",4 ); //БухИтоги.ВыбратьСубконто(2); //Пока БухИтоги.ПолучитьСубконто(1) = 1 Цикл ВыбратьСтроки(); Пока ПолучитьСтроку()=1 Цикл ФлагСПисанияТовара = 1; Если БухИтоги.ПолучитьСубконто(2,, Товар)=0 Тогда ФлагСПисанияТовара = 0; КонецЕсли; БухИтоги.ВыбратьПериоды(); Пока БухИтоги.ПолучитьПериод() = 1 Цикл Если БухИтоги.СКД("К")<СколькоЯХочуСписать Тогда ФлагСПисанияТовара = 0; Прервать; КонецЕсли; КонецЦикла; Если ФлагСПисанияТовара=0 Тогда Сообщить("товар в жопе!"); КонецЕсли; КонецЦикла; |
|||
102
zak555
28.04.09
✎
18:34
|
БухИтоги = СоздатьОбъект( "БухгалтерскиеИтоги" );
БухИтоги.ИспользоватьСубконто( ВидыСубконто.Местахранения,Место,2 ); БухИтоги.ИспользоватьСубконто( ВидыСубконто.Номенклатура,,1 ); ДатаНач = ТекущийДокумент(); ДатаКон = КонецРассчитанногоПериодаБИ(); БухИтоги.ВыполнитьЗапрос( ДатаНач, ДатаКон, "41.1",,,1, "Операция",4 ); ВыбратьСтроки(); Пока ПолучитьСтроку()=1 Цикл ФлагСПисанияТовара = 1; Если БухИтоги.ПолучитьСубконто(2,, Товар)=0 Тогда ФлагСПисанияТовара = 0; КонецЕсли; Если БухИтоги.ВыбратьПериоды()=0 Тогда Если БухИтоги.СКД("К")<СколькоЯХочуСписать Тогда ФлагСПисанияТовара = 0; КонецЕсли; КонецЕсли; Пока БухИтоги.ПолучитьПериод() = 1 Цикл Если БухИтоги.СКД("К")<СколькоЯХочуСписать Тогда ФлагСПисанияТовара = 0; Прервать; КонецЕсли; КонецЦикла; Если ФлагСПисанияТовара=0 Тогда Сообщить("товар в жопе!"); КонецЕсли; КонецЦикла; |
|||
103
zak555
28.04.09
✎
18:43
|
БухИтоги.ИспользоватьСубконто( ВидыСубконто.Номенклатура, СпНом );
|
|||
104
zak555
28.04.09
✎
18:48
|
БухИтоги.ИспользоватьСубконто( ВидыСубконто.Номенклатура, СпНом, 1 );
кстати, а может вообще идти сначало по периодам, а потом по номенклатуре + сделать проверку по количеству сколько хочу списать и сколько на операции остаток: ВсегоСколькоЯХочуСписать = Итог("Количество"); Пока БухИтоги.ПолучитьПериод() = 1 Цикл Если ВсегоСколькоЯХочуСписать>БухИтоги.СКД(3) Тогда ФлагСПисанияТовара = 0; КонецЕСли; |
|||
105
у лю 427
28.04.09
✎
19:09
|
Ну вот.... Еще одного дятла засосало и он начал производство долбанины....
|
|||
106
birkoFFFF
29.04.09
✎
11:52
|
(85) а еще редкий геморрой и в итоге по щапке от начальства и бесконечное нытье от бухов ...
(96) Ха и еще раз ха... Ответ на вопрос "что мешает расходники вбить сразу???" при вашем кол-ве документов это не "большой документооборот", это обычная человеческая лень и разгильдяйство... Чувствую скоро выйдет очередная "гениальная" нетленка, очередного дятла... |
|||
107
selenat
30.04.09
✎
14:07
|
(105) улю, расскажи, в твоем варианте контроля остатков работа с резервированием товара предусмотрена?
|
|||
108
selenat
30.04.09
✎
14:30
|
+(107) Итак вводная. Используем РН ТоварыНаСкладах (например из УТ). Добавив к нему в качестве измерения дату прихода товара на склад. Контроль остатка имеем запросом к остаткам этого регистра на ТА, проверяя остатки с датой прихода раньше исправляемого документа. Это нам позволит не уйти по остаткам в минуса на промежутке от исправляемого дока до ТА.
Вопрос, как к этому контролю прикрутить еще и контроль по зарезеррвированному товару? |
|||
109
selenat
30.04.09
✎
14:39
|
Где супер-мега умы? Подключайтесь. Или все уже водку жрут?
|
|||
110
selenat
30.04.09
✎
14:45
|
Доступный товар - это разность остатка и резерва на складе. Вопрос. Если мы и в регистр ТоварыВРезервеНаСкладах добавим измерение ДатаРезерва, сможем ли мы проконтролировать уход в минуса доступного товара во всем промежутке, беря для этого остатки по этим регистрам только на ТА?
|
|||
111
selenat
30.04.09
✎
14:59
|
Что-то пока не получается представить всех возможных вариантов согласованного движения этих регистров и как это отразится контроле остатков.
Но под такой котроль остатков может быть было бы удобнее вести учет резервов в самом регистре ТоварыНаСкладах. Завести еще измерение ДокументРезерва. Если товар не зарезервирован, то значение этого измерения остается пустым. Когда резервируется товар, то списывается с пустого значение и приходуется на конкртеный документ резерва.... |
|||
112
yukon
30.04.09
✎
15:13
|
(97) Ты чего злой такой?
Тут куда больше вопросов возникает: (0) >бухи постоянно списывают что-либо "задним" числом. Раз учреждение бюджетное, и т.к. в бюджетных организациях требования к оформелению гораздо строже чем в хозрасчете: 1. Кто составляет акты на списание? Просто так акт на списание не составишь 2. Кто подписывает такие акты? Там комиссия целая должна быть 3. Кто предоставляет их в бухгалтерию? Вообще-то есть понятие "материально-ответственное лицо" 4. Как происходит (организационно) отражение таких актов в программе? Ну типа бух к акту списания цепляет распечатку из программы |
|||
113
Feanor
30.04.09
✎
15:17
|
Даже если получицца так сделать, то будет нихилая переделка типовых механизмов, чего бы не хотелось
|
|||
114
selenat
30.04.09
✎
15:28
|
(113) это так конечно. Но хотелось бы понять принцип, как можно сделать. Впрочем, если на основе этих идей получится не объединять 2 регистра в 1, то может быть и не такие уж глобальные будут изменения в типовой. Там ведь есть еще всякие ТоварыКПередачеСоСкладов. Если поймем механизм для 2 регистров, то может быть и обобщить удастся...
|
|||
115
lals
30.04.09
✎
19:17
|
(96) То разве много, у меня на рыбном цеху ни одна машина не выедет через проходную без расходной ннакладной на каждый рыбий хвост.
Себестоимость слетает реально при том что производство забивают только с 8-00 до 16-00 а цех работает круглые сутки. И бывают ситуевины когда продукция сделана по факту но документа производства ее еще нет, а ее уже отправили, Выходим из ситуации так: Технолог утром выбивает минусы по складу, чт о продали а еще не произвели, срочно делает документы производство и передачи на склад, но не парится с себестоимостью, Время и дата на компе технолога отстают на 18 часов, тоесть она их проводит в правильной последовательности (до продажи) И раз в месяц перепроводит доки ( производство, передача в склад, реализация) Если последовательность соблюдена перепроводка выравнивает все косяки с себестоимостью, и она ставит запрет редактирования на последнее число. Менять запрет редактирования имеют право только технолог и глав бух. И слава боги и Нуралиеву все идет гладко. |
|||
117
Мимохожий Однако
30.04.09
✎
23:00
|
Проводи только то, количество, которое есть в остатке на последний проведенный документ. С суммой тоже можно сообразить. Последовательность не нужна :-)
|
|||
118
Злопчинский
01.05.09
✎
02:10
|
все равно ничего не понятно...
|
|||
119
MAKizKZ
01.05.09
✎
07:38
|
Лень кодировать, словами для одного субконто:
1)Записать док, получим время 2)Получаем СНД на позицию документа 3)вычитаем списываемое количество на доке 4) Бежим по операциям вперед в будущее, дебетовые обороты прибавляем, кредитовые вычитаем, как только спотыкаемся об отрицательное значение на пунктах 3, 4 горланим, что проведение невозможно (79) Машина времени поворачивается назад ВОЗВРАТОМ ОТ ПОКУПАТЕЛЯ + указанием командиров_И_начальников о непременном приеме этого товара. |
|||
120
selenat
04.05.09
✎
16:44
|
Для одного регистра остатков мы с Феанором задачу вроде решили. Улю, как насчет резервов. У тебя используются?
|
|||
121
ado
04.05.09
✎
17:08
|
Не, народ, если вы можете спокойно жить не забив вовремя приходный/расходный документ, значит оперативные данные по остаткам вам просто не нужны. Так почему бы, в таком случае, просто не проводить все приходы/расходы перед закрытием периода?
|
|||
122
selenat
04.05.09
✎
17:25
|
(121) т.е. ты считаешь, что объективно всегда можно обойтись без работы задним числом?
ЗЫ я согласен, что большая часть проблем вознивает просто из-за безалаберности и неправильной организации бизнеспроцессов. Соответственно, решается разграничием прав и административными мерами. Но ведь не все же... |
|||
123
у лю 427
04.05.09
✎
18:53
|
Работа с резервами у меня есть...
Да вот тлько резервы у меня 2-х категорий - жесткие и мягкие |
|||
124
Torquader
04.05.09
✎
20:07
|
А если у нас по товару есть движения вверх (приход) и движения вниз (расход), то можно получить по этим данным минимальное за период значение для товара на складе. И если при проведении документа списания оно остаётся положительным (или неотрицательным), то заведомо можно списать указанное количество товара в любой точке интервала времени.
Если к этому нужны резервы, то резервы действуют как виртуальные списания (то есть просто уменьшают минимум). Другой вопрос в том, что момент продажи, момент производства, момент отгрузки и момент ввода документов могут сильно различаться по времени, и, если кто-то продал товар, которого ещё нет на складе физически, то как бы мы не мучили программу учёта - товар не появится. В таком случае проще хранить в документе две даты - дату ввода и фактическую дату выполнения действия. |
|||
125
selenat
04.05.09
✎
21:59
|
(123) ты всегда отвечаешь так, что вопросов становится больше, чем ответов. :)))
(124) че-то ни асилил... |
|||
126
Cthulhu
04.05.09
✎
23:24
|
тихо намекаю: а если попробовать прикрутить к решению проблемы не только бухгалтерские итоги?..
|
|||
127
Злопчинский
05.05.09
✎
02:12
|
(124) лабуда... какая нафиг разница - делать кучу расчетов во время проведения или во воремя восстановления ГП...??? где выигрыш по времени?
|
|||
128
selenat
06.05.09
✎
09:25
|
(126) ты сейчас про какую проблему? А то мы тут уже давно уже про УТ говорить начали...
|
|||
129
selenat
06.05.09
✎
10:07
|
В общем, если мы работаем с одним регистром, то все вроде красиво получается. Ввод нового измерения в виде даты прихода позволяет при расходном движении проверять остатки только на ТА. Про приходном движении чуть сложнее. Придется проверять остатки на 2 даты и возможно делать корректирующие движения. Вопрос в том, как быть с 2 регистрами, т.е. при учете регистра резервов. Получится ли решить задачу введя и в нем дополнительное измерение в виде даты?
(123) в чем суть "жесткости" и "мягкости" твоих резервов рассказать можешь? |
|||
130
selenat
06.05.09
✎
10:07
|
(118) проверь почту...
|
|||
131
selenat
06.05.09
✎
10:49
|
че, уже никому тема не интересна? Для активного обсуждения всем тема сисек нужна?
|
|||
132
selenat
06.05.09
✎
12:56
|
типа апа. Ни у кого мыслей не появилось?
|
|||
133
selenat
06.05.09
✎
17:15
|
ладно, давайте тогда про сиськи штоле...
|
|||
134
selenat
07.05.09
✎
09:31
|
я здесь один? здесь есть кто-нибудь еще?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |