IConditionGenerator::GenerateForLeaf method (structuredquery.h)
Menghasilkan ekspresi kueri khusus untuk apa yang akan menjadi ekspresi kueri daun.
Sintaks
HRESULT GenerateForLeaf(
[in] IConditionFactory *pConditionFactory,
[in] LPCWSTR pszPropertyName,
[in] CONDITION_OPERATION cop,
[in] LPCWSTR pszValueType,
[in] LPCWSTR pszValue,
[in] LPCWSTR pszValue2,
[in] IRichChunk *pPropertyNameTerm,
[in] IRichChunk *pOperationTerm,
[in] IRichChunk *pValueTerm,
[in] BOOL automaticWildcard,
[out] BOOL *pNoStringQuery,
[out, retval] ICondition **ppQueryExpression
);
Parameter
[in] pConditionFactory
Jenis: IConditionFactory*
Objek IConditionFactory yang dapat digunakan untuk membuat simpul yang diperlukan.
[in] pszPropertyName
Jenis: LPCWSTR
Nama properti, atau NULL jika tidak ada nama properti.
[in] cop
Jenis: CONDITION_OPERATION
Jenis enumerasi CONDITION_OPERATION mengidentifikasi operasi.
[in] pszValueType
Jenis: LPCWSTR
Jenis semantik yang menjelaskan nilai dalam pszValue dan pszValue2.
[in] pszValue
Jenis: LPCWSTR
String yang dihasilkan oleh IConditionGenerator::RecognizeNamedEntities yang mewakili nilai . Jika pszValue2 bukan NULL, maka ini mewakili awal rentang nilai.
[in] pszValue2
Jenis: LPCWSTR
Jika bukan NULL, string yang dihasilkan oleh IConditionGenerator::RecognizeNamedEntities yang mewakili akhir rentang nilai. Jika NULL, maka pszValue mewakili nilai diskrit.
[in] pPropertyNameTerm
Jenis: IRichChunk*
Penunjuk ke objek IRichChunk yang berisi informasi tentang bagian apa dari string input yang menghasilkan nama properti.
[in] pOperationTerm
Jenis: IRichChunk*
Penunjuk ke objek IRichChunk yang berisi informasi tentang bagian apa dari string input yang menghasilkan operasi.
[in] pValueTerm
Jenis: IRichChunk*
Arahkan ke objek IRichChunk yang berisi informasi tentang bagian apa dari string input yang menghasilkan nilai.
[in] automaticWildcard
Jenis: BOOL
TRUE jika kondisi yang dihasilkan harus mengembalikan hasil yang dimulai dengan nilai yang ditentukan, jika bermakna. FALSE jika kondisi yang dihasilkan harus mengembalikan hasil yang cocok dengan nilai yang ditentukan dengan tepat.
[out] pNoStringQuery
Jenis: BOOL*
VARIANT_TRUE jika pohon kondisi di ppQueryExpression harus menjadi kueri lengkap, atau VARIANT_FALSE jika kueri lengkap harus menjadi pembedaan pohon kondisi di ppQueryExpression dan pohon kondisi yang akan digunakan jika metode ini telah mengembalikan S_FALSE.
[out, retval] ppQueryExpression
Jenis: ICondition**
Menerima penunjuk ke pohon kondisi ICondition .
Nilai kembali
Jenis: HRESULT
Mengembalikan salah satu dari berikut ini, atau nilai kesalahan sebaliknya.
Menampilkan kode | Deskripsi |
---|---|
|
Berhasil menghasilkan kondisi. |
|
Kondisi tidak dihasilkan, dan pengurai kueri harus menghasilkan satu dengan cara lain. |
Keterangan
Jika metode ini mengembalikan S_FALSE, pengurai kueri panggilan harus menghasilkan simpul daun N dengan nama properti, operasi, dan nilai ini. Jika metode ini mengembalikan S_FALSE dan pNoStringQuery berisi VARIANT_FALSE, kueri yang dihasilkan penuh adalah disjunction (OR) dengan simpul daun N dan pohon kondisi di ppQueryExpression sebagai subkondisi.
Jika metode ini mengembalikan S_OK dan pNoStringQuery berisi VARIANT_TRUE, pohon kondisi di ppQueryExpression adalah kueri lengkap.
Nilai pszValue2 bukan NULL hanya untuk kueri rentang, seperti date:1/2/2003..1/30/2006
, di mana pszValue berisi nilai untuk 1/2/2003 dan pszValue2 berisi nilai untuk 30/1/2006. Generator kondisi dapat memilih untuk menolak rentang dengan selalu mengembalikan S_OK ketika pszValue2 bukan NULL.
Generator kondisi dapat dengan aman mengabaikan argumen pPropertyNameTerm, pOperationTerm, dan pValueTerm. Namun, itu akan menggunakannya untuk menghasilkan simpul daun yang memiliki informasi yang benar tentang asal-usul dalam string kueri nama properti, operator, dan nilai, dengan meneruskannya ke MakeLeaf.
Dalam banyak kasus, generator kondisi dapat mengabaikan argumen automaticWildcard karena tidak akan berlaku. Namun, jika pohon kondisi yang dihasilkan melakukan beberapa bentuk pencarian string, di mana pencarian awalan (COP_VALUE_STARTSWITH dari CONDITION_OPERATION) dan pencarian string yang tepat (COP_EQUAL dari CONDITION_OPERATION) bermakna, maka yang pertama harus dihasilkan ketika automaticWildcardVARIANT_TRUE, dan yang terakhir ketika automaticWildcardVARIANT_FALSE.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows XP dengan SP2, Windows Vista [hanya aplikasi desktop] |
Server minimum yang didukung | Windows Server 2003 dengan SP1 [hanya aplikasi desktop] |
Target Platform | Windows |
Header | structuredquery.h |
Lihat juga
Referensi