Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Database üzerinde LOGMASTER tablosundaki INSTANCEDATA kolonu kullanılarak akış üzerindeki değişkenlerin değerlerine ulaşılabilmektedir. Akış ile ilgili değerler bu kolon üzerinde xml XML olarak tutulmaktadır ve değerlere ulaşmak için xml XML içeriği parse etmek gerekmektedir. (Aşağıdaki bölüm

Info

...

Aşağıdaki örnek akışı içeri aktarıp,

...

SQL sorguları üzerinden verilere nasıl erişileceğine dair kullanımları görebilirsiniz.

Akış: SQL Üzerinden Verilere Erişme.

...

nxm

Warning
Sorgularda kullanılan INSTANCEUNIQUEID değeri portalde başlatılan iş numarasına denk gelmektedir.

Örnek olarak kullanılan işin ekran görüntüsü;

Image Modified

Örnek olarak kullanılan işin INSTANCEDATA verisi;

Anchor_GoBack_GoBackImage Modified (Aşağıdaki bölüm yeşil olabilir)



Tip

1.Primitive Tipteki Değişkenlere Erişmek

...

Primitive

...

tipteki

...

değişkenlerin

...

değerlerine

...

erişmek

...

için

...

akış

...

tarafında

...

herhangi

...

bir

...

işlem

...

gerekmemektedir.

...

Sorgu

SELECT  INSTANCEDATA.value('(/root//LFlow_NFormActivity1_initUser/node())

...

[1

...

]',

...

'nvarchar(max)') as

...

[Baslatan Kullanıcı

...

],

INSTANCEDATA.value(

...

'(/root//Toplam/node())

...

[1

...

]'

...

, 'nvarchar(max)') as

...

[Masraf Tutarı

...

],

INSTANCEDATA.value(

...

'(/root//AlinanAvans/node())

...

[1

...

]'

...

, 'nvarchar(max)') as

...

[Alınan Avans

...

]

FROM

...

[LFLOW

...

].

...

[dbo

...

].

...

[NWFLOGMASTER

...

]

where INSTANCEUNIQUEID ='107527'

...


Warning
'(/root//AlinanAvans/node())

...

[1

...

]'

...

, 'nvarchar(max)'bu ifadedeki AlinanAvans akışta kullanılan avans değişkeninin adıdır.

...


Sonuç

Image Added


2.Tablo Değişkenindeki Verilere Erişmek

...

Tablo

...

değişkenindeki

...

verilere

...

erişmek

...

isteniyorsa,

...

akış

...

tasarlanırken

...

tablo

...

içeriğinin

...

büyük

...

metin

...

değişkenine

...

aktarılması

...

gerekmektedir.

...

Aktarım

...

işlemi;

...

BuyukMetinDegiskeni.Value

...

=

...

Tablo.XmlSerialize();

...

komutu

...

ile

...

sağlanmaktadır.

...

(Yukarıdaki

...

örnek

...

akışta

...

kullanımı

...

mevcuttur.)

...

Image Added


Sorgu

select X.query('RowId').value('.', 'varchar(250)'

...

) as [RowId],

          X.query('Tarih').value('.', 'varchar(250)'

...

) as [Tarih],

X.query('HarcamaNedeni').value('.', 'varchar(250)'

...

) as [HarcamaNedeni],

X.query('Tutar').value('.', 'float') as [Tutar],

X.query('Yakt').value('.', 'bit') as [Yakt],

X.query('Ulasim').value('.', 'bit') as [Ulasim],

X.query('Agirlama').value('.', 'bit') as [Agirlama],

X.query('Otel').value('.', 'bit') as [Otel],

X.query('Yemek').value('.', 'bit') as [Yemek]

from NWFLOGMASTER

cross apply

INSTANCEDATA.nodes('/root/TabloIcerik/SpecialTableXmlData/HarcamaBilgileri/Row'

...

)

AS P(X)

where INSTANCEUNIQUEID ='107527'


Warning
'/root/TabloIcerik/SpecialTableXmlData/HarcamaBilgileri/Row'

...

bu

...

ifadedeki TabloIcerik akışta kullanılan büyük metnin adı, HarcamaBilgileri ise akışta kullanılan tablonun adıdır.


Image Added