TKGM den excel ile sorgulama yapmak ve bilgi almak mümkün müdür?

Tevfik_Kursun

Altın Üye
Katılım
30 Temmuz 2012
Mesajlar
3,667
Excel Vers. ve Dili
Office 2016 Pro - Türkçe 64 Bit
Altın Üyelik Bitiş Tarihi
12-02-2029
Merhaba Arkadaşlar
TKGM den excel ile sorgulama yapmak ve bilgi almak mümkün müdür?
Saygılarımla
 

RBozkurt

𐱅𐰇𐰼𐰚
Altın Üye
Katılım
10 Ocak 2018
Mesajlar
592
Excel Vers. ve Dili
Microsoft Office 2024
Google Sheets
Altın Üyelik Bitiş Tarihi
19-12-2026
Mesajım bulunsun.
 

Tevfik_Kursun

Altın Üye
Katılım
30 Temmuz 2012
Mesajlar
3,667
Excel Vers. ve Dili
Office 2016 Pro - Türkçe 64 Bit
Altın Üyelik Bitiş Tarihi
12-02-2029
Afedersiniz Arkadaşım,
Mesajınız nerede kayboldu ki ?
 

netzone

Altın Üye
Katılım
10 Mayıs 2006
Mesajlar
791
Excel Vers. ve Dili
🅾🅵🅵🅸🅲🅴
⎝365 64 Bit 𝙏𝙍⎠
🆆🅸🅽🅳🅾🆆🆂
⎝11 64 Bit 𝙏𝙍⎠
Altın Üyelik Bitiş Tarihi
12-09-2027
Mesajım bulunsun.
Merhaba,
Konuyu takip etmek ve gelen mesajlardan haberdar olmak için sağ üstte Takip Et butonu bulunmakta. Ona basmanız yeterli olur.

Teyfik bey, TKGM nin neresinden sorgu yapmak istediğinizi belirtirseniz arkadaşların yardımcı olması daha kolay olacaktır.

parsel sorgu?

iyi çalışmalar.
 

Tevfik_Kursun

Altın Üye
Katılım
30 Temmuz 2012
Mesajlar
3,667
Excel Vers. ve Dili
Office 2016 Pro - Türkçe 64 Bit
Altın Üyelik Bitiş Tarihi
12-02-2029
Sayın Netzone,
Elimde müşterilerimizin parsel sorgu bilgileri var, parselin diğer öznitelik bilgilerini almak istiyoruz.
Saygılarımla
 

netzone

Altın Üye
Katılım
10 Mayıs 2006
Mesajlar
791
Excel Vers. ve Dili
🅾🅵🅵🅸🅲🅴
⎝365 64 Bit 𝙏𝙍⎠
🆆🅸🅽🅳🅾🆆🆂
⎝11 64 Bit 𝙏𝙍⎠
Altın Üyelik Bitiş Tarihi
12-09-2027
Tevfik Bey,

Makro ile nasıl bilgiler alınır bilemiyorum (VBA da JSON verileri biraz sıkıntılı deniliyor) ancak yardımcı olacak arkadaşlar için bir kaç bilgi vermek belki işlerine yarar.

Adresi üzerinden
(İl - İlçe - Mahalle - Ada - Parsel) Bilgilerinden ilk 3 ü birbirine sırasıyla bağlı listeler getirmektedir.
Örnek: (Ankara - Çankaya - Sancak - 26727 - 15) Bilgilerini sırasıyla girerken listeler serverın yoğunluğundan olsa gerek bazen geç geliyor bunu dikkate almak gerekir.

Örnekte bulunan Parseli seçince oluşacak adres:
1165/26727/15/1662499342213 (İl-İlçe-Mahalle ye ait ID sonrasında Ada parsel çağrılabiliyor)

Yada kordinatları belli ise böyle bir adres ile çağrılabilir.
39.87431706591352/32.859305441379554

Haritalarda 39°52'27.5"N 32°51'33.5"E Kordinatına karşılık gelen bir alan oluşturmakta.

Bu alan üzerine tıklanması ile bir popup oluşuyor ve değişiklik yapılmammışsa Öznitelik bilgileri beliriyor.
Gelen tablo JSON ile oluşuyor.

*Apilerden kaynaklı bir sorundan dolayı şuanda PDF oluşturulamıyor, fakat PDF çıktısında öznitelik bilgileri de yer alıyor diye hatırlıyorum. (Belki buradan almak daha kolay olabilir-di)

Umarım faydası olur.
İyi çalışmalar.
 

Tevfik_Kursun

Altın Üye
Katılım
30 Temmuz 2012
Mesajlar
3,667
Excel Vers. ve Dili
Office 2016 Pro - Türkçe 64 Bit
Altın Üyelik Bitiş Tarihi
12-02-2029
Sayın Netzone Hocam,
ilginize cok tesekkur ederim.
Saygilarimla
 

askm

Destek Ekibi
Destek Ekibi
Katılım
4 Haziran 2005
Mesajlar
2,745
Excel Vers. ve Dili
2010-2016
Ne şekilde sorgulama yapıp neleri almak istiyorsunuz. Şablon excel olursa yapabiliriz belki.
 

Haluk

𐱅𐰇𐰼𐰚
Katılım
7 Temmuz 2004
Mesajlar
12,383
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
VBA ile tabii ki yapılır ama, aşağıda hazırladığım Google Script ile daha kısa;


TestHD.gif



JavaScript:
// Haluk - 08/09/2022
// Tapu ve Kadastro GM uygulamasindan Tapu Bilgilerinin alinmasi
function getData() {
  var myArr=["İLÇE","MEVKİİ","ZEMİN","NİTELİK","MAHALLE","ALAN","ADA","PARSEL","PAFTA"];
  var ss = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  ss.getRange('B1:J1').setValues([myArr])
  const dataRange = ss.getRange('A2:A');
  const values = dataRange.getValues().filter(array=>array != '');
  for(var j = 0; j < values.length; j++) {
    var iRow = j+2
  
    var coordinates = ss.getRange('A'+ iRow ).getValue();
    
    var url='https://cbsapi.tkgm.gov.tr/megsiswebapi.v3/api/parsel/' + coordinates
    
    try {
      var httpResponse = UrlFetchApp.fetch(url,{'muteHttpExceptions': true});
        } catch (e) {httpResponse.getResponseCode();
        Browser.msgBox('Hata var...!\\n\\n' + e.toString(), Browser.Buttons.OK);
        return;
      }
      
    var responseContent = httpResponse.getContentText();
    var responseCode = httpResponse.getResponseCode();
  
    if (responseCode == 200) {  
      objJSON = JSON.parse(responseContent);
      
      // objJSON elemanlari >>> "type", "Feature", "geometry", "properties"
      // Aradigimiz veriler "properties" nesnesi icinde   
        ss.getRange(j+2,2).setValue(objJSON.properties['ilceAd'])
        ss.getRange(j+2,3).setValue(objJSON.properties['mevkii'])
        ss.getRange(j+2,4).setValue(objJSON.properties['zeminKmdurum'])
        ss.getRange(j+2,5).setValue(objJSON.properties['nitelik'])
        ss.getRange(j+2,6).setValue(objJSON.properties['mahalleAd'])
        ss.getRange(j+2,7).setValue(objJSON.properties['alan'])
        ss.getRange(j+2,8).setValue(objJSON.properties['adaNo'])
        ss.getRange(j+2,9).setValue(objJSON.properties['parselNo'])
        ss.getRange(j+2,10).setValue(objJSON.properties['pafta'])
    }
    else if (responseCode !== 200){
      ss.getRange(j+2,2).setValue(responseContent)
    }
  }
}
 
Son düzenleme:

Tevfik_Kursun

Altın Üye
Katılım
30 Temmuz 2012
Mesajlar
3,667
Excel Vers. ve Dili
Office 2016 Pro - Türkçe 64 Bit
Altın Üyelik Bitiş Tarihi
12-02-2029
Sayın Haluk Hocam,
İlginize çok teşekkür ederim. Hemen inceleyeyim.
Saygılarımla
 
Katılım
30 Haziran 2016
Mesajlar
122
Excel Vers. ve Dili
office 2010 türkçe
Altın Üyelik Bitiş Tarihi
25-04-2024
VBA ile tabii ki yapılır ama, aşağıda hazırladığım Google Script ile daha kısa;

hocam excelde yeniyim. bçöyle bir otomasyon kullanıyorum nasıl yapacağız biz bunu rica etsem aşama aşama anlatırmısınız. vba yapınca hangi aşamayla tkgm ye bağlanıyor

Ekli dosyayı görüntüle 238973



JavaScript:
// Haluk - 08/09/2022
// Tapu ve Kadastro GM uygulamasindan Tapu Bilgilerinin alinmasi
function getData() {
  var myArr=["İLÇE","MEVKİİ","ZEMİN","NİTELİK","MAHALLE","ALAN","ADA","PARSEL","PAFTA"];
  var ss = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  ss.getRange('B1:J1').setValues([myArr])
  const dataRange = ss.getRange('A2:A');
  const values = dataRange.getValues().filter(array=>array != '');
  for(var j = 0; j < values.length; j++) {
    var iRow = j+2

    var coordinates = ss.getRange('A'+ iRow ).getValue();
  
    var url='https://cbsapi.tkgm.gov.tr/megsiswebapi.v3/api/parsel/' + coordinates
  
    try {
      var httpResponse = UrlFetchApp.fetch(url,{'muteHttpExceptions': true});
        } catch (e) {httpResponse.getResponseCode();
        Browser.msgBox('Hata var...!\\n\\n' + e.toString(), Browser.Buttons.OK);
        return;
      }
    
    var responseContent = httpResponse.getContentText();
    var responseCode = httpResponse.getResponseCode();

    if (responseCode == 200) {
      objJSON = JSON.parse(responseContent);
    
      // objJSON elemanlari >>> "type", "Feature", "geometry", "properties"
      // Aradigimiz veriler "properties" nesnesi icinde 
        ss.getRange(j+2,2).setValue(objJSON.properties['ilceAd'])
        ss.getRange(j+2,3).setValue(objJSON.properties['mevkii'])
        ss.getRange(j+2,4).setValue(objJSON.properties['zeminKmdurum'])
        ss.getRange(j+2,5).setValue(objJSON.properties['nitelik'])
        ss.getRange(j+2,6).setValue(objJSON.properties['mahalleAd'])
        ss.getRange(j+2,7).setValue(objJSON.properties['alan'])
        ss.getRange(j+2,8).setValue(objJSON.properties['adaNo'])
        ss.getRange(j+2,9).setValue(objJSON.properties['parselNo'])
        ss.getRange(j+2,10).setValue(objJSON.properties['pafta'])
    }
    else if (responseCode !== 200){
      ss.getRange(j+2,2).setValue(responseContent)
    }
  }
}
 

RBozkurt

𐱅𐰇𐰼𐰚
Altın Üye
Katılım
10 Ocak 2018
Mesajlar
592
Excel Vers. ve Dili
Microsoft Office 2024
Google Sheets
Altın Üyelik Bitiş Tarihi
19-12-2026
İl İlçe Mahalle Ada parsel ile olsa mükemmel olurdu
 

Tevfik_Kursun

Altın Üye
Katılım
30 Temmuz 2012
Mesajlar
3,667
Excel Vers. ve Dili
Office 2016 Pro - Türkçe 64 Bit
Altın Üyelik Bitiş Tarihi
12-02-2029
Merhaba Arkadaşlar,
Doğru bir örnek hazırlamaya çalıştığım için biraz geciktim. Umarım başka arkadaşlarımızın da işine yarar.
Bu çalışma VBA ile de, GoogleScript ile de olabilir. Farklı her alternatif hem işimizi görür, hem de düşüncelerimizin daha da olgunlaşmasını sağlar.
Saygılarımla
 

Ekli dosyalar

Haluk

𐱅𐰇𐰼𐰚
Katılım
7 Temmuz 2004
Mesajlar
12,383
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Tevfik Bey;

Hem VBA ile yapılır hem de Google Script ile...... ama, tablonuzdaki yapıyla sorgulama yapılabilmesi için her veriye ait "Mahalle ID" verisinin bilinmesi gerekir.

Sayın @netzone tarafından önerilen 1. URL'deki "1165" değeri, bahsettiğim Mahalle ID'dir.

Bu olmadan, sadece yukarıda Google Script örneğinde olduğu gibi Google Script veya VBA ile koordinatlardan faydalanarak sorgu sonuçları alınabilir.

Bu arada; aşağıdaki alıntıda belirttiğim mesajınızda "müşterileriniz"den bahsetmişiniz. Hatırladığım kadarıyla dershanede öğretmendiniz veya dershane işletiyordunuz. "Müşterileriniz" buradaki öğrenciler değil herhalde, değil mi?

Sayın Netzone,
Elimde müşterilerimizin parsel sorgu bilgileri var, parselin diğer öznitelik bilgilerini almak istiyoruz.
Saygılarımla
.
 

Tevfik_Kursun

Altın Üye
Katılım
30 Temmuz 2012
Mesajlar
3,667
Excel Vers. ve Dili
Office 2016 Pro - Türkçe 64 Bit
Altın Üyelik Bitiş Tarihi
12-02-2029
Merhaba Haluk Hocam,
Acaba ekli dosyadakini mi kastediyorsunuz?
Saygılarımla
 

Ekli dosyalar

Haluk

𐱅𐰇𐰼𐰚
Katılım
7 Temmuz 2004
Mesajlar
12,383
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
16 No'lu mesajınızdaki dosyadaki ilk veriye ait aşağıdaki bilgiler doğruysa; birşeyler yapılabilir...


Capture.PNG

.
 

Haluk

𐱅𐰇𐰼𐰚
Katılım
7 Temmuz 2004
Mesajlar
12,383
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Bir de, 15 No'lu mesajımda belirttiğim "Müşterileriniz" konusunu halen merak ediyorum....

.
 

Tevfik_Kursun

Altın Üye
Katılım
30 Temmuz 2012
Mesajlar
3,667
Excel Vers. ve Dili
Office 2016 Pro - Türkçe 64 Bit
Altın Üyelik Bitiş Tarihi
12-02-2029
Muhteşemsiniz Haluk Hocam,
Haklısınız, ben öğretmen emeklisiyim. Damadımın çalıştığı yerdeki ihtiyaç duyduğu işlem için kurgulamaya çalışıyorum. Müşteri lafı da gül yaprağı getiren tarla sahipleri.
Bulduğunuz sonuç tam beklediğim sonuç. Burada koordinatları almakta mümkünse işe yarar diye düşünüyorum.
Saygılarımla
 

Haluk

𐱅𐰇𐰼𐰚
Katılım
7 Temmuz 2004
Mesajlar
12,383
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Neyseki "Müşteri" sıfatı beklediğim gibi kullanılmamış ....

Diğer yandan; son eklediğiniz dosyadaki gibi "Mahalle ID" değerlerini sağlamayı garanti ediyorsanız, o zaman Mahalle ID, Ada ve Parsel bilgilerini kullanarak, diğer bilgileri Google Script ile alacak şekilde bir çalışma yapabilirim.

Karar sizin...

.
 
Üst