Murlo Ierakstīts Aprīlis 23, 2018 Share Ierakstīts Aprīlis 23, 2018 Sveiki! varbūt kāds var palīdzēt atrisināt problēmu. No supporta puses ir uztaisīts gatavs packages gethistorychanges Ar select atlasu vajadzīgos id, kurus ievietojot pa vienam gatavajā gethistorychages, iegūstu vērtības. Viss tik tālu forši, bet ja vajag pārbaudīt 1000 id numurus, tad nav go variants Kā var salikt A selectā iegūtos id numurus ar sekojošu selectu? select izmainas_datums, izmainas_iemesls, procesa_numurs, vertiba_pirms, vertiba_pec from table(getcitemhistorychanges( cast (id as number))) where izmainas_iemesls = 'Klienta_lugums Mēģināju uztaisīt dažādi funkciju, bet prāts par īsu. Viens no piemēriem create or replace function get_izmainas_iemesls (p_in_id in number) return varchar2 is p_out varchar2; begin select 'values' into p_out from (table(xxx.contract.getcitemhistorychanges ((select p_in_id from dual) as number))); return p_out; end; 1 Link to comment Share on other sites More sharing options...
Ronalds Aprīlis 23, 2018 Share Aprīlis 23, 2018 Kaut kā murgaini izklausās.... Mēģini precizēt ko vajag panākt. Link to comment Share on other sites More sharing options...
basic Aprīlis 23, 2018 Share Aprīlis 23, 2018 pirms 2 stundām , Murlo teica: Ar select atlasu vajadzīgos id, kurus ievietojot pa vienam gatavajā gethistorychages, iegūstu vērtības. Tieši to pašu ir jādara vajadzīgajā selektā: select izmainas_datums, izmainas_iemesls, procesa_numurs, vertiba_pirms, vertiba_pec, getcitemhistorychanges( cast (id as number)) AS history from table where izmainas_iemesls = 'Klienta_lugums Link to comment Share on other sites More sharing options...
Murlo Aprīlis 23, 2018 Author Share Aprīlis 23, 2018 funkcija getcitemhistorychanges atgriež laukus izmainas_datums, izmainas_iemesls, procesa_numurs, vertiba_pirms, vertiba_pec ar aizpilditām vērtībām pēc id numura mēģināju arī pēc tava ieteikuma, rezultāts [1]:(Error): OCI-21700: object does not exist or is marked for delete. Link to comment Share on other sites More sharing options...
basic Aprīlis 23, 2018 Share Aprīlis 23, 2018 Nu, ja tā atgriež tabulu, tad funkciju var pievienot selektā ar CROSS APPLY konstrukciju: select izmainas_datums, izmainas_iemesls, procesa_numurs, vertiba_pirms, vertiba_pec from table t CROSS APPLY getcitemhistorychanges(cast (t.id as number)) where izmainas_iemesls = 'Klienta_lugums Link to comment Share on other sites More sharing options...
Recommended Posts
Izveido kontu, vai pieraksties esošajā, lai komentētu
Jums ir jābūt šī foruma biedram, lai varētu komentēt tēmas
Izveidot jaunu kontu
Piereģistrējies un izveido jaunu kontu, tas būs viegli!
Reģistrēt jaunu kontuPierakstīties
Jums jau ir konts? Pierakstieties tajā šeit!
Pierakstīties tagad!