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.xnm

...

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_GoBack Image Removed
(Aşağıdaki bölüm yeşil olabilir)Image Added


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

Wiki MarkupPrimitive tipteki değişkenlerin değerlerine erişmek için akış tarafında herhangi bir işlem gerekmemektedir. *Sorgu* <span style="color: #0000ff">SELECT</span> INSTANCEDATA<span style="color: #808080">.</span><span style="color: #0000ff">value</span><span style="color: #808080">(</span><span style="color: #ff0000"><ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="dd7a3cd1-9bd1-4c56-9a51-556abbd046e8"><ac:plain-text-body><![CDATA[

Sorgu

SELECT  INSTANCEDATA.value('(/root//LFlow_NFormActivity1_initUser/node())\[1\]',

, 'nvarchar(max)') as \ [Baslatan Kullanıcı\],

INSTANCEDATA.value( Wiki Markup'(/root//Toplam/node())\[1\]', 'nvarchar(max)') as \ [Masraf Tutarı\],

INSTANCEDATA.value( Wiki Markup'(/root//AlinanAvans/node())\[1\]', 'nvarchar(max)') as \ [Alınan Avans\]

FROM \ [LFLOW\].\[dbo\].\[NWFLOGMASTER\]

where INSTANCEUNIQUEID ='107527' (Aşağıdaki notu uyarı tipinde gösterelim) Not: unmigrated-wiki-markup


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

Wiki MarkupTablo 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.) !worddavbb4235b1f17ecd6f3f383bc322563263.png|height=382,width=602! *Sorgu* <span style="color: #0000ff">select</span> X<span style="color: #808080">.</span>query<span style="color: #808080">(</span><span style="color: #ff0000">'RowId'</span><span style="color: #808080">).</span><span style="color: #0000ff">value</span><span style="color: #808080">(</span><span style="color: #ff0000">'.'</span><span style="color: #808080">,</span> <span style="color: #ff0000">

Image Added


Sorgu

select X.query('RowId').value('.', 'varchar(250)'</span><span style="color: #808080">)</span> <span style="color: #0000ff">as</span> \[RowId\]<span style="color: #808080">,</span> X<span style="color: #808080">.</span>query<span style="color: #808080">(</span><span style="color: #ff0000">'Tarih'</span><span style="color: #808080">).</span><span style="color: #0000ff">value</span><span style="color: #808080">(</span><span style="color: #ff0000">'.'</span><span style="color: #808080">,</span> <span style="color: #ff0000">) as [RowId],

          X.query('Tarih').value('.', 'varchar(250)'</span><span style="color: #808080">)</span> <span style="color: #0000ff">as</span> \[Tarih\]<span style="color: #808080">,</span> X<span style="color: #808080">.</span>query<span style="color: #808080">(</span><span style="color: #ff0000">'HarcamaNedeni'</span><span style="color: #808080">).</span><span style="color: #0000ff">value</span><span style="color: #808080">(</span><span style="color: #ff0000">'.'</span><span style="color: #808080">,</span> <span style="color: #ff0000">) as [Tarih],

X.query('HarcamaNedeni').value('.', 'varchar(250)'</span><span style="color: #808080">)</span> <span style="color: #0000ff">as</span> \[HarcamaNedeni\]<span style="color: #808080">,</span> X<span style="color: #808080">.</span>query<span style="color: #808080">(</span><span style="color: #ff0000">'Tutar'</span><span style="color: #808080">).</span><span style="color: #0000ff">value</span><span style="color: #808080">(</span><span style="color: #ff0000">'.'</span><span style="color: #808080">,</span> <span style="color: #ff0000">'float'</span><span style="color: #808080">)</span> <span style="color: #0000ff">as</span> \[Tutar\]<span style="color: #808080">,</span> X<span style="color: #808080">.</span>query<span style="color: #808080">(</span><span style="color: #ff0000">'Yakt'</span><span style="color: #808080">).</span><span style="color: #0000ff">value</span><span style="color: #808080">(</span><span style="color: #ff0000">'.'</span><span style="color: #808080">,</span> <span style="color: #ff0000">'bit'</span><span style="color: #808080">)</span> <span style="color: #0000ff">as</span> \[Yakt\]<span style="color: #808080">,</span> X<span style="color: #808080">.</span>query<span style="color: #808080">(</span><span style="color: #ff0000">'Ulasim'</span><span style="color: #808080">).</span><span style="color: #0000ff">value</span><span style="color: #808080">(</span><span style="color: #ff0000">'.'</span><span style="color: #808080">,</span> <span style="color: #ff0000">'bit'</span><span style="color: #808080">)</span> <span style="color: #0000ff">as</span> \[Ulasim\]<span style="color: #808080">,</span> X<span style="color: #808080">.</span>query<span style="color: #808080">(</span><span style="color: #ff0000">'Agirlama'</span><span style="color: #808080">).</span><span style="color: #0000ff">value</span><span style="color: #808080">(</span><span style="color: #ff0000">'.'</span><span style="color: #808080">,</span> <span style="color: #ff0000">'bit'</span><span style="color: #808080">)</span> <span style="color: #0000ff">as</span> \[Agirlama\]<span style="color: #808080">,</span> X<span style="color: #808080">.</span>query<span style="color: #808080">(</span><span style="color: #ff0000">'Otel'</span><span style="color: #808080">).</span><span style="color: #0000ff">value</span><span style="color: #808080">(</span><span style="color: #ff0000">'.'</span><span style="color: #808080">,</span> <span style="color: #ff0000">'bit'</span><span style="color: #808080">)</span> <span style="color: #0000ff">as</span> \[Otel\]<span style="color: #808080">,</span> X<span style="color: #808080">.</span>query<span style="color: #808080">(</span><span style="color: #ff0000">'Yemek'</span><span style="color: #808080">).</span><span style="color: #0000ff">value</span><span style="color: #808080">(</span><span style="color: #ff0000">'.'</span><span style="color: #808080">,</span> <span style="color: #ff0000">'bit'</span><span style="color: #808080">)</span> <span style="color: #0000ff">as</span> \[Yemek\] <span style="color: #0000ff">from</span> NWFLOGMASTER <span style="color: #808080">cross</span> <span style="color: #808080">apply</span> INSTANCEDATA<span style="color: #808080">.</span>nodes<span style="color: #808080">(</span><span style="color: #ff0000">) 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'</span><span style="color: #808080">)</span> <span style="color: #0000ff">AS</span> P<span style="color: #808080">(</span>X<span style="color: #808080">)</span> <span style="color: #0000ff">where</span> INSTANCEUNIQUEID <span style="color: #808080">=</span><span style="color: #ff0000">'107527'</span> (Aşağıdaki notu uyarı tipinde gösterelim) Not: <span style="color: #c00000">)

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