سؤال

لدي سؤال حول الحرفية المالية في API Force.com (http://www.salesforce.com/us/developer/docs/api/content/sforce_api_calls_soql_select_dateformats.htm):

في أي منطقة زمنية يتم حساب نطاقات التاريخ؟

على سبيل المثال ، افترض أننا ننفذ الاستعلام:

حدد المعرف من الفرصة حيث يغلق = this_fiscal_quarter

حيث ، وفقًا للإعدادات المالية لشركتنا ، يعمل هذا _fiscal_quarter من 1 يناير إلى 31 مارس.

هل نطاق استخدام هذا _fiscal_quarter ...

  • المنطقة الزمنية للمستخدم؟ على سبيل المثال ، إذا كانت المنطقة الزمنية للمستخدم هي GMT-8 ، فإن هذا _fiscal_quarter = 1 يناير 00:00 GMT-8 إلى 31 مارس 23:59 GMT-8 (أو 1 يناير 08:00 UTC إلى 31 مارس 07:59 UTC)
  • المنطقة الزمنية الافتراضية للشركة (وفقًا لملف الشركة)؟ على سبيل المثال ، إذا كانت المنطقة الزمنية الافتراضية للشركة هي GMT-8 ، فإن هذا _fiscal_quarter = 1 يناير 00:00 GMT-8 إلى 31 مارس 23:59 GMT-8 (أو 1 يناير 08:00 UTC إلى 31 مارس 07:59 UTC)
  • التوقيت العالمي؟ this_fiscal_quarter = 1 يناير 00:00 UTC إلى 31 مارس 23:59 UTC
  • شيء آخر؟
هل كانت مفيدة؟

المحلول

من تجربتي (متعة مع التقارير ، وليس الاستفسارات) ، فإن الملاحظة من جميع الطريق في أسفلها صالحة أيضًا للحرفية الزمنية. لذلك يستخدم تشغيل إعداد المنطقة الزمنية للمستخدم.

يتم تعويض هذه القيم بواسطة المنطقة الزمنية. على سبيل المثال ، في المنطقة الزمنية في المحيط الهادئ ، فإن أقرب تاريخ صالح هو 1699-12-31T16: 00: 00 ، أو 4:00 مساءً في 31 ديسمبر 1699.

ربما يمكنك ببساطة إنشاء سجل اختبار مع حقل DateTime قليلاً خارج الربع المالي والاستعلام عن ذلك "حيث MyDateTimeField__c> this_fiscal_quarter"؟

أنظر أيضا http://forums.sforce.com/t5/general-development/soql-date-literal-today-is-evalated-incorrectly/mp/43607

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top