การแก้ไขปัญหาตัวเชื่อมต่อ SAP Business Warehouse

บทความนี้แสดงสถานการณ์การแก้ไขปัญหา (และโซลูชันที่เป็นไปได้) สําหรับการทํางานกับตัวเชื่อมต่อ SAP Business Warehouse (BW)

รวบรวมการติดตามขั้นสูงของ SAP BW

หมายเหตุ

การรวบรวมการติดตามของคิวรีที่ส่งไปยังเซิร์ฟเวอร์ SAP BW ต้องการตัวเลือกและการตั้งค่าบางอย่างที่สามารถระบุได้โดยใช้ Power BI Desktop เท่านั้น ถ้าคุณยังไม่มีสําเนาของ Power BI Desktop คุณสามารถรับสําเนาได้ที่ ศูนย์ดาวน์โหลด Microsoft คุณสามารถตั้งค่าตัวเลือกและการตั้งค่าที่จําเป็นทั้งหมดสําหรับการติดตามขั้นสูงโดยใช้เวอร์ชันฟรีนี้

หลายครั้งที่มีข้อผิดพลาดเกิดขึ้น อาจเป็นประโยชน์ในการรวบรวมการติดตามของคิวรีที่ถูกส่งไปยังเซิร์ฟเวอร์ SAP BW และการตอบสนอง ขั้นตอนต่อไปนี้แสดงวิธีการตั้งค่าการติดตามขั้นสูงสําหรับปัญหาที่เกิดขึ้นโดยใช้ตัวเชื่อมต่อ SAP BW

  1. ปิด Power BI Desktop ถ้าทํางานอยู่

  2. สร้างตัวแปรสภาพแวดล้อมใหม่:

    1. จากแผงควบคุม Windows ให้เลือกการตั้งค่าระบบขั้นสูงของระบบ>

      คุณยังสามารถเปิด Command Prompt และใส่ sysdm.cpl ได้

    2. ใน คุณสมบัติของระบบ เลือก แท็บ ขั้นสูง จากนั้นเลือก ตัวแปรสภาพแวดล้อม

    3. ใน ตัวแปรสภาพแวดล้อม ภายใต้ ตัวแปรของระบบ ให้เลือก ใหม่

    4. ใน ตัวแปรระบบใหม่ ภายใต้ ชื่อตัวแปร ให้ใส่ PBI_EnableSapBwTracing และภายใต้ ค่าตัวแปร ให้ป้อน true

    5. เลือก ตกลง

    เมื่อมีการเปิดใช้งานการติดตามขั้นสูงนี้ โฟลเดอร์เพิ่มเติมที่เรียกว่า SapBw จะถูกสร้างขึ้นในโฟลเดอร์การติดตาม ดูส่วนที่เหลือของกระบวนการนี้สําหรับตําแหน่งของโฟลเดอร์ Traces

  3. เปิด Power BI Desktop

  4. ล้างแคชก่อนที่จะจับ

    1. ใน Power BI desktop เลือกแท็บ ไฟล์
    2. เลือก ตัวเลือกและการตั้งค่า>ตัวเลือก
    3. ภายใต้ การตั้งค่าส่วนกลาง เลือก การโหลดข้อมูล
    4. เลือก ล้างแคช
  5. ขณะที่คุณยังคงอยู่ใน ตัวเลือกและการตั้งค่า ให้เปิดใช้งานการติดตาม

    1. ภายใต้การตั้งค่าส่วนกลาง เลือกการวินิจฉัย
    2. เลือกเปิดใช้งานการติดตาม
  6. ขณะที่คุณยังคงอยู่ในตัวเลือกและการตั้งค่า>การวินิจฉัยส่วนกลาง>เลือกเปิดโฟลเดอร์บันทึกข้อมูลหยุดทํางาน/การติดตาม ตรวจสอบให้แน่ใจว่าโฟลเดอร์ชัดเจนก่อนที่จะจับภาพการติดตามใหม่

  7. สร้างปัญหาขึ้นมาใหม่

  8. เมื่อทําเสร็จแล้ว ปิด Power BI Desktop เพื่อให้บันทึกถูกใส่ลงในดิสก์

  9. คุณสามารถดูการติดตามที่จับภาพใหม่ภายใต้ โฟลเดอร์ SapBw ( โฟลเดอร์ Traces ที่มี โฟลเดอร์ SapBw ถูกแสดงโดยการเลือก เปิดโฟลเดอร์ บันทึกข้อมูลความล้มเหลว/การติดตามบนหน้า การวินิจฉัย ใน Power BI Desktop)

  10. ตรวจสอบให้แน่ใจว่าคุณปิดใช้งานการติดตามขั้นสูงนี้เมื่อคุณดําเนินการเสร็จแล้ว โดยการลบตัวแปรสภาพแวดล้อมหรือการตั้งค่า PBI_EnableSapBwTracing เป็นเท็จ

รวบรวมการติดตามขั้นสูง SAP BW ด้วยการติดตาม CPIC

ถ้าคุณกําลังตรวจสอบปัญหาการรับรองความถูกต้องหรือการลงชื่อเข้าระบบครั้งเดียว (SSO) ให้ใช้ขั้นตอนเดียวกับที่อธิบายไว้ใน รวบรวมการติดตามขั้นสูง SAP BW ยกเว้นในขั้นตอนที่ 2 ให้ป้อนตัวแปรและค่าของระบบเพิ่มเติมต่อไปนี้:

  • CPIC_TRACE—3
  • CPIC_TRACE_DIR—โฟลเดอร์ที่ถูกต้อง ตัวอย่างเช่น: E:\traces\CPIC

ส่วนที่เหลือของกระบวนการยังคงเหมือนเดิม คุณสามารถดูการติดตาม CPIC ในโฟลเดอร์ที่คุณระบุไว้ในตัวแปรสภาพแวดล้อม CPIC_TRACE_DIR ได้ คุณยังสามารถดูการติดตามปกติภายใต้ โฟลเดอร์ SapBw ได้

นอกจากนี้ ตรวจสอบให้แน่ใจว่าคุณปิดใช้งานการติดตามขั้นสูงนี้เมื่อคุณทําเสร็จแล้วโดยการลบตัวแปรสภาพแวดล้อมหรือการตั้งค่า BI_EnableSapBwTracing เป็นเท็จและ CPIC_TRACE เป็น 0

ดําเนินการติดตั้งตัวเชื่อมต่อ SAP .NET ใหม่ทั้งหมด

ถ้าจําเป็นต้องติดตั้งตัวเชื่อมต่อ SAP .NET ใหม่:

  1. เอา (ถอนการติดตั้ง) SAP .NET เชื่อมต่อ or ออก

  2. หลังจากลบออกให้ตรวจสอบว่าไม่มีการติดตั้ง SAP .NET เชื่อมต่อ or ในแคชแอสเซมบลีส่วนกลาง (GAC) โดยตรวจสอบให้แน่ใจว่าไม่มีเส้นทางต่อไปนี้หรือไม่มี DLLs:

    • 32 บิต GAC:

      C:\Windows\Microsoft.NET\assembly\GAC_32\sapnco\v4.0_3.0.0.42__50436dca5c7f7d23

      C:\Windows\Microsoft.NET\assembly\GAC_32\sapnco_utils\v4.0_3.0.0.42__50436dca5c7f7d23

    • 64 บิต GAC:

      C:\Windows\Microsoft.NET\assembly\GAC_64\sapnco\v4.0_3.0.0.42__50436dca5c7f7d23

      C:\Windows\Microsoft.NET\assembly\GAC_64\sapnco_utils\v4.0_3.0.0.42__50436dca5c7f7d23

  3. ตรวจสอบว่าไบนารีไม่ได้อยู่ใน ไฟล์โปรแกรม ตรวจสอบให้แน่ใจว่าตําแหน่งต่อไปนี้ไม่มีอยู่หรือว่างเปล่า:

    C:\Program Files\SAP\SAP_DotNetเชื่อมต่อor3_Net40_x64

    C:\Program Files (x86)\sap\SAP_DotNetเชื่อมต่อor3_Net40_x86

  4. ติดตั้งตัวเชื่อมต่อใหม่ และอย่าลืมเลือกตัวเลือก ติดตั้งแอสเซมบลีลงใน GAC เราขอแนะนําให้คุณใช้เวอร์ชันล่าสุด 3.0.23

ข้อความข้อผิดพลาดในการแก้ไขปัญหา

ไม่พบเมธอดรหัสข้อผิดพลาด SAP BW

Method not found: 'Int32 SAP.Middleware.Connector.RfcBaseException.get_ErrorCode()'

ข้อผิดพลาดนี้จะเกิดขึ้นเมื่อมีข้อผิดพลาดเกิดขึ้นบนเซิร์ฟเวอร์ SAP BW และตัวเชื่อมต่อ SAP .NET จะพยายามดึงข้อมูลเกี่ยวกับข้อผิดพลาดนั้น อย่างไรก็ตาม ข้อผิดพลาดนี้อาจซ่อนข้อผิดพลาดที่แท้จริง ข้อผิดพลาดนี้สามารถเกิดขึ้นได้เมื่อ:

  • การใช้เวอร์ชั่นเก่าของตัวเชื่อมต่อ SAP .NET

  • มีการติดตั้งตัวเชื่อมต่อ SAP .NET หลายเวอร์ชันแล้ว

  • ติดตั้งตัวเชื่อมต่อ SAP .NET สองครั้ง หนึ่งครั้งใน Global Assembly Cache (GAC) และเมื่อไม่ได้อยู่ใน GAC

ทําตามคําแนะนําภายใต้ ดําเนินการติดตั้งตัวเชื่อมต่อ SAP .NET ใหม่เพื่อติดตั้งตัวเชื่อมต่อใหม่

วิธีนี้จะไม่แก้ปัญหา แต่จะให้ข้อความแสดงข้อผิดพลาดที่แท้จริง

ข้อยกเว้น: ตัวกําหนดค่าเริ่มต้นชนิดสําหรับ 'Microsoft.Mashup.Engine1.Library.SapBusinessWarehouse
SapBwMicrosoftProviderFactoryService' โยนข้อยกเว้น

ทําตามคําแนะนําภายใต้ ดําเนินการติดตั้งตัวเชื่อมต่อ SAP .NET ใหม่เพื่อติดตั้งตัวเชื่อมต่อใหม่

ตัวเชื่อมต่อนี้จําเป็นต้องมีอย่างน้อยหนึ่งคอมโพเนนต์เพิ่มเติม

หากคุณได้รับข้อความแสดงข้อผิดพลาดนี้ ให้ทําตามขั้นตอนการแก้ปัญหาต่อไปนี้:

  1. ตรวจสอบว่าเวอร์ชันของตัวเชื่อมต่อ SAP .NET ได้รับการติดตั้งในความยาวบิตที่ถูกต้องแล้ว ถ้าคุณได้ติดตั้ง Power BI Desktop 64 บิต ตรวจสอบให้แน่ใจว่าคุณได้ติดตั้งตัวเชื่อมต่อ SAP .NET 64 บิต

  2. ตรวจสอบว่าในขณะที่ติดตั้งเชื่อมต่อ SAP .NET จะมีการตรวจสอบแอสเซมบลีการติดตั้งไปยัง GAC เมื่อต้องการตรวจสอบว่ามีการติดตั้ง GAC ให้เปิด Windows Explorer และไปที่:

          C:\Windows\Microsoft.NET\assembly\GAC_64\sapnco

    ตัวอย่างเช่น เส้นทางแบบเต็มอาจเป็น:

          C:\Windows\Microsoft.NET\assembly\GAC_64\sapnco\v4.0_3.0.0.42__50436dca5c7f7d23\sapnco.dll

ถ้าคุณติดตั้งตัวเชื่อมต่อ SAP .NET เวอร์ชัน 32 บิต มันจะเป็น C:\Windows\Microsoft.NET\assembly\GAC_32\sapnco\v4.0_3.0.42__50436dca5c7f7d23\sapnco.dll (และคุณต้องการ Power BI Desktop เวอร์ชัน 32 บิต)

อีกวิธีในการตรวจสอบ GAC คือการใช้ gacutil (หนึ่งในตัวเลือกสําหรับการปิดใช้งานการตั้งชื่อที่แข็งแกร่ง) คุณจะต้องเรียกใช้จากพร้อมท์คําสั่ง 64 บิต คุณสามารถตรวจสอบเนื้อหาของ GAC โดยการเปิดพรอมต์คําสั่ง นําทางไปยังเส้นทาง gacutil.exe และดําเนินการ:

      gacutil -l

ตัวอย่างเช่น ในเอาต์พุต คุณควรเห็น:

      sapnco, Version=3.0.0.42, Culture=neutral, PublicKeyToken=50436dca5c7f7d23, processorArchitecture=AMD64 sapnco_utils, Version=3.0.0.42, Culture=neutral, PublicKeyToken=50436dca5c7f7d23, processorArchitecture=AMD644

"ไม่อนุญาตให้มีการรับรองความถูกต้อง RFC สําหรับฟังก์ชัน ...*

Implementation 2.0 ต้องการการเข้าถึง BAPIs ต่อไปนี้ หากต้องการแก้ไข ให้ติดต่อทีม SAP Basis และร้องขอสิทธิ์ไปยัง BAPIs และ RFC เหล่านี้สําหรับผู้ใช้

  • เชื่อมต่อ:

    • RFC_PING
    • RFC_METADATA_GET
  • การดําเนินการ MDX:

    • RSR_MDX_CREATE_OBJECT
    • BAPI_MDDATASET_CREATE_OBJECT
    • BAPI_MDDATASET_SELECT_DATA
    • BAPI_MDDATASET_DELETE_OBJECT
    • RSR_MDX_GET_AXIS_INFO
    • RSR_MDX_GET_AXIS_DATA
    • RSR_MDX_GET_CELL_DATA
    • BAPI_MDDATASET_GET_AXIS_INFO
    • BAPI_MDDATASET_GET_AXIS_DATA
    • BAPI_MDDATASET_GET_CELL_DATA
  • การลดรูปแบบการส่งข้อมูล:

    • RSR_MDX_GET_FLAT_DATA
    • RSR_MDX_GET_FS_DATA
    • BAPI_MDDATASET_GET_FLAT_DATA
    • BAPI_MDDATASET_GET_FS_DATA
  • การสตรีม ExecutionMode:

    • BAPI_MDDATASET_GET_STREAMDATA
    • BAPI_MDDATASET_GET_STREAMINFO
  • ExecutionMode BasXml:

    • RSR_MDX_BXML_GET_DATA
    • RSR_MDX_BXML_GET_GZIP_DATA
    • RSR_MDX_BXML_GET_INFO
    • RSR_MDX_BXML_SET_BINDING
  • ข้อมูล เม ตา:

    • BAPI_MDPROVIDER_GET_DIMENSIONS
    • BAPI_MDPROVIDER_GET_CATALOGS
    • BAPI_MDPROVIDER_GET_CUBES
    • BAPI_MDPROVIDER_GET_MEASURES
    • BAPI_MDPROVIDER_GET_HIERARCHYS
    • BAPI_MDPROVIDER_GET_LEVELS
    • BAPI_MDPROVIDER_GET_PROPERTIES
    • BAPI_MDPROVIDER_GET_MEเมกะไบต์ ERS
    • BAPI_MDPROVIDER_GET_VARIABLES
  • ข้อมูล:

    • BAPI_IOBJ_GETDETAIL (จําเป็นสําหรับขนาดที่พิมพ์ (DATS, TIMS))
    • BAPI_USER_GET_DETAIL (ใช้เฉพาะสําหรับอินเทอร์เฟซการลดรูปแบบเรียบ)
    • RFC_READ_TABLE (จําเป็นสําหรับชื่อแค็ตตาล็อกและการเรียกใช้ค่าตัวแปรบางอย่าง)
  • อาจถูกเรียกใช้โดยตัวเชื่อมต่อ SAP .NET พื้นฐาน:

    • RFC_GET_FUNCTION_INTERFACE
    • FUNCTION_IMPORT_INTERFACE
    • DDIF_FIELDINFO_GET
    • SYSTEM_FINISH_ATTACH_GUI
    • BGRFC_DEST_CONFIRM
    • BGRFC_CHECK_UNIT_STATE_SERVER
    • BGRFC_DEST_SHIP
    • ARFC_DEST_SHIP
    • RFC_FUNCTION_SEARCH
    • RFC_SYSTEM_INFO
    • RFC_SET_REG_SERVER_PROPERTY
    • RFC_DOCU
    • SEO_GET_CLIF_REMOTE
    • SYSTEM_PREPARE_ATTACH_GUI
    • API_CLEAR_TID
    • ARFC_DEST_CONFIRM

ไม่พบเมธอด 'Int32 SAP ตรงกลาง เชื่อมต่ออร์ RfcBaseException.get_ErrorCode()

ตรวจสอบว่า มีการติดตั้งตัวเชื่อมต่อ SAP .NET อย่างถูกต้อง โปรดดูที่ ดําเนินการติดตั้งตัวเชื่อมต่อ SAP .NET ใหม่ทั้งหมด

ข้อผิดพลาดนี้ปรากฏขึ้นเมื่อเวอร์ชันที่ติดตั้งใน GAC ต่ํากว่าเวอร์ชัน 3.0.18.0 ที่คาดไว้ บันทึกย่อ SAP 2417315 อธิบายถึงสถานการณ์นี้

คุณสมบัติของสตริงเชื่อมต่อตั้งค่าโดยตัวเชื่อมต่อ

เมื่อมีการระบุชื่อคู่ค้า SNC และไลบรารี SNC ตัวเชื่อมต่อ SAP BW Application Server (implementation 2.0) จะตั้งค่าคุณสมบัติเหล่านี้ในสายอักขระการเชื่อมต่อ:

  • SNC_MODE— SncModeApply
  • SNC_LIB—ด้วยเส้นทางไลบรารีที่ระบุ; ถ้าเป็นตัวแปรสภาพแวดล้อม ตัวแปรดังกล่าวจะถูกขยายในตอนนี้
  • SNC_PARTNERNAME—ด้วยค่าที่ระบุ
  • SNC_QOP = RfcConfigParameters.RfcSncQOP.Default

สิ่งเหล่านี้ใช้สําหรับทั้งการเชื่อมต่อ SAP BW Application Server และ SAP BW Message Server

สําหรับการเชื่อมต่อทั้งสองชนิด ชุดตัวเชื่อมต่อ:

  • LANG (ภาษา)
  • ไคล เอ็นต์

สําหรับการเชื่อมต่อ SAP BW Application Server ชุดตัวเชื่อมต่อ:

  • ASHOST (AppServerHost)
  • SYSNR (หมายเลขระบบ)

สําหรับการเชื่อมต่อเซิร์ฟเวอร์ข้อความ SAP BW ชุดตัวเชื่อมต่อ:

  • MSHOST (MessageServerHost)
  • SYSID (SystemID)
  • GROUP (LogonGroup)

คําสั่ง MDX ไม่ถูกต้องพร้อม <คําสั่งภายใน>

ข้อผิดพลาดนี้มาจากเซิร์ฟเวอร์ SAP BW โดยตรง Implementation 1 ของตัวเชื่อมต่อ ขึ้นอยู่กับ Netweaver RFC ไม่เปิดเผยข้อผิดพลาดเหล่านี้กับผู้ใช้ ส่งกลับชุดผลลัพธ์ที่ว่างเปล่าแทน

ปัญหานี้จะกล่าวถึงในบันทึกย่อ SAP ต่อไปนี้ การเข้าถึงบันทึกย่อเหล่านี้จําเป็นต้องมี S-user ติดต่อทีม SAP Basis ของคุณเพื่อแก้ไขปัญหาที่เกี่ยวข้อง

นอกจากนี้ สําหรับข้อผิดพลาดอื่น ๆ ที่คล้ายกัน คุณสามารถตรวจทานเนื้อหาของบันทึกย่อ SAP ต่อไปนี้ และนําไปใช้ตามความเหมาะสมสําหรับสภาพแวดล้อมของคุณ:

ปัญหาและข้อจํากัด

การเปลี่ยนชื่อตัวแปรบนคิวบ์ SAP ทําให้รายงาน DirectQuery อยู่ในสถานะที่ไม่สามารถแก้ไขได้และไม่สามารถกู้คืนได้

อาการต่อไปนี้เกิดขึ้น:

  • ข้อความแสดงข้อผิดพลาด—[Expression.Error] The import [XXXX] matches no exports.

  • ในบันทึก—Message: [Expression.Error] The key didn't match any rows in the table.

  • StackTrace:

    at Microsoft.Mashup.Engine1.Runtime.TableValue.get_Item(Value key)
    at Microsoft.Mashup.Engine1.Library.Cube.CubeParametersModule.Cube.ApplyParameterFunctionValue.GetParameterValue(CubeValue cubeValue, Value parameter)
    at Microsoft.Mashup.Engine1.Library.Cube.CubeParametersModule.Cube.ApplyParameterFunctionValue.TypedInvoke(TableValue cube, Value parameter, Value arguments)
    Detail: [Key = [Id = \"[!V000004]\"], Table = #table({...}, {...})]
    

หนึ่งในการแก้ปัญหาชั่วคราวที่เป็นไปได้คือ:

  1. ทําสําเนาของไฟล์ PBIX (เป็นสิ่งต่าง ๆ อาจเสียหาย)

  2. เพิ่มตัวแปรสภาพแวดล้อมที่เรียกว่า PBI_AlwaysEnableQueryEditor ด้วยค่า true การตั้งค่านี้จะอนุญาตให้เข้าถึงตัวแก้ไขคิวรีได้แม้ในโหมด DirectQuery

    หมายเหตุ

    ตัวแปรสภาพแวดล้อมนี้ไม่ได้รับการสนับสนุน ดังนั้นจึงควรใช้ตามที่อธิบายไว้ที่นี่เท่านั้น

  3. คลิกขวาบนคิวรี "Cube" และเลือกเครื่องมือแก้ไขขั้นสูง

  4. คิวรีควรมีเส้นที่ขึ้นต้นด้วย "{Cube.ApplyParameter, "[! V000004]" (พารามิเตอร์ที่ขาดหายไป)" ลบเส้นนั้นออก

  5. เลือก เสร็จสิ้น

  6. ปิดตัวแก้ไข Power Query

  7. รีเฟรชวิชวลที่ได้รับผลกระทบ

หากการแก้ปัญหาชั่วคราวข้างต้นไม่ได้ผล การแก้ไขทางเลือกเดียวคือให้คุณสร้างรายงานใหม่

ข้อมูลตัวเลขจาก SAP BW

หมายเหตุ

ข้อมูลต่อไปนี้จะใช้เฉพาะเมื่อใช้ Implementation 1.0 ของตัวเชื่อมต่อ SAP BW หรือ Implementation 2.0 ของตัวเชื่อมต่อ SAP BW ที่มีโหมดการลดรูปแบบแบน (เมื่อ ExecutionMode =67)

บัญชีผู้ใช้ใน SAP BW มีการตั้งค่าเริ่มต้นสําหรับวิธีการจัดรูปแบบค่าทศนิยมหรือวันที่/เวลาเมื่อแสดงให้กับผู้ใช้ใน SAP GUI

การตั้งค่าเริ่มต้นถูกรักษาไว้ในระบบ SAP ในโปรไฟล์ผู้ใช้สําหรับบัญชีผู้ใช้ และผู้ใช้สามารถดูหรือเปลี่ยนการตั้งค่าเหล่านี้ใน SAP GUI ด้วยเมนูเส้นทางข้อมูล>>โปรไฟล์ผู้ใช้ที่เป็นเจ้าของ

เมนูการตั้งค่าสวรรคตทศนิยม

Power BI Desktop คิวรีระบบ SAP สําหรับสัญกรณ์ทศนิยมของผู้ใช้ที่เชื่อมต่อและใช้สัญกรณ์ดังกล่าวเพื่อจัดรูปแบบค่าทศนิยมในข้อมูลจาก SAP BW

SAP BW ส่งกลับข้อมูลทศนิยมด้วย , (เครื่องหมายจุลภาค) หรือ . (จุด) เป็นตัวคั่นทศนิยม ในการระบุ SAP BW นั้นควรใช้สําหรับตัวคั่นทศนิยม โปรแกรมควบคุมที่ใช้โดย Power BI Desktop ทําการเรียกสายไปยังBAPI_USER_GET_DETAIL การเรียกนี้ส่งกลับโครงสร้างที่เรียกว่า DEFAULTSซึ่งมีเขตข้อมูลที่เรียกว่า DCPFM ที่จัดเก็บ เครื่องหมายรูปแบบทศนิยม เขตข้อมูลจะใช้หนึ่งในค่าต่อไปนี้:

  • ' ' (ช่องว่าง) = จุดทศนิยมเป็นจุลภาค: N.NNN,NN
  • 'X' = จุดทศนิยมคือช่วงเวลา: N,NNN.NN
  • 'Y' = จุดทศนิยมคือ N NNN NNN,NN

ลูกค้าที่รายงานปัญหานี้ที่พบว่าการเรียก BAPI_USER_GET_DETAIL ล้มเหลวสําหรับผู้ใช้บางราย ซึ่งแสดงข้อมูลไม่ถูกต้อง และมีข้อความข้อผิดพลาดที่คล้ายกับข้อความต่อไปนี้:

   You are not authorized to display users in group TI:
      <item>
         <TYPE>E</TYPE>
         <ID>01</ID>
         <NUMBER>512</NUMBER>
         <MESSAGE>You are not authorized to display users in group TI</MESSAGE>
         <LOG_NO/>
         <LOG_MSG_NO>000000</LOG_MSG_NO>
         <MESSAGE_V1>TI</MESSAGE_V1>
         <MESSAGE_V2/>
         <MESSAGE_V3/>
         <MESSAGE_V4/>
         <PARAMETER/>
         <ROW>0</ROW>
         <FIELD>BNAME</FIELD>
         <SYSTEM>CLNTPW1400</SYSTEM>
      </item>

เมื่อต้องแก้ไขข้อผิดพลาดนี้ ผู้ใช้ต้องขอให้ผู้ดูแลระบบ SAP อนุญาตให้ผู้ใช้ SAP BW ที่ถูกใช้ใน Power BI มีสิทธิ์ในการดําเนินการBAPI_USER_GET_DETAIL ควรตรวจสอบว่าผู้ใช้นั้นมีค่าที่จําเป็น DCPFM ตามที่อธิบายไว้ก่อนหน้านี้ในโซลูชันการแก้ไขปัญหานี้หรือไม่

เชื่อมต่อ ivity สําหรับคิวรี SAP BEx

คุณสามารถดําเนินการคิวรี BEx ใน Power BI Desktop ได้โดยการเปิดใช้งานคุณสมบัติเฉพาะ ดังที่แสดงในรูปต่อไปนี้:

เปิดใช้งานรุ่นสําหรับการเข้าถึงภายนอก

ข้อจํากัดของอินเทอร์เฟซ MDX

ข้อจํากัดของอินเทอร์เฟซ MDX คือตัวแปรที่ยาวจะสูญเสียชื่อทางเทคนิคและถูกแทนที่ด้วย V00000#

ไม่มีตัวอย่างข้อมูลในหน้าต่างตัวนําทาง

ในบางกรณี กล่องโต้ตอบตัว นําทางจะไม่แสดงตัวอย่างข้อมูล แต่จะให้ การอ้างอิงวัตถุที่ไม่ได้ตั้งค่าอินสแตนซ์ของข้อความแสดงข้อผิดพลาดของวัตถุ แทน

ผู้ใช้ SAP ต้องเข้าถึงโมดูลฟังก์ชัน BAPI เฉพาะเพื่อรับเมตาดาต้าและดึงข้อมูลจาก InfoProviders ของ SAP BW โมดูลเหล่านี้ประกอบด้วย:

  • BAPI_MDPROVIDER_GET_CATALOGS
  • BAPI_MDPROVIDER_GET_CUBES
  • BAPI_MDPROVIDER_GET_DIMENSIONS
  • BAPI_MDPROVIDER_GET_HIERARCHYS
  • BAPI_MDPROVIDER_GET_LEVELS
  • BAPI_MDPROVIDER_GET_MEASURES
  • BAPI_MDPROVIDER_GET_MEเมกะไบต์ ERS
  • BAPI_MDPROVIDER_GET_VARIABLES
  • BAPI_IOBJ_GETDETAIL

เมื่อต้องการแก้ไขปัญหานี้ ตรวจสอบว่าผู้ใช้มีสิทธิ์เข้าถึงโมดูล MDPROVIDER ต่างๆ และBAPI_IOBJ_GETDETAIL หากต้องการแก้ไขปัญหานี้หรือปัญหาที่คล้ายกัน คุณสามารถเปิดใช้งานการติดตามได้ เลือก ไฟล์>ตัวเลือกและตั้งค่า>ตัวเลือก ใน ตัวเลือก เลือก การวินิจฉัย จากนั้นเลือก เปิดใช้งานการติดตาม พยายามรับข้อมูลจาก SAP BW ในขณะที่เปิดใช้งานการติดตามอยู่ และตรวจสอบไฟล์การติดตามสําหรับรายละเอียดเพิ่มเติม

ข้อยกเว้นของหน่วยความจํา

ในบางกรณี คุณอาจพบข้อผิดพลาดของหน่วยความจําต่อไปนี้:

  • Message: No more memory available to add rows to an internal table.
  • Message: [DataSource.Error] SAP Business Warehouse: The memory request for [number] bytes could not be complied with.
  • Message: The memory request for [number] bytes could not be complied with.

ข้อยกเว้นหน่วยความจําเหล่านี้มาจากเซิร์ฟเวอร์ SAP BW และเนื่องจากเซิร์ฟเวอร์มีหน่วยความจําไม่เพียงพอในการประมวลผลคิวรี ซึ่งอาจเกิดขึ้นเมื่อคิวรีส่งกลับชุดผลลัพธ์ขนาดใหญ่หรือเมื่อคิวรีซับซ้อนเกินไปสําหรับเซิร์ฟเวอร์ที่จะจัดการ ตัวอย่างเช่น เมื่อคิวรีมี crossjoins จํานวนมาก

เมื่อต้องแก้ไขข้อผิดพลาดนี้ คําแนะนําคือการลดความซับซ้อนของคิวรีหรือแบ่งออกเป็นคิวรีที่มีขนาดเล็กลง ถ้าเป็นไปได้ ให้ส่งการรวมเพิ่มเติมไปยังเซิร์ฟเวอร์ อีกวิธีหนึ่งคือ ติดต่อทีม SAP Basis ของคุณเพื่อเพิ่มทรัพยากรที่พร้อมใช้งานในเซิร์ฟเวอร์

การโหลดสตริงข้อความที่ยาวกว่า 60 อักขระใน Power BI Desktop ล้มเหลว

ในบางกรณี คุณอาจพบว่าสตริงข้อความจะถูกตัดทอนเป็น 60 อักขระใน Power BI Desktop

ก่อนอื่น ทําตามคําแนะนําใน 2777473 - MDX: คําถามที่ถามบ่อยสําหรับการเข้าถึง Power BI หรือ BW/4HANA และดูว่าสามารถแก้ไขปัญหาของคุณได้หรือไม่

เนื่องจากตัวเชื่อมต่อ Power Query SAP Business Warehouse ใช้อินเทอร์เฟซ MDX ที่ให้มาโดย SAP สําหรับการเข้าถึงจากบริษัทอื่น คุณจะต้องติดต่อ SAP สําหรับโซลูชันที่เป็นไปได้เนื่องจากพวกเขาเป็นเจ้าของเลเยอร์ระหว่างอินเทอร์เฟซ MDX และเซิร์ฟเวอร์ SAP BW ถามว่า "ข้อความยาวคือ XL" สามารถระบุสําหรับสถานการณ์เฉพาะของคุณได้อย่างไร

รูปภาพแสดงตําแหน่งที่ตั้งค่าข้อความยาวคือการตั้งค่า xl

ขีดจํากัด CHAR ของ 60 แม้จะมี "ข้อความยาว" ใน SAP BW

มีข้อจํากัดที่ทราบกันดีว่าลักษณะ "ข้อความยาว" ใน SAP BW ปรากฏโดยมีขีดจํากัดอักขระ 60 ตัวใน Power BI ขีดจํากัดอักขระนี้เกิดเนื่องจากข้อจํากัดในอินเทอร์เฟซ MDX และไม่มีวิธีแก้ไขปัญหาชั่วคราวที่รู้จัก SAP ได้จัดทําเอกสารข้อจํากัด MDX นี้ใน บันทึกย่อ SAP นี้

การโยกย้ายไปยังการนําไปใช้งาน 2.0 เมื่อใช้ Direct Query

เนื่องจากเลิกใช้ตัวเชื่อมต่อ SAP Business Warehouse 1.0 คุณอาจต้องอัปเดตคิวรีของคุณเพื่อใช้ประโยชน์จากการดําเนินการ 2.0 เมื่อคุณใช้ Direct Query การเข้าถึงตัวแก้ไขคิวรีจะถูกจํากัด ดังนั้นคุณไม่สามารถเปลี่ยนไปเป็น implementation 2.0 ได้อย่างง่ายดายโดยไม่ต้องสร้างคิวรีทั้งหมดของคุณ การแก้ไขปัญหาชั่วคราวคือการเพิ่มตัวแปรสภาพแวดล้อมระบบเพื่ออนุญาตให้เข้าถึงตัวแก้ไขคิวรี โปรดทราบว่าขั้นตอนต่อไปนี้ไม่ได้รับการสนับสนุนอย่างเป็นทางการ และควรใช้ตามที่แสดงในที่นี้เท่านั้น

  1. สร้างตัวแปรสภาพแวดล้อมใหม่โดยนําทางไปยัง File Explorer>คุณสมบัติ>พีซี>นี้ การตั้งค่าระบบขั้นสูง ตัวแปร>>ระบบ ตัวแปร>ระบบใหม่ หรือโดยการเปิดพร้อมท์คําสั่งและป้อนsysdm.cplจากนั้นเลือก ใหม่ ภายใต้ ตัวแปรระบบ
  2. ตั้งชื่อตัวแปรPBI_AlwaysEnableQueryEditorสภาพแวดล้อมและตั้งค่าtrue การตั้งค่าตัวแปรนี้ช่วยให้สามารถเข้าถึงตัวแก้ไขคิวรีได้แม้ในโหมด Direct Query
  3. ใน Power BI Desktop ในแท็บ หน้าแรก เลือก แปลงข้อมูล เพื่อเปิดตัวแก้ไข Power Query
  4. อัปเดตคิวรีเพื่อใช้ implementation 2.0 โดยทําตามคําแนะนําเหล่านี้ โดยเริ่มต้นด้วยขั้นตอนที่ 2 ในบทความนั้น

คิวรีสุดท้ายของคุณควรมีลักษณะบางอย่างเช่นSapBusinessWarehouse.Cubes("server", "system", "clientId", [Implementation = "2.0"])