code: private function getCalcData()
      {
          /**
           * Get period & calc data for Courtesy based on TV.
           */
          $req = new AGetPeriodRequest();
          $req->setBaseCalcTypeCode(Cfg::CODE_TYPE_CALC_VALUE_TV);
          $req->setDepCalcTypeCode(Cfg::CODE_TYPE_CALC_BONUS_COURTESY);
          /** @var AGetPeriodResponse $resp */
          $resp = $this->servPeriodGet->exec($req);
          /** @var \Praxigento\BonusBase\Repo\Data\Period $courtesyPeriod */
          $courtesyPeriod = $resp->getDepPeriodData();
          /** @var \Praxigento\BonusBase\Repo\Data\Calculation $courtesyCalc */
          $courtesyCalc = $resp->getDepCalcData();
          /**
           * Get period and calc data for compression calc (basic for TV volumes).
           */
          $req = new AGetPeriodRequest();
          $req->setBaseCalcTypeCode(Cfg::CODE_TYPE_CALC_COMPRESS_PHASE1);
          $req->setDepCalcTypeCode(Cfg::CODE_TYPE_CALC_VALUE_TV);
          $req->setDepIgnoreComplete(true);
          /** @var AGetPeriodResponse $resp */
          $resp = $this->servPeriodGet->exec($req);
          /** @var \Praxigento\BonusBase\Repo\Data\Calculation $compressCalc */
          $compressCalc = $resp->getBaseCalcData();
          /**
           * Compose result.
           */
          $result = [$compressCalc, $courtesyPeriod, $courtesyCalc];
          return $result;
      }
docs: Get period and calculation data for all related calculation types.
  
  @return array [$compressCalc, $courtesyPeriod, $courtesyCalc]
  @throws \Exception