Re: Memo-поле таблицы x$journal
Добавлено: 23 дек 2011, 13:07
Robis
Я делаю копию журнала в другую таблицу. В мемо поле журнала хранятся старые/новые значения. Есть готовые, удобные функции, с помощью которых получаются эти значения из мемо (GetNewFieldValueFromJournal, GetOldFieldValueFromJournal). Наконец, есть уже готовый код, который не хочется переделывать, так же не хочется плодить хранимки для доступа к таблицам J$XXXX. И напоследок... есть банальный интерес где же хранится мемо для этой таблицы.
Re: Memo-поле таблицы x$journal
Добавлено: 23 дек 2011, 14:54
Den
Запустил посмотрел, ткнувишь на первую под руку попавшуюся запись журнала в саппорте....(изменение spsopr)
Видимо вот это код запроса нужных данных :
declare @p1 int
set @p1=180150043
declare @p3 int
set @p3=4
declare @p4 int
set @p4=1
declare @p5 int
set @p5=-1
exec sp_cursoropen @p1 output,N'SELECT F$NREC,F$ATL_LASTDATE,F$ATL_LASTTIME,F$ATL_LASTUSER,F$ATL_ORIGINOFFICE,F$ATL_OWNER,F$ATL_BRANCH,F$FILIALNO,F$CSPSOPR,F$NPP,F$PRMC,F$CMCUSL,F$COTPED,F$CALTED,F$CPARTY,F$CVAL,F$CPRICELIST,F$KOL,F$KOLOPL,F$OSTKOL,F$PRICE,F$PROCUB,F$CPERSONS,F$MANUALTAX,F$CGRNAL,F$CCELLVAL,F$CTRANSP,F$NVAGON,F$NKVIT,F$NSERTIF,F$SUMAVT,F$CVALAVT,F$CMASED,F$CMASVID,F$NETTO,F$MTARA,F$CRESOTGR,F$CSPDOCS,F$CSOPR,F$DSOPR,F$DOPRTTN,F$VIDSOPR,F$KOL2,F$VPRICE,F$KOLFACT,F$KOLFACT2,F$KOLNORMA,F$OILPLOT,F$OILTEMPER,F$CSPORDER,F$PROCNAC,F$CSPSTEP,F$SUMNDS,F$SUMVNDS,F$RPRICE,F$RVPRICE,F$CSPNZAKAZ,F$CSPSCHF,F$WADOCSP,F$CADOCSP,F$CZAKVOL,F$KOLGRM,F$COTPEDGRM,F$CNMOVECELL,F$COWNER,F$PRVOZ,F$KOLPOV,F$CGPSOPR,F$KOLDOP,F$CUKS,F$WMCPROP,F$PRICEN,F$VPRICEN,F$MANUALNALUCH,F$CPODR,F$CMOL,F$LASTDATE,F$LASTTIME,F$RESERVE FROM J$1110(FASTFIRSTROW) WHERE J#NRec=@P1 ORDER BY J#NRec,J#Flag',@p3 output,@p4 output,@p5 output,N'@P1 binary(8)',0x80010000015520A7
select @p1, @p3, @p4, @p5
если его обыграть в MSSQL студио
SELECT F$NREC,F$ATL_LASTDATE,F$ATL_LASTTIME
,F$ATL_LASTUSER,F$ATL_ORIGINOFFICE,F$ATL_OWNER,F$ATL_BRANCH,
F$FILIALNO,F$CSPSOPR,F$NPP,F$PRMC,F$CMCUSL,F$COTPED,F$CALTED,
F$CPARTY,F$CVAL,F$CPRICELIST,F$KOL,F$KOLOPL,F$OSTKOL,F$PRICE,
F$PROCUB,F$CPERSONS,F$MANUALTAX,F$CGRNAL,F$CCELLVAL,F$CTRANSP,
F$NVAGON,F$NKVIT,F$NSERTIF,F$SUMAVT,F$CVALAVT,F$CMASED,F$CMASVID,
F$NETTO,F$MTARA,F$CRESOTGR,F$CSPDOCS,F$CSOPR,F$DSOPR,F$DOPRTTN,
F$VIDSOPR,F$KOL2,F$VPRICE,F$KOLFACT,F$KOLFACT2,F$KOLNORMA,F$OILPLOT
,F$OILTEMPER,F$CSPORDER,F$PROCNAC,F$CSPSTEP,F$SUMNDS,F$SUMVNDS,
F$RPRICE,F$RVPRICE,F$CSPNZAKAZ,F$CSPSCHF,F$WADOCSP,F$CADOCSP,F$CZAKVOL
,F$KOLGRM,F$COTPEDGRM,F$CNMOVECELL,F$COWNER,F$PRVOZ,F$KOLPOV,F$CGPSOPR
,F$KOLDOP,F$CUKS,F$WMCPROP,F$PRICEN,F$VPRICEN,F$MANUALNALUCH,F$CPODR
,F$CMOL,F$LASTDATE,F$LASTTIME,F$RESERVE
FROM J$1110(FASTFIRSTROW) WHERE J#NRec=0x80010000015520A7 ORDER BY J#NRec,J#Flag
то возвращается 2 записи - одна "до изменения" другая "после"
Re: Memo-поле таблицы x$journal
Добавлено: 23 дек 2011, 15:56
Robis
Толи я непонятно выражаюсь, толи меня не понимают. Этот способ понятен, но для него придётся модифицировать код и писать хранимки. Это раз.
И два. Он так и не объяснил где находится в базе мемо поле таблицы x$journal. А именно о нём мы и говорим, в чём можно удостовериться, взглянув на название темы.