Arcgis forumunda yayınladım ama hiç cevap alamadım. Birisi bana bunu nasıl çözeceğimi söyleyebilir mi?
Rüzgar hızı bilgileri ile 1 Ekim - 31 Aralık arasında bir araç takip kayıtlarınız olduğunu varsayalım. Tüm veriler coğrafi veri tabanına (sde-sqlserver) ve ArcGIS Server 10.1'e özellik katmanı olarak kaydedilir. Zaman kaydırıcısı, rüzgar hızı olan bir aracın yerlerini gösterir.
Kullanıcı bir zaman aralığını değiştirdiğinde (örn. 2 Ekim - 4 Ekim), ilk sorgu görevi (sayım için) aralıktaki özellik sayısını hesaplar. Genellikle iki günde bile 1000'den fazla sonuç vardır (örn. 1750) (Bu sınırı değiştirmek istemiyorum).
Tüm kayıtları elinde tutmak ama rüzgar hızı genel bir eğilim için güzel bir grafik yapmak için hala yeterli sayıda modülü (1/10) ile miktarı azaltmak için başka bir sorgu görevi (executeforIds) kullandım. Bununla birlikte, csv'de tüm bir veri kümesini indirmek için bir seçenek sunmak istiyorum (bu durumda 1750 satır)
Burada, zaman aralığı içinde özellik veri kümesini almak için findtask kullandım.
try {
//console.log(app.objIDs);
var attribs;
csvdata = "";
var find = new esri.tasks.FindTask("http://xyz.com/arcgis/rest/services/Realtime/Car_Wind_WM/MapServer");
var params = new esri.tasks.FindParameters();
params.layerIds = [0];
params.searchFields = ["OBJECTID"];
for (var i = 0; i < app.objIDs.length; i++) {
params.searchText = app.objIDs[i];
find.execute(params, function (results) {
attribs = results[0].feature.attributes;
csvdata += attribs.Date_Central + ',' + attribs.Longitude + "," + attribs.Latitude + "," + attribs.windspeed + "\n";
console.log(csvdata); //1
}, function (error) {
alert("Error");
});
}
} catch (error) {
alert("Change the time range first");
}
console.log(csvdata); //2
setTimeout(function () {
formatData(app.csvdata);
}, (3 * 1000));
csvdata, console.log2'de tanımlanmadı, ancak tüm csvdata (console.log1'de) konsolda veri gösteriyor. Sorun find.execute tamamlandı gibi görünüyor, bu yüzden setTimeout ekledim.
Bu işe yarıyor gibi gözüküyor ama zaman aralığını artırdığımda belli olmayacak.
Tüm kayıtları (1000 - 200.000) belirli bir zaman aralığında tutmak ve csv'ye aktarmak yine de var mı?