docs: function f_urun_ekle(_db_urun, _uretici_id, _tahta_id, _kul_id) {
          //l.info("f_db_urun_ekle");
  
          function f_urun_ekle(_db_urun, _uretici_id, _tahta_id, _kul_id) {
              //SON EKLENEN ürünün İD SİNİ ÇEK VE EKLEME İŞLEMİNE BAŞLA
              //l.info("f_urun_ekle");
              return result.dbQ.incr(result.kp.urun.idx)
                  .then(function (_id) {
                      _db_urun.Id = _id;
  
                      return result.dbQ.hset(result.kp.urun.tablo, _id, JSON.stringify(_db_urun))
                          .then(function () {
                              if (_tahta_id && _tahta_id > 0) {
                                  return result.dbQ.sadd(result.kp.tahta.ssetOzelUrunleri(_tahta_id, true), _id);
                              } else {
                                  return _db_urun;
                              }
                          })
                          .then(function () {
                              if (_uretici_id && _uretici_id > 0) {
  
                                  return result.dbQ.Q.all([
                                      result.dbQ.sadd(result.kp.kurum.ssetUrunleri(_tahta_id, _uretici_id), _id),
                                      result.dbQ.hset(result.kp.urun.hsetUreticiler, _id, _uretici_id),
                                      f_urun_iliskili_kurum_ekle(_tahta_id, _id, _uretici_id)
                                  ])
                              } else {
                                  return _db_urun;
                              }
                          })
                          .then(function () {
                              return f_urun_id(_db_urun.Id, _tahta_id)
                                  .then(function (_dbUrun) {
                                      emitter.emit(schema.SABIT.OLAY.URUN_EKLENDI, _db_urun, _tahta_id, _kul_id);
                                      return _dbUrun;
                                  });
                          });
                  });
          }
  
          return Array.isArray(_db_urun)
              ? _db_urun.mapX(null, f_urun_ekle, _uretici_id, _tahta_id, _kul_id).allX()
              : f_urun_ekle(_db_urun, _uretici_id, _tahta_id, _kul_id);
      }