Выяснилось, что VPRS работает только по MBEW, т.е. вы получите себестоимость на уровне Область оценки/Вида оценки обычного запаса. Для особых запасов (Q - Запас проекта(таб.QBEW), E - Запас под заказ клиента(таб.EBEW)) ОНО НЕ РАБОТАЕТ. Пару часов времени были убиты на написание формул для расчета стоимости условий.
Итак алгоритм (может кому и пригодится)
Для особого запаса Q
Создаем вид условия QVPR - Учетная цена 'Q'
Класс условий "В - Цены", правило расчета "С - Количество", обработка вручную невозможно, условие позиции, пересчет количества.
Расширяем структуру KOMPAZ (структура связи расчета цен для позиции заказа). Добавляем туда поля: 
ZZSOBKZ - Код особого запаса
ZZPSPNR - Код СПП элемента
Запоняем их в заказе (MV45AFZZ)
Code:
FORM USEREXIT_PRICING_PREPARE_TKOMP.
   MOVE VBAP-SOBKZ TO TKOMP-ZZSOBKZ.
   MOVE VBAP-PS_PSP_PNR TO TKOMP-ZZPSPNR.
ENDFORM.
и в фактуре (RV60AFZZ)
Code:
FORM USEREXIT_PRICING_PREPARE_TKOMP.
   DATA:
    ZVBAPVB LIKE VBAPVB,
    ZVBAP    LIKE VBAP.
*  Заполняем в структуре связи TKOMP поле ZZPSPNR (СПП-элемент)
   MOVE VBRP-PS_PSP_PNR TO TKOMP-ZZPSPNR.
*  Считываем позицию из заказа для переноса данных
   CALL FUNCTION 'SD_VBAP_SINGLE_READ'
     EXPORTING
          I_VBELN          = VBRP-AUBEL
          I_POSNR          = VBRP-AUPOS
     IMPORTING
          E_VBAPVB         = ZVBAPVB
          E_VBAP           = ZVBAP
     EXCEPTIONS
          RECORD_NOT_FOUND = 1
          OTHERS           = 2.
   MOVE ZVBAP-SOBKZ TO TKOMP-ZZSOBKZ.
ENDFORM.
Далее создаем предпосылку для этого вида условия
Code:
FORM KOBED_904.                            
  perform kobed_002.
  sy-subrc = 4.
  check: komp-zzsobkz = 'Q'.
  sy-subrc = 0.
ENDFORM.
FORM KOBEV_904.                                    
  sy-subrc = 0.
ENDFORM.
Формула для расчета стоимости
Code:
FORM FRM_KONDI_WERT_905.                                   
DATA:
  ZQBEW  like QBEW.
  IF KOMP-ZZPSPNR ne ''.
   CALL FUNCTION 'QBEW_SINGLE_READ'
       EXPORTING
            MATNR      = KOMP-MATNR
            BWKEY      = KOMP-BWKEY
            BWTAR      = KOMP-BWTAR
            SOBKZ      = 'Q'
            PSPNR      = KOMP-ZZPSPNR
       IMPORTING
            WQBEW      = ZQBEW
       EXCEPTIONS
            WRONG_CALL = 1
            NOT_FOUND  = 2
            OTHERS     = 3.
   case ZQBEW-VPRSV.
    when 'V'.
     xkwert = ZQBEW-VERPR * komp-mgame.
    when 'S'.
     xkwert = ZQBEW-STPRS * komp-mgame.
   endcase.
   xkomv-kbetr = ZQBEW-VERPR.
   xkwert = xkwert / 1000.
  ENDIF.
ENDFORM.
Для особого запаса E
Создаем вид условия EVPR - Учетная цена 'E'
Настройки те же что и для QVPR.
Далее создаем предпосылку для этого вида условия
Code:
FORM KOBED_905.                            
  perform kobed_002.
  sy-subrc = 4.
  check: komp-zzsobkz = 'E'.
  sy-subrc = 0.
ENDFORM.
FORM KOBEV_905.                                    
  sy-subrc = 0.
ENDFORM.
Формула для расчета стоимости
Code:
FORM FRM_KONDI_WERT_906.
DATA:
  ZEBEW  like EBEW.
  CALL FUNCTION 'EBEW_SINGLE_READ'
      EXPORTING
           MATNR      = KOMP-MATNR
           BWKEY      = KOMP-BWKEY
           BWTAR      = KOMP-BWTAR
           SOBKZ      = 'E'
           VBELN      = KOMP-AUBEL
           POSNR      = KOMP-AUPOS
      IMPORTING
           WEBEW      = ZEBEW
      EXCEPTIONS
           WRONG_CALL = 1
           NOT_FOUND  = 2
           OTHERS     = 3.
  case ZEBEW-VPRSV.
   when 'V'.
    xkwert = ZEBEW-VERPR * komp-mgame.
   when 'S'.
    xkwert = ZEBEW-STPRS * komp-mgame.
  endcase.
   xkomv-kbetr = ZEBEW-VERPR.
   xkwert = xkwert / 1000.
ENDFORM.
Вот в общем то и все. 
