Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

serdar ak QQ

Table of Contents

Alanların Koşullu Gizleme/Görünme Özelliği

Mobidi'de oluşturduğumuz alanları bir koşula bağlayarak gizleyebilir yada görünür hale getirebiliriz.

  • Yeni bir alan oluştururken gelişmiş sekmesine tıklayalım.

  • Gelişmiş sekmesinde "Gösterme Kuralı" veya "Gizleme Kuralı" alanlarına aşağıdaki kuralları yazabiliriz.

...

Conditional Hide or Show a Field

Any field in MOBIDI can be conditionally visible. This I set in Advanced tab in the field. Following is the samples for Show and Hide rules.

Info

field_id value is on the Macro tab.

Örnek

Açıklama

formData['alanfield_id']alan

if field_id alanına değer girildiğinde göster/gizlehas value then show/hide

formData['alanfield_id'] == 'Ankara'

alanif field_id alanının değeri “Ankara” olduğunda göster/gizlehas value of “Ankara” then show/hide

formData['alanfield_id1'] == 'Ankara' && formData['alanfield_id2'] == 'Çankaya'

alanif field_id1 alanına “Ankara” ve alanvalue is “Ankara” and field_id2 alanına “Çankaya” yazılırsa göster/gizle value is “Çankaya” then show/hide

['Ankara','İstanbul'].indexOf(formData['alanafield_id'])>=0

alanif value is field_id alanının değeri is Ankara veya or İstanbul ile gösterthan show/gizlehide

formData['alanfield_id'] > 3alan

if value of field_id alanının değer 3’ten büyükse göster/gizleis greater than show/hide

items.length > 0

Alanı kayıtta en az 1 fotoğraf ekli ise göster/gizle

Makrolar

Makrolar ile bazı form değerleri otomatik olarak doldurulur. il/ilçe/Şantiye/Bölge/Bina/Tesis gibi bilgiler bulunduğunuz konuma otomatik gelir. Bu şekilde hatalı girilebilecek ve ek zaman alacak verileri girmenize gerek kalmaz. Bu değerleri rapor ve panellerlerde kullanabilirsiniz.

Makrolar için 3 seçenek sunulur

...

if record has at least one attachments(photo, video..) than show/hide

Macros

Macros is used to automatically fill the field. For example, the county/region/building or facility may be filled by your location. This feature not only makes data entry faster but also error-prone.

There are 3 choices for macros.

Spatial Relation - DB

Bu seçenek konumsal bilgi içeren bir tablodan veya shapedosya gibi bir kaynaktaki bilgileri kullanır. MOBIDI ile oluşturduğunuz kaydın konumuna göre 40metre çevrredeki en yakın kayıt alınır ve kuralınıza göre değer yazılır.

Bu seçenek için MOBIDI Ofis’in kurulu olduğu sunucuda olmalısınız. Geçerli bir bağlantıyı kurduktan sonra yazılım size kullanılacak tablo ve alanı soracaktır.

...

Coğrafi İlişki - Sorgu

Bu seçenek ile bir MOBIDI Ofis sorgusu kaynak olarak kullanılır. MOBIDI Ofis kayıtları çok özel durumlar haricinde mutlaka konumsal bilgi içerirler. Bu bilgiyi kullanarak alan değerlerinin otomatik dolmasını sağlayabililirsiniz.

Info

Şantiye Yönetimi için formlar oluşturduğunuzu varsayalım. Birden çok lantiyeniz varsa her bir kayıtta hangi şantiyeden alındığını yazmanız gereklidir. Aksi durumda şantiye bazlı bir analiz yapamazssınız. Ancak her kayda bir seçim listesinden şantiyenin adını yazmak da hataya çaık ve gereksiz zaman kaybedilen bir yol olur.

İlişki tanımları ile bu problem kolayca çözülüyor.

“Şantiye” adlı bir form tasarlayalım. Bu form bir şantiyenin özelliklertini içersin. Yapılan iş, Proje yöneticisin adı, Şantiyenin kurulacağı yerin fotoğrafları ve ve diğer bilgiler bu kayıtta olsun.

Bir form daha oluşturalım, adına “Faaliyetler” diyelim ve faaliyet, miktar vs gibi değerleri tanımlayalım.

Faaliyetler formunda şantiye bilgisinin olmasını istiyorsak “Coğrafi İlişki - Sorgu” kullanmalıyız.

Yukarıdaki örnek senaryo için

  1. Faaliyetler formuna bir metin alan ekleyelim, adı “Şantiye Bilgisi” olsun

  2. Bu alanın Makro değerindeki Sorgu2da “Şantiye” formunu seçelim.

  3. Tebrikler, İlişkiyi tanımladınız!. Şantiye Bilgisi alanına Şantiye Formunun “Form Başlığı” bilgisi gelecektir. Dilerseniz “Harita etiketi” bilgisini de kullanabilirsiniz.

Gelişmiş İlişki Makrosu

Coğrafi İlişiki seçenekleri ihtiyacınızı karşılamıyorsa, kullanabilceğiniz bir seçenektir. Kullanımı orta/ileri düzey IT bilgisi gerektirebilirThis option gets information from a spatial table from an external source. A shapefile or a spatial table in PostGIS. The tolerance is 40m.

(warning) This option works only if you are on the same server as MOBIDI Office installed.

...

...

Spatial Relation - Query

Almost Every record hence Query has location information. This choice uses a Query as the spatial data source.

Info

Suppose you create a project for Site Management. If you have more than one site, every record must have site information in order to report or analyze per site. But entering site info for every record is a boring and error-prone method.

Spatial Relation - Query solves this problem.

Let's design a form called "Construction Site". Let this form contain the features of a construction site. The name of the site, the manager, photos of the place where the construction site will be set and more may in this form.

Let's create another form and call it "Activities" and define values ​​such as activity, quantity, etc.

If we want to have site information in the activities form, we must use "Spatial Relation - Query"

To implement the above scenarios:

  1. Add a field named “Site info” to activities form.

  2. Select Construction Site record in the Query.

  3. Congrulations1. İt’s done. Now you will see the information about the site in every activity. You may choose to get Form Caption or Map Label.

...

Advanced Relation Macro

If the above features do not meet your needs this macro may solve them. This choice may require some IT knowledge.

Örnek

Açıklama

context.Data.GetAttribute("select_id") == "Ankara" ? “değer1“ : context.Data.GetAttribute("select_id") == "İstanbul" ? “değer2“Bir

select alanda Ankara seçilirse bu makronun yazıldığı metin alanının değeri değer1 olsun İstanbul seçilirse değer2The value depends on a slect filed. Value1 for Ankara, Value2 for İstanbul.

d.GetAttribute("alanfield_id1") == "100" ?d.GetAttribute("alanfield_id2")*5Eğer alan_id1 değeri 100 e eşitse alan_id2 değerinin 5 ile çarpımını bu alanın değeri yap

If field_id1 is 1000 then our value will be 5 times the value of field_id2.

context.Data.record.GeometryObj!=null ? "VarGeo" : "Yok"Bu makronun yazıldığı select alanın değerini otomatik seçmek için yazıldı. Kaydın geometrisi varsa Var yoksa Yok seçilecek.Non Geo"

Whether the record has geometry or not.

d.record.Device.MobileLicenseDepartmentYazıldığı alana

kaydı giren kullanıcının departmanını getirirThis field will be department of the user.

c["mobidi"].CreateID(d,"alanfield_id","Start_")

alan_id yazılı alana her kayıt için otomatik id vermek için kullanılır. Her kayıt Set and automatic ID for the field_id. That sequence Start_1, Start_2 … şeklinde id alır.

Makrolar hakkında daha fazla bilgi için lütfen aşağıdaki sayfalara bakınız

...

and so.

For more please check the Macros page.

Info

field_id value is on the Macro tab.

...

Sadece boş değerleri güncelle?

...