تنسيق MDX_String for٪ لا يتضاعف بنسبة 100 عند تسجيل الدخول في المقدمة

StackOverflow https://stackoverflow.com/questions/2241492

  •  19-09-2019
  •  | 
  •  

سؤال

للاستعلام التالي:

with 
member testVal as 0.1234
member testNormal as testVal
member testPrepend as testVal, format_string="%##.00"
member testMidpend as testVal, format_string="##%.00"
member testAppend as testVal, format_string="##.00%"
select { testNormal, testPrepend, testMidpend, testAppend} on axis (0)
from [SomeRandomPlace]

يتم إرجاع ما يلي:

testNormal  testPrepend     testMidpend     testAppend
0.1234      %.12            12%.34          12.34%

هذا يسبب مشكلات، حيث نستخدم نفس سلسلة التنسيق في .NET كعملية بعد العملية (يتطلب بعض التحكم منا أن نفعل ذلك)، ويتصرف كما هو متوقع (مضاعفة ذلك بنسبة 100 بسبب علامة٪).

هل هذا السلوك الموثق؟ أو بعض علة غامضة؟ أو هل أفعل شيئا خاطئا / غريب؟ أشعر بذلك testPrepend يجب أن تضاعف العضو أيضا بنسبة 100، لكنه ليس كذلك.

هل كانت مفيدة؟

المحلول

يبدو أن السلوك الموثق يعني أن طريقتك يجب أن تعمل: http://msdn.microsoft.com/en-us/library/ms146084.aspx.

يمثل النسبة النصب النائب. تضاعف التعبير بنسبة 100. يتم إدراج حرف النسبة المئوية (٪) في الموضع الذي تظهر فيه النسبة المئوية في سلسلة التنسيق.

لقد جربتها بأعداد أكبر، لضمان ملء القناع، يبدو أنه يتجاهل رمز النسبة المئوية إذا كانت الشخصية الأولى؟ ربما ارفعها مع MS Connect؟

with 
member testVal as 13.1234
member testNormal as testVal
member testFront as testVal, format_string = "%##.00"
member testFrontBack as testVal, format_string = "%##.00%"
member testString as testVal, format_string="Percent"
member testSymbol as testVal, format_string="%"
member testStringSymbol as testVal, format_string="%Percent" //Lol
select { testNormal, testFront, testFrontBack, testString, testSymbol, testStringSymbol} on axis (0)
from [Cube]
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top