TR Türkçe EN English

İçe/dışa aktarmada ID numaraları

ID numarasındaki yıldız işareti ne anlama gelir?
aSc Timetables'tan XML dosyasına aktarım yaparken, dışa aktarılan ID numaralarının *1, *2, *3 şeklinde göründüğünü görebilirsiniz. Bunlara "geçici ID numaraları" denir. Bu numaralar, aktarım sırasında henüz herhangi bir ID numarası atanmamış nesnelere verilir. "Geçici" olarak adlandırılmalarının sebebi, yalnızca o belirli aktarım için geçerli olmalarıdır. Aynı ders programını bir sonraki sefer aktardığınızda, aynı nesne için farklı bir geçici ID alabilirsiniz.

Bu geçici ID'ler, tablolardaki satırlar arasında bağlantı sağlamak için gereklidir; örneğin bir ders satırı, "teacherid" sütunundaki geçici ID aracılığıyla öğretmenler tablosuna bağlanabilir.

Gerçek ID numaralarının dışa aktarılmasını istiyorsanız, "idprefix" adı verilen ayarı yapılandırmanız gerekir.

IDPREFIX - aSc Timetables'ın ID numaralarınızı nerede saklayacağını nasıl belirtirsiniz?
aSc Timetables'a içe aktarmak istediğiniz XML'i oluştururken, genel "idprefix" seçeneğini doldurmanız gerekir. Örnek:

<timetable importtype="database" options="idprefix:MyApp" displayname="MyApp sample XML configuration" displaycountries="us">

Idprefix seçeneği, aSc Timetables'ın ID numaralarınızı nerede saklayacağını belirtir. Yukarıdaki örnekte, ID numaralarınız "MyApp ID" adlı özel bir alanda saklanacaktır.
Ayrıca bakınız: Özel alanlar

Aktarım sırasında idprefix nasıl belirtilir
aSc Timetables'ın varsayılan XML aktarımını kullandığınızda, her zaman geçici ID'ler dışa aktarılır (çünkü dahili olarak idprefix, %TEMPID olarak ayarlanmıştır). Aktarım için idprefix belirtmek istiyorsanız, kendi XML aktarım yapılandırma dosyanızı oluşturmanız gerekir. Bu dosyalar C:\timetables\template\xmlexport\ dizininde saklanır. Örneği sample.xml dosyasında bulabilirsiniz.

Özel idprefix değerleri
%NAME - ID, nesnenin adında saklanır.
%SHORTNAME - ID, nesnenin kısa adında saklanır.
%NUMBER - ID, nesnenin numara alanında saklanır.
%TEMPID - ID numaraları ders programında saklanmaz (varsayılan budur).

idprefix değerini "idcf:" tablo seçeneğiyle her bir tablo için ayrı ayrı da belirtebilirsiniz. Örneğin öğrencilerin ID numaralarını "number" alanında saklamak isterseniz, şunu kullanmanız yeterlidir:

<students options="canadd,idcf:%NUMBER" columns="....">

Not: ID bir özel alanda saklandığında "idprefix:" ile "idcf:" arasında bir fark vardır. "idprefix:MyApp" ile aSc Timetables sona " ID" ekler, ancak "idcf:" ile özel alanın tam adını kullanmanız gerekir: "idcf:MyApp ID".

Belgeler
Daha fazla ayrıntıyı burada bulabilirsiniz. "Types - id", "Database options - idprefix" ve "Table options - idcf" bölümlerine bakın.