docs: function f_tahta_kalem_idler_aktif(_tahta_id) {
          var db_ihale = require('./db_ihale'),
              defer = result.dbQ.Q.defer(),
              anahtar = result.kp.temp.ssetTahtaKalem(_tahta_id);
  
          result.dbQ.exists(anahtar)
              .then(function (_dbReply) {
                  if (_dbReply == 1) {
                      //anahtar var yeniden oluşturmuyoruz
  
                  } else {
                      //anahtar yok
                      //önce tahtanın aktif ihale id leri çekilir
                      //bu ihalelere bağlı kalemler temp.kalem.tumu setine eklenir
                      //aynı şekilde ezilen gizlenen kalemler istenmeyenler setine eklenir
                      //sonuçta kullanıcının göreceği set bu iki setin farkı olacaktır
                      db_ihale.f_db_tahta_ihale_idler_aktif(_tahta_id)
                          .then(function (_ihale_idler) {
  
                              var arrKalemKeys = [],
                                  anahtarTumu = result.kp.temp.ssetTahtaKalemTumu(_tahta_id),
                                  anahtarIstenmeyen = result.kp.temp.ssetTahtaKalemIstenmeyen(_tahta_id);
  
                              _ihale_idler.forEach(function (_elm) {
                                  arrKalemKeys.push(result.kp.tahta.ssetOzelKalemleri(_tahta_id, _elm, true), result.kp.ihale.ssetKalemleri(_elm));
                              });
                              arrKalemKeys.unshift(anahtarTumu);
  
                              result.dbQ.Q.all([
                                  result.dbQ.sunionstore_array(arrKalemKeys),
                                  result.dbQ.sunionstore(anahtarIstenmeyen, result.kp.tahta.ssetEzilenKalemleri(_tahta_id), result.kp.tahta.ssetGizlenenKalemleri(_tahta_id))
                              ]).then(function () {
                                  result.dbQ.sdiffstore(anahtar, anahtarTumu, anahtarIstenmeyen)
                              });
                          });
                  }
              })
              .then(function () {
                  result.dbQ.smembers(anahtar)
                      .then(function (_kalem_idler) {
                          defer.resolve(_kalem_idler);
                      });
              });
  
          return defer.promise;
      }