Nedir?
Verilen kritere göre ilgili tablodaki verileri getirir..
<SqlSelect Connection="$(MyConnection)" Table="XmlScriptTestPad" TemplatePath="/*/person" Into="/*/details"> <Columns> <Column Name="Name" Node="name"/> <Column Name="Id" Node="surname"/> </Columns> <Where> <Criteria Name="Name"> <Value>gnomes</Value> </Criteria> </Where> </SqlSelect>
Özellikler
Adı | Açıklama | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Connection | Veri tabanı bağlantı parametre bilgisidir. Metod içerisinde oluşturularak veya global değişkenlerde tanımlanabilir. Yönetim kolaylığı ve EBIflow yardımcı araçlarını kullanmak için global değişkenler bölümünden tanımlanması tavsiye edilir. | ||||||||||||||||
Table | İşlem yapılacak tablo adını belirlemenizi sağlar. | ||||||||||||||||
Where | Kriter bloklarının için kullanılır. | ||||||||||||||||
TemplatePath | Form verisi içinde çekilen verinin obje tiplerini gösteren xml yoludur. XPath alır. | ||||||||||||||||
Into | Seçilen verinin çoklu olarak eklendiği xml yoludur. | ||||||||||||||||
Command | Doğrudan SQL cümlesi yazılması gerektiğinde kullanılır. | ||||||||||||||||
Column | Getirilecek değerleri belirler.
| ||||||||||||||||
Criteria | Kriter koşulunu belirler.
| ||||||||||||||||
Diğer | Kullanılan variable açıklamaları,
|
Örnekler
Örneklerde kullanılacak xml örneği.
<sampleData> <person> <age>33</age> <name>john</name> <surname Readonly="True">doe</surname> </person> <details> </details> </sampleData>
XmlScriptTestPad tablosunda bulunan Name alanı gnomes olan sorgudan çekilen Id alanını surname yoluna ve Name alanını name yoluna eşleyerek sonuçları details yolu altına çoklu olarak person tag içerisinde yazmasını sağlar.
<SqlSelect Connection="$(MyConnection)" Table="XmlScriptTestPad" TemplatePath="/*/person" Into="/*/details"> <Columns> <Column Name="Name" Node="name"/> <Column Name="Id" Node="surname"/> </Columns> <Where> <Criteria Name="Name"> <Value>gnomes</Value> </Criteria> </Where> </SqlSelect>
XmlScriptTestPad tablosunda koşulsuz olarak sorgudan çekilen Id alanını surname yoluna ve Name alanını name yoluna eşleyerek sonuçları details yolu altına çoklu olarak person tagı içerisinde yazmasını sağlar.
<SqlSelect Connection="$(MyConnection)" Table="XmlScriptTestPad" TemplatePath="/*/person" Into="/*/details"> <Columns> <Column Name="Name" Node="name"/> <Column Name="Id" Node="surname"/> </Columns> </SqlSelect>
XmlScriptTestPad tablosunda koşulsuz olarak sorgudan çekilen Id alanını surname yoluna ve Name alanını name yolu ile eşleyerek sonuçları details yolu altına çoklu olarak person tagı içerisinde yazmasını sağlar.
Bununla birlikte $(Result) değeri dönen sonuçlarda bulunan Name değerini tutar. Çoklu Name değerine daha sonra BrowseTable ile döngü içerisinde ulaşılabilir.
<SqlSelect Connection="$(MyConnection)" Table="XmlScriptTestPad" TemplatePath="/*/person" Into="/*/details"> <Columns> <Column Name""Name" Node="name"/> <Column Name="Id" Node="surname"/> </Columns> <Perform> <SetVariable Name="$(Result)"> <Value>$(Name)</Value> </SetVariable> </Perform> </SqlSelect>
XmlScriptTestPad tablosundan çekilen değerler xml verisinde kullanılmadan Variable olarak kullanılabilir.
<SqlSelect Connection="$(MyConnection)" Table="XmlScriptTestPad"> <Columns> <Column Name="Name" Node="name"/> <Column Name="Id" Node="surname"/> </Columns> <Perform> <SetVariable Name="$(Result)"> <Value>$(Name)</Value> </SetVariable> </Perform> </SqlSelect>
Doğrudan SQL cümleciğiyle dönen sonuç Variable a atanarak kullanılabilir.
<SqlSelect Connection="$(MyConnection)" Command="SELECT TOP 1 Table1.Id AS TestId,Table1.Name AS TestName FROM XmlScriptTestPad AS Table1"> <Columns> <Column Name="TestName" /> </Columns> <Where> <Criteria Name="Table1.Id"> <Value Target="Integer">2</Value> </Criteria> </Where> <Perform> <SetVariable Name="$(Result)"> <Value>$(TestName)</Value> </SetVariable> </Perform> </SqlSelect>
Not
SQL taskları harici bir veritabanında işlem yaparlar, Table alanlarında direk tablo ismi kullanmanız gerekir, EBIFlow veri şemalarından bağımsız çalışırlar.