Yerel hesaplanan Pivot alanları ve önbelleğe ait öğeler
Bağlam toplamlarından hesaplama
Yerel bir hesaplanan önbellek alanı için yerel önizleme, istenen yaprak, ara toplam ya da genel toplam bağlamında atıf yapılan her veritabanı alanını önce toplar, sonra formülü değerlendirir; bağımlılıklar görüntülenen veri alanlarında bulunmayabilir
Örneğin Amount/Units değerleri 10/1 ve 30/9 olan iki kayıt, 40/10 = 4 yerel hesaplanan alan sonucu üretir; genel toplam, görüntülenen oranları toplamak yerine kendi bağımlılık toplamlarını değerlendirir
Hesaplanan öğeler, diğer satır ve sütun eksenleri dahil her eksiksiz yaprak bağlamında üye atıflarını değerlendirir; ara toplamlar ve genel toplamlar ortaya çıkan üye katkılarını içerir, böylece bir oran öğesi yaprak oranlarının toplamını katkı yapabilir
Elle gizlenmiş bir üye, başka bir hesaplanan öğe ona atıf yaptığında kullanılabilir kalır; kendi katkısı görüntülenen toplamların dışında kalır; A=40 ve B=60 için A'yı gizlemek Combined=A+B değerini yine 100 yapar ve Combined'ı görünür genel toplama dahil eder
Hesaplanan alanlar ve öğeler bir arada bulunduğunda, öğe katkıları önce atıf yaptıkları veritabanı alanı toplamlarını günceller, sonra hesaplanan alan bu güncellenmiş bağlam toplamlarını değerlendirir
Hesaplanan öğeler birkaç gruplanmamış alana ait olabilir; saklanan önbellek tanım sırası, hangi alan formülünün bir kesişimi en son yazdığını belirler, böylece bir tanımı taşımak hem o kesişimi hem görüntülenen toplamları değiştirebilir
Çözümlenemeyen bir hesaplanan üye bağımlılığı, atıf yapıldığında değerlendirilir; buna o sırada daha sonra tanımlanan bir bağımlılık da dahildir; önceki bir adımda hesaplanmış bir üye, başka bir formül ona atıf yaptığında güncel kesişim değerini korur
Yerel alan toplamları Boolean ve metin kaynak değerlerini yok sayar, sayısal ve tarih değerlerini korur ve türlü kaynak hatalarını iletir; tembel IF ve IFERROR, kullanılmayan bir dalı değerlendirmeden bir hatayı işleyebilir
Önbellek sahipliği ve bağlama
| Genel bildirim | Sözleşme |
|---|---|
TXLSPivotCacheCalculatedItem | Önbelleğin sahibi olduğu yerel hesaplanan üye tanımı; sahibi olan önbellek üzerinden elde edin ve ödünç nesneyi kullanırken önbelleği canlı tutun |
TXLSPivotCacheCalculatedItem.FieldIndex: Integer | Salt okunur sıfır tabanlı önbellek alanı kimliği |
TXLSPivotCacheCalculatedItem.ItemIndex: Integer | FieldIndex içinde salt okunur sıfır tabanlı paylaşılan üye kimliği |
TXLSPivotCacheCalculatedItem.Formula: WideString | Oku/yaz yerel üye formülü; atamak modeli değiştirir, önizleme ya da açık bağlama ise hesaplamadan önce söz dizimini ve bağımlılık döngülerini doğrular |
TXLSPivotCacheCalculatedItem.Supported: Boolean | Ayrıştırılan alan kimliğinin salt okunur kullanılabilirliği; her formül ya da görünüm birleşiminin değerlendirilebileceğine dair bir güvence değildir |
TXLSPivotCacheCalculatedItem.RawXml: WideString | Desteklenmeyen bir hesaplanan öğe tanımı için salt okunur korunmuş XML; bilinen türlü tanımlar boş dize kullanır |
TXLSPivotCache.AddCalculatedItem(AFieldIndex, AItemIndex: Integer; const AFormula: WideString): TXLSPivotCacheCalculatedItem | Mevcut bir üye için desteklenen türlü bir tanım oluşturur; geçersiz kimlikleri, boş formülü ya da yinelenen hedef kimliğini reddeder; döndürülen nesne önbelleğe aittir |
TXLSPivotCache.FindCalculatedItem(AFieldIndex, AItemIndex: Integer): TXLSPivotCacheCalculatedItem | Eşleşen ödünç tanımı ya da nil döndürür |
TXLSPivotCache.CalculatedItemCount: Integer | Tutulan desteklenen ya da desteklenmeyen tanımların salt okunur sayısı |
TXLSPivotCache.CalculatedItems[Index: Integer]: TXLSPivotCacheCalculatedItem | Tanım listesine salt okunur sıfır tabanlı ödünç erişim |
TXLSPivotCache.ClearCalculatedItems | Sahiplenilen tanımları serbest bırakır ve ödünç tutamaçları geçersizleştirir; paylaşılan üyeleri kaldırmaz ya da önbellek sorgusu eksiksizliği kurmaz |
TXLSPivotCache.MoveCalculatedItem(AIndex, ANewIndex: Integer) | Mevcut bir tanımı yerel çözüm sırasında sıfır tabanlı konumlar arasında taşır ve ödünç nesne kimliğini korur; geçersiz konumlar tanımları taşımadan EArgumentOutOfRangeException fırlatır |
TXLSPivotCache._AddUnsupportedCalculatedItem(const ARawXml: WideString) | Ayrıştırıcı odaklı koruma kancası; bilinmeyen XML'i saklı tutar ve önbellek sorgu modelini eksiksiz değil olarak işaretler |
TXLSPivotCache.Assign(Source: TXLSPivotCache) | Tanımları, alanları, paylaşılan üyeleri, kayıt indekslerini ve tarih sistemi bağlamını derin kopyalar; kaynak tutamaçları bağımsız kalır ve önbelleğin kendine atanması güvenlidir |
TXLSPivotTable.BindCalculatedItemsToCache | Görünümde yazılmış hesaplanan öğeleri koparılmış bir önbellek üzerinde doğrular ve bağlar, sonra yeni paylaşılan üyeleri ve tanımları canlı önbelleğe ekler; başarısızlık üye kimliklerini ve tanımları değişmeden bırakır, mevcut alan ve üye tutamaçları geçerli kalır |
TXLSPivotField.AddCalculatedItem ile oluşturulan görünüm yazımı bir öğe, yerel somutlaştırma ya da türlü yerel yeniden kurulum öncesinde açık bir BindCalculatedItemsToCache ister; desteklenen bir yerel önbellek tanımını içe aktarmak o sahipliği zaten sağlar
Önbellek bağlaması o önbelleği paylaşan her görünümü etkiler; bu yüzden bunu bir yazma işlemi olarak çağırın ve ödünç tutamaçları yalnızca karşılık gelen liste temizlenene, atanana ya da yok edilene dek koruyun
Üye filtreleri ve görüntü dönüşümleri
Hesaplanan öğe alanında başlık ve değer karşılaştırmaları, üye formülleri çalıştıktan sonra görüntülenen üyeleri seçer; filtrelenmiş kaynak üyeler atıf yapılan formüller için kullanılabilir kalır, görünen ara ve genel toplamlar ise o üyelerin doğrudan katkılarını hariç tutar
Bir değer karşılaştırması hesaplanan bir ölçüyü seçebilir; her aday üye o ölçüyü kaynak kayıt oranlarını toplamak ya da formülü bir önbellek kayıt sütunu saymak yerine kendi bağlam bağımlılık toplamlarından değerlendirir
Hesaplanan öğe sonuçları; yüzdeler, indeks, farklar, yürüyen toplamlar, yürüyen toplam yüzdeleri ve sıralamalar dahil modellenmiş ShowDataAs dönüşümlerini de destekler; gizli üyeler görünür yürüyen ve sıralama dizilerinin dışında kalır, formül atıfları ise özgün değerlerini korur
| Genel bildirim | Sözleşme |
|---|---|
TXLSPivotFilter.DataFieldIsMeasureIndex: Boolean | DataField'ın kimlik etki alanını seçer; False mevcut sıfır tabanlı önbellek alanı kimliğini korur, True sıfır tabanlı bir görüntülenen veri ölçüsü konumunu tanımlar ve yerel iMeasureFld içe aktarıldığında atanır |
TXLSPivotFilter.SourceOrder: Integer | Yerel filters öğesinden korunan oku/yaz sıfır tabanlı genel sıra; yokluğunda -1 varsayılandır; yerel hesaplama ve türlü yazma önce negatif olmayan EvalOrder'ı, sonra SourceOrder'ı, sonra kararlı alan/liste sırasını kullanır |
Türlü yerel yazma, bir önbellek alanı kimliğini görüntülenen ölçü konumuna çevirir; birden çok veri ölçüsü tarafından kullanılan bir önbellek alanı açık bir ölçü konumu ister, aksi hâlde toplama ve görüntü kimliği belirsiz olur
Excel, etkin filtreleri değerlendirme sıralarını filters öğesi dizisi üzerinden koruyarak evalOrder=-1 ile kaydedebilir; içe aktarma, klonlama ve türlü yeniden kurulum bu diziyi korur ve o filtreleri etkin değil saymaz
Alınmış korunmuş bir yerel görünümde filtre tanımını ya da saklanan kaynak konumunu değiştirmek türlü yeniden kurulum ister; sıradan yerel benimsenme, korunan filtre kimliğini doğrular ve rapor hücrelerini yazmadan önce desteklenmeyen düzenlemeleri reddeder
Önizleme, sorgular ve tarih sistemleri
function TXLSPivotTable.MakePreview(AWriter: TlxPivotResultWriter; ALayoutWriter: TlxPivotLayoutWriter; AUseNativeGrandTotals: Boolean = False; ABudget: TlxPivotQueryBudget = nil; ADateSystem: TXLSPivotDateSystem = xlpdsCache): Integer; function TXLSPivotTable.GetDataValue(const ADataField: WideString; const AConstraints: TXLSPivotDataConstraints; ABudget: TlxPivotQueryBudget; out AValue: Variant; ADateSystem: TXLSPivotDateSystem = xlpdsCache): Boolean;
AUseNativeGrandTotals=True ile MakePreview, tam yerel toplamları ve hesaplanan öğe kimliklerini içeren koparılmış bir tablo ve önbellek kullanır; sıradan Make ve varsayılan MakePreview mevcut kayıt tabanlı hesaplama davranışlarını korur
GetDataValue, önbellekte hesaplanan alanlar ya da öğeler varken yerel bağlam toplamlarını kullanır ve GETPIVOTDATA aynı sorgu yolunu paylaşır; iki işlem de kaynak veriyi yenilemez, incelenen çalışma sayfası formüllerini yeniden hesaplamaz ya da rapor hücrelerine yazmaz
| Genel bildirim | Sözleşme |
|---|---|
TXLSPivotCache.Date1904: Boolean | Bağımsız yerel hesaplamalar için oku/yaz kaynak tarih sistemi bağlamı; varsayılanı False'tur ve Classic ile XLSX içe aktarma, çalışma sayfası önbelleği oluşturma ve XLSX önbellek kopyalama sırasında bağlanır |
TXLSPivotDateSystem | Koparılmış yerel önizlemeler ve sorgular için türlü tarih sistemi seçimi |
xlpdsCache | Önbelleğin sakladığı Date1904 bağlamını değiştirmeden kullanır |
xlpds1900 | 1900 tarih sistemini koparılmış hesaplamaya yansıtır |
xlpds1904 | 1904 tarih sistemini koparılmış hesaplamaya yansıtır |
TryXLSXMakeNativePivotLayout(...; ADateSystem: TXLSPivotDateSystem = xlpdsCache): Boolean | Daha alt düzey yerel düzen yardımcısı, ResultXml ve Reason çıktı parametrelerinden sonra aynı koparılmış tarih sistemi seçimini kabul eder |
TXLSGetDate1904 = function: Boolean of object | Sahibi olan çalışma kitabının güncel tarih sistemini okuyan hesaplayıcı üst verisi geri çağırısı |
TXLSCalculator.OnGetDate1904: TXLSGetDate1904 | GETPIVOTDATA'nın kullandığı isteğe bağlı ödünç geri çağırı; nil önbellek bağlamını kullanır, çalışma kitabı değerlendiricileri ve salt okunur görünümleri güncel çalışma kitabı ayarını sağlar |
Bağımsız çağıranlar doğru önbellek Date1904 bağlamını ya da açık bir tarih sistemi seçimini sağlamalıdır; çalışma kitabının sahibi olduğu yerel somutlaştırma ve formül sorguları, canlı önbelleği değiştirmeden güncel çalışma kitabı ayarını yansıtır
Tarih kaynak değerleri önbellekte mutlak TDateTime değerleri olarak kalır; yerel sayısal formüller Excel tarih serilerini kullanır; 1904 sistemi her tarih değerinden 1462 gün çıkarır, 1900 dönüşümü Mart 1900 öncesindeki gösterilebilir tarihleri işler
Kaydedilen yerel çıktı sahipliği tarih sistemi bağlamını kaydeder ve biçimlendirilmiş tarih değerlerini serileştirilmiş sayısal yükleriyle karşılaştırır; kaydetme, yeniden açma ya da çalışma kitabı tarih tabanını değiştirmek meşru sahipliği korur; değişmiş tarih, Boolean, hata ve metin yükleri üzerine yazmayı yine reddeder
Bütçeler ve desteklenmeyen girdi
İsteğe bağlı TlxPivotQueryBudget geri çağırısı; önerilen koparılmış anlık görüntü ve formül deposu dahil iş artışlarını ve güncel bellek tahminini alır; False, EXLSPivotQueryBudget ile durdurur ve geri çağırı istisnaları yukarı iletilir
Kayıt genişlikleri ve veritabanı üyesi kimlikleri kopyalamadan önce denetlenir; formül derlemesi ve değerlendirme iş ücretlendirir; hesaplama sınırlı söz dizimi derinliğini, formül metnini, hesaplanan üye etki alanlarını ve biriktirici depolamayı korur
Hesaplanan öğe planlaması, ayırmadan önce birleşik üye etki alanlarını, başlık depolamayı ve alan planlarını sınırlar; yerel üye değerlendirmesi ve geç toplama filtresi taramaları da sabit sınırlarının üstündeki önerilen işi bu taramalara girmeden reddeder ve bütçe iptali canlı üye maskelerini değişmeden bırakır
Formül ayrıştırıcısı; sayısal sabitleri, alan adlarını, tırnaklı adları, alan nitelemeli üye adlarını, aritmetiği ve karşılaştırmaları, yüzdeyi ve ABS, SQRT, POWER, ROUND, MIN, MAX, SUM, IF, IFERROR, AND, OR ile PI'yi destekler; bilinmeyen işlevler, hücre başvuruları, diziler ve bağlanmamış adlar tahmini değer sağlamak yerine reddedilir
Yerel hesaplanan alanlar SUM veri ölçüleri ister ve satır, sütun ya da sayfa ekseni olamaz; hesaplanan öğeler; gruplanmamış önbellek alanlarında saklanan dize başlıkları, otomatik ya da SUM ara toplamları, SUM ölçüleri ve desteklenen tek üyeli alan kimliği ister
Bilinmeyen formül işlevleri, sıfır olmayan alan fieldPosition, bilinmeyen ya da bozuk alan üst verisi, belirsiz filtre ölçü kimlikleri ve aynı anda etkin temel ile genişletilmiş görüntü dönüşümleri açıkça reddedilir; bu kısıtlamalar desteklenmeyen bir tanımı sıradan bir öğeye çevirmez
Hesaplanan üyelerin geç toplama filtrelemesi modellenmiş değer karşılaştırmalarını destekler; eski sayım, yüzde ve toplam filtre çeşitleri ile modellenmemiş Top n üst verisi, desteklenen bir yerel seçim modeli ister ve kaynak kayıt karşılaştırmalarıyla ikame etmek yerine reddeder
Alınmış ham parçalar, sıradan roundtrip koruması için desteklenmeyen gelecek üst verisini saklı tutar; yerel hesaplama, türlü yeniden kurulum ve anlamsal özellik çıkarımı kullanılabilir bir model ister ve eksik önbellek kayıtlarını üretmek için kaynak veriyi yenilemez
Anlamsal Pivot önbellek tanımları; hesaplanan öğe kimliğini ve formülünü, tarih sistemi bağlamını ve koparılmış sınırlı yükleri içerir; kullanılamayan yerel uzantılar açık bir anlamsal hata olarak kalır