Количество по позиции
Модераторы: m0p3e, edward_K, Модераторы
-
- Постоянный обитатель
- Сообщения: 188
- Зарегистрирован: 04 апр 2009, 15:56
- Откуда: сАРАТОВ
- Контактная информация:
Количество по позиции
Накладная на отпуск сырья, во входящих к ней производственный заказ по позициям.
В средней части позиций входящего документа никак не могу найти количество к исполнению. В нижней части нашла, а в средней ну никак. spmnpl.nrec == valspmnp.cspmnpl ,valspmnp.kol - относится к входящему заказу, но при выборе позиций во входящих количество изменяется и не совпадает с количеством в заказе. Подскажите, пожалуйста, как найти количество к исполнению в средней панели.
select katsopr.NSOPR,SpObjAcc.KOLCFACT,spobjAcc.KOLCPOS,mnplan.number,katmc.name,spmnpl.NUMBER
from katsopr,SpMnPlan,mnplan,SpMnPl,SpObjAcc
where
((
comp(000200000000A10Dh)==katsopr.nrec
and katsopr.nrec==objacct.cowner
and objacct.cobject==mnplan.nrec
and mnplan.nrec == SpMnPlan.cMnPlan
and SpMnPlan.Nrec == SpMnPl.cSpMnPlan
and 23 == SpMnPl.wKolAn
and 1 == SpObjAcc.Kindrec
and 18 == SpObjAcc.typePos // тип текущей позиции
and SpMnPl.Nrec == SpObjAcc.cPos
and 45 == SpObjAcc.typeObj // тип позиции накладной
and 501 == SpObjAcc.VidSopr // накладная на отпуск сырья
and katsopr.nrec==spsopr.csopr
and spsopr.CMCUSL==katmc.nrec
))
and spsopr.nrec=spObjAcc.cobject
;
В средней части позиций входящего документа никак не могу найти количество к исполнению. В нижней части нашла, а в средней ну никак. spmnpl.nrec == valspmnp.cspmnpl ,valspmnp.kol - относится к входящему заказу, но при выборе позиций во входящих количество изменяется и не совпадает с количеством в заказе. Подскажите, пожалуйста, как найти количество к исполнению в средней панели.
select katsopr.NSOPR,SpObjAcc.KOLCFACT,spobjAcc.KOLCPOS,mnplan.number,katmc.name,spmnpl.NUMBER
from katsopr,SpMnPlan,mnplan,SpMnPl,SpObjAcc
where
((
comp(000200000000A10Dh)==katsopr.nrec
and katsopr.nrec==objacct.cowner
and objacct.cobject==mnplan.nrec
and mnplan.nrec == SpMnPlan.cMnPlan
and SpMnPlan.Nrec == SpMnPl.cSpMnPlan
and 23 == SpMnPl.wKolAn
and 1 == SpObjAcc.Kindrec
and 18 == SpObjAcc.typePos // тип текущей позиции
and SpMnPl.Nrec == SpObjAcc.cPos
and 45 == SpObjAcc.typeObj // тип позиции накладной
and 501 == SpObjAcc.VidSopr // накладная на отпуск сырья
and katsopr.nrec==spsopr.csopr
and spsopr.CMCUSL==katmc.nrec
))
and spsopr.nrec=spObjAcc.cobject
;
-
- Местный житель
- Сообщения: 370
- Зарегистрирован: 28 сен 2006, 15:43
- Откуда: Санкт-Петербург
- Контактная информация:
Re: Количество по позиции
Код: Выделить всё
select
spobjAcc.KOLCPOS
from
ObjAccT
,SpObjAcc
where
((
501 == ObjAccT.VidSopr and
1 == ObjAccT.KindRec and
44 == ObjAccT.typeOwn and
cKatSopr == ObjAccT.cOwner and
17 == ObjAccT.typeObj and
ObjAccT.Nrec == SpObjAcc.cObjAccT and
0 == SpObjAcc.TypeHier
))
;
Последний раз редактировалось Vik 11 фев 2011, 18:02, всего редактировалось 1 раз.
Re: Количество по позиции
Vik, это, вроде бы, будет количество из нижней панели.
А из средней: по-моему, надо ещё одну копию spobjacc присобачить.
А из средней: по-моему, надо ещё одну копию spobjacc присобачить.
Код: Выделить всё
select spobjacc2.kolcpos, ...
from ..., spobjacc spobjacc2, ...
where
((
...
spobjacc.cspobjacc /== spobjacc2.nrec and
...
))
...
-
- Местный житель
- Сообщения: 370
- Зарегистрирован: 28 сен 2006, 15:43
- Откуда: Санкт-Петербург
- Контактная информация:
Re: Количество по позиции
нет, это будет количество из средней панели) Про нижнюю ничего не сказано, поэтому я ее и не включил в выборку.
-
- Постоянный обитатель
- Сообщения: 188
- Зарегистрирован: 04 апр 2009, 15:56
- Откуда: сАРАТОВ
- Контактная информация:
Re: Количество по позиции
Спасибо. Мне нужна и средняя, и нижняя.
Re: Количество по позиции
Vik
Получается, SpObjAcc.TypeHier = 0 - средняя, SpObjAcc.TypeHier = 1 - нижняя?
Получается, SpObjAcc.TypeHier = 0 - средняя, SpObjAcc.TypeHier = 1 - нижняя?
-
- Постоянный обитатель
- Сообщения: 188
- Зарегистрирован: 04 апр 2009, 15:56
- Откуда: сАРАТОВ
- Контактная информация:
Re: Количество по позиции
да, получается, что так
А средняя с нижней как-то тоже связаны?

-
- Местный житель
- Сообщения: 370
- Зарегистрирован: 28 сен 2006, 15:43
- Откуда: Санкт-Петербург
- Контактная информация:
Re: Количество по позиции
Ну, доделать не сложно)sildae писал(а):Спасибо. Мне нужна и средняя, и нижняя.
Код: Выделить всё
select
spobjAcc.KOLCPOS
,SpObjAcc1.KolcPos
from
ObjAccT
,SpObjAcc
,SpObjAcc SpObjAcc1
where
((
501 == ObjAccT.VidSopr and
1 == ObjAccT.KindRec and
44 == ObjAccT.typeOwn and
cSopr == ObjAccT.cOwner and
17 == ObjAccT.typeObj and
ObjAccT.Nrec == SpObjAcc.cObjAccT and
0 == SpObjAcc.TypeHier and
ObjAccT.Nrec == SpObjAcc.cObjAccT and
0 == SpObjAcc.TypeHier and
ObjAccT.Nrec == SpObjAcc1.cObjAccT and
SpObjAcc.Nrec == SpObjAcc1.cSpObjAcc and
1 == SpObjAcc1.TypeHier
))
;
Получается так.RAJAH писал(а):Vik
Получается, SpObjAcc.TypeHier = 0 - средняя, SpObjAcc.TypeHier = 1 - нижняя?