المحفوظات الشهرية: كانون الأول/ديسمبر 2007

ابني اختراق Gamespot

حتى, هذا الصباح, ابني عاقدة العزم على رؤية مقيدة سن 13 هالة 3 الفيديو في جيم سبوت. وأنا خارج التجريف الثلج, حتى أنا لست هناك تساعد أو تعرقل. الحاجة هي أم الاختراع، وكل ذلك … لديه يوريكا! لحظة. أنه يدرك أنه على الرغم من أن جيم سبوت يريد أن أدخل له ريال مدريد تاريخ الميلاد, أنه يمكن إدخال فعلا أي تاريخ الميلاد يريد. بمجرد أنه أدرك أن, وقد أدلى نفسه القديم ما يكفي لمشاهدة الفيديو.

I’m not quite sure how I feel about this 🙂

مضحك الأحد: “فمن القمامة الطباعة”

في أول وظيفة لي الخروج من الكلية في 1991, لقد كنت محظوظاً بالعمل لشركة تصنيع مع 13 مواقع, لا بما في ذلك في مقر الشركة في ولاية نيو جيرسي. التحقت فقط عندما تم طرح الشركة نظام جديد لتخطيط موارد المؤسسات. كنا إدارة تكنولوجيا المعلومات صغيرة لحوالي عشرة أشخاص في المجموع, اثنان منهم عدم السفر. وينطوي جزء من المشروع استبدال نظام IBM 36 مربعات مع أجهزة HP و HPUX. كل شخص يستخدم أنابيب الخضراء للوصول إلى النظام.

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

لسبب ما أن يفهم ابدأ، وفعلا لم أفكر أن اسأل عن الوقت, وقد أجرينا بعض الشركة المتعاقدة يأتي على طول وتشغيل الكابل في جميع أنحاء المصنع, ولكن لم يكن لدينا لهم على الموصلات. حتى, وكان هناك مربع تصحيح "" مع عشرات من الكابلات غير المسماة في غرفة الحاسوب "" وسارت هذه حول المبنى إلى أماكن مختلفة في المبنى.

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

لكن, وكان هناك كابل هام واحد أن نحن لم أستطع معرفة. المصنع في بالتيمور كان على علاقة مع موقع تخزين في نيوجيرسي. بعض الطلبيات في بالتيمور شحنها خارج الموقع. هناك اثنين من الأسلاك التي كانت لدينا للاتصال مربع HPUX: أنبوب أخضر وطابعه. وكان من السهل الأنبوب الأخضر, ولكن الطابعة تحولت إلى كابوس ثلاثة أسابيع.

إذا كنت لا تعرف أنها, أو أنها كبتت بأنها, التعامل مع أنابيب خضراء والطابعات بهذه الطريقة, هناك خيارات مختلفة يمكنك التعامل مع بإعداد مختلف دبابيس. 8-بت, 7-بت, التكافؤ (حتى/الغريب/بلا), ربما الآخرين. إذا كان يمكنك الحصول على أحد هذه الإعدادات غير صحيح, أنبوب أو الطابعة لا يزال يظهر الأشياء, ولكن سيكون من مجموع رطانة, أو أنها ستكون رطانة مع الكثير من الأشياء المعروفة في ما بين. طبعًا, هذه الدبابيس من الصعب رؤية، ويجب أن يتم تعيين باستخدام سائق المسمار حافة مسطحة صغيرة. وهم ابدأ القياسية.

وأنشأنا الأول من العديد من المكالمات سريعة مع الرجل نيوجيرسي (كاره كمبيوتر اشهب الذين ربما الشتائم لنا حتى يومنا هذا). حصلنا على الأنبوب الأخضر يعمل بسرعة كبيرة, ولكن نحن لم أستطع الحصول على الطابعة للعمل. أنها تبقى "الطباعة القمامة". ونحن سوف إنشاء موصل RJ11 جديدة, التبديل بين متقاطعة ومستقيم. ونحن سوف حذف المنفذ وإعادة إنشائه في Unix. أننا مررنا بالمهمة الشاقة المتمثلة في وجود له شرح لنا دبوس التكوين على الطابعة, ابدأ متأكداً إذا كان يفعل ذلك بشكل صحيح.

فقد حان الوقت للذهاب العيش, كل شيء في بالتيمور هو طنين, ولكن لا يمكن أن نحصل على الطابعة لعن في نيوجيرسي العمل! ونحن لقد استنفدت كل الاحتمالات باستثناء القيادة حتى العودة إلى نيو جيرسي للعمل على الطابعة في الشخص. لتجنب كل ما يقود, أننا نطلب منه أن الفاكس لنا أخيرا ما يحصل عندما يكون "القمامة", معربا عن أمله في أن تكون ربما هناك فكرة عن بعض في تلك القمامة التي سوف يقول لنا ما نقوم به خطأ.

عندما وصلنا الفاكس, كنا نعرف فورا ما كانت خاطئة. انظر, وكان لدينا طريقة لاختبار ما إذا كنا قد تكوين طابعة بشكل صحيح على إصدار ليرة لبنانية "" أمر مثل هذا:

ليرة لبنانية/إلخ/passwd

أساسا, نحن تطبع ملف كلمة المرور unix. دائماً الحالية والخروج من مربع, صفحة واحدة فقط دائماً. يمكنك القياسية يونيكس كلمة مرور ملف يبدو شيئا من هذا القبيل:

سميث:*:100:100:8أ-74(مكتب):/الصفحة الرئيسية/سميث:/ضيف usr/بن/ش:*:200:0::/الصفحة الرئيسية/ضيف:/البيرة/بن/ش  

ونحن قد تم طبع ملف كلمة المرور مرارا وتكرارا لعدة أسابيع وكان الطباعة بشكل صحيح. ومع ذلك, للمستخدم النهائي, كان "الطباعة القمامة".

</نهاية>

بعد قضية التحدي المتعدد أوراق اعتماد شبكة أخرى والحل

موكلي مؤخرا تركيب جهاز ماجيك من العرعر التي يبدو أن استبدال بهم موازن تحميل شبكة سيسكو القديمة (NLB). وفي نفس الوقت تقريبا, قمنا بتركيب الإصلاحات الضرورية معالجة مشكلة سير العمل.

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

واتضح أن العرعر كان نوعا من إعداد الضغط. واحدة من الأرقام ربيد عبر تشغيل المجموعة في الشبكة أن الانطلاق. أن تحل مشكلتنا.

هذه ليست المرة الأولى التي قد تم ضغط السبب الجذري للمشكلة SharePoint النسبة لي. ضغط IIS أثرت سلبا في أداة طرف الثالث من الناس الطيبين في "مصنع صافي دوت" IE 6 المتصفحات (إنترنت إكسبلورر 7 المتصفحات التي عملت بدون صعوبة).

حتى, إضافة "ضغط" إلى قائمة المخاطر.

</نهاية>

الائتمان إلى: http://www.elfwood.com/art/s/h/sherry/death_colour.jpg.html

[تشنورتي] بطاقات: ,

التفكير في تغيير منصة المدونات

لقد بدأت مسيرتي المدونات "" باستخدام منصة مايكروسوفت وأنها كانت جيدة بالنسبة لي. فمن السهل أن وظيفة, وهناك خيارات جيدة والحاجيات لإدارة الخاص بك "الفضاء", مخزن ويب كريمة وما إلى ذلك.

ومع ذلك, أنا حقاً فقط سقط في حل مرض التصلب العصبي المتعدد مع تقريبا أي تخطيط. أن المكالمات وحدها بالنسبة لي لتقييم أين أنا وأين أنا, فيما يتعلق بمنصة المدونات. وهناك أيضا اثنين من أوجه القصور الهامة الذي يزعجني الحق الآن--مقارنة Windows Live Spaces.

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

الثانية, هناك لا يبدو أن يكون أي إليه "نقد" بلوق ويندوز العيش في الفضاء. في الحقيقة, من أجل التخلص من إعلان مرض التصلب العصبي المتعدد (من الذي أنا جني أي فائدة), بحاجة لدفع فعلا مايكروسوفت. (على الأقل, وهذا كيفية فهمه; لقد كنت غير قادر على الحصول على إجابات قاطعة لهذا والأسئلة مثل ذلك).

والآن بعد أن لقد حصلت النمط المعمول به ومجموعة من العادات المدونات, أريد تقييم الخيارات الأخرى. لقد فعلت بعض البحوث، وهناك الكثير من الخيارات, ولكن أنا الغريب ما الناس الأخرى, الآخرين لا سيما في المجتمع SharePoint (المدونين أو القراء), ترغب في استخدام.

إذا كان هذا الموضوع يهمك ولديك الرأي أو على استعداد لتبادل الخبرات الخاصة بك, الرجاء ترك تعليق، أو البريد الإلكتروني لي مباشرة.

بفضل!

<نهاية/>

[تشنورتي] بطاقات:

يرسل البريد الإلكتروني مصمم SharePoint ???? في رسالة بالبريد الإلكتروني

أطلب من المستخدمين المنتدى أحياناً: لماذا وضع مصمم SharePoint ???? في البريد الإلكتروني الخاص بي بدلاً من قيمة الحقل?

سبب واحد وهذا يحدث لأن المتغير التي أشرتم إليها null.

يمكن أن يحدث هذا لأن كنت تحاول أن مرجع حقل من العنصر الحالي "" ولكن ابدأ المستخدم بإدخال قيمة في هذا الحقل من النموذج.

<نهاية/>

[تشنورتي] بطاقات:

قارن / اختبار للتواريخ فارغة في SharePoint مصمم سير العمل

السيناريو: في SharePoint مصمم سير العمل, أنت بحاجة إلى تحديد ما إذا كان حقل تاريخ فارغة.

المشكلة: الحزب الاشتراكي الديمقراطي لا توفر طريقة مباشرة لمقارنة مواعيد لأي شيء آخر غير موعد. لا يمكنك إنشاء شرط مثل هذا: "إذا كان [داتيفيلد] يساوي فارغة ".

الحل: تحويل التاريخ إلى سلسلة. استخدام مقارنة السلسلة لتحديد ما إذا كان التاريخ فارغة.

لقطات الشاشة:

وتظهر لقطات الشاشة التالية كيفية القيام بذلك. في هذا السيناريو, حقل في عنصر, "التصاريح البيئية:أولاً تصريح تاريخ التذكير ", ويقدم وسير العمل حرائق في الاستجابة.

الصورة

الصورة

وتلاحظ:

عندما حاولت هذه, كان مفاجأة سارة لتعلم أنه يعمل. كان قلقا من أن مصمم SharePoint قد عدم السماح بتعيين سلسلة (متغير:سترينجريمينديرداتيداتي) ولكن عليها تسمح لها.

وكنت أيضا القلق لأن السماح بذلك, القيمة التي قد تكون فارغة (null) وأما نسف WF في وقت التشغيل أو ربما رفع درجة الحرارة العالمية 1/2 درجة, ولكن هذه المخاوف لا أساس لها.

</نهاية>

[تشنورتي] بطاقات:

شريط ما "زال مرتفعا جداً" "تمديد موس"

اليوم, كنت تعمل مع عميل وتصف كيفية تعديل جزء ويب الخاص استعلام المحتوى، وعرض بتات إضافية من المعلومات من نوع محتوى.

"أولاً., يمكنك تكوين كقوب للاتصال مصادر البيانات, ثم يمكنك تصدير إلى محطة العمل الخاصة بك, تعديل <كوممونفيوفيلدس>, تحميل, إزالة الأصلي والآن ' جاهزة’ لعرض تلك الأعمدة الأخرى. القادم, فتح "مصمم SharePoint", انتقل إلى جذر مجموعة الموقع وتحديد موقع ItemStyle.xsl. نسخ أحد القوالب كنقطة انطلاق مفيدة. العودة وتعديل كقوب لجعل استخدام هذا القالب الجديد. وأخيراً, تعديل القالب لتقديم حقول جديدة! (لا تنسى للتحقق من ذلك مرة أخرى في ذلك الأخرى المستخدمين يمكن الاطلاع على النتائج)."

من الواضح تماما كل شيء بالنسبة لي (ومعظمنا SharePoint أنواع المطور) ما يدور وكيف أنها لطيفة جداً, حقا, أن جوانب استرجاع البيانات كقوب ذلك جيدا-منفصلة من جوانب عرض البيانات. لكن, ليس من السهل جداً لشرح, هل هو?

<نهاية/>

[تشنورتي] بطاقات: ,

عرض نتائج جزء ويب استعلام المحتوى في الشبكة / الجدول

نظرة عامة والهدف

من خارج منطقة الجزاء, موس’ جزء ويب الخاص باستعلام المحتوى (كقوب) تعرض نتائجها في شكل قائمة, مماثلة نتائج البحث. من الممكن أيضا لعرض النتائج في تنسيق الشبكة (الأول-هاء. تنسيق جدول HTML). تنسيقات الشبكة الأفضل في بعض الحالات. أنا تصف كيفية تحقيق هذا التأثير في هذه المقالة..

سيناريو العمل

لقد عملت مع عميل على تمهيدية موس على مستوى المؤسسة. لقد قمنا بتصميم على تصنيف المشاريع مواطنين من الدرجة الأولى في التسلسل الهرمي ويكون موقع المستوى الأعلى الخاصة بهم. مديرو المشروع الاحتفاظ بقائمة معلومات ملخص المشروع المفرد, مثل العنوان, الميزانية, تاريخ الانتهاء المتوقع, أما بقية الميزانية وغيرها من المجالات نوع التلخيص. قبل "المفرد" يعني قائمة SharePoint مخصصة يضمن أن تحتوي على عنصر واحد فقط. ننجرف, يبدو مثل هذا:

الصورة

النهج التقني هو الشيء نفسه كما هو موضح هنا (http://paulgalvin.spaces.live.com/blog/cns!1CC1EDB3DAA9B8AA!447.entry). يستخدم كقوب تحويل XSL تنبعث منها HTML للمتصفح لتقديم.

أتصور النتيجة دائماً قبل الغوص في XSL XSL لأن كابوس. هنا هو بلدي النتيجة المرجوة:

الصورة

إتش تي أم ال مثل هذا يولد تلك النتيجة:

<html>
 <الهيئة>
 <مركز>
 <الجدول الحدود= 1>

<!-- تسميات->
 <tr لون الخلفية= أزرق>
 <td><الخط لون= الأبيض><ب>اسم المشروع</ب></الخط></td>
 <td قم بمحاذاة= الحق><الخط لون= الأبيض><ب>التاريخ بالكامل</ب></الخط></td>
 <td قم بمحاذاة= الحق><الخط لون= الأبيض><ب>الميزانية</ب></الخط></td>
 <td قم بمحاذاة= الحق><الخط لون= الأبيض><ب>المصروفات الفعلية</ب></الخط></td>
 <td><الخط لون= الأبيض><ب>الحالة العامة</ب></الخط></td>
 </tr>

<tr>
 <td>غرفة الكمبيوتر إعادة الأسلاك.</td>
 <td قم بمحاذاة= الحق>02/01/08</td>
 <td قم بمحاذاة= الحق>22,500.00</td>
 <td قم بمحاذاة= الحق>19,000.00</td>
 <td>في التقدم</td>
 </tr>

<tr>
 <td>توفير خدمة لترقية SQL</td>
 <td قم بمحاذاة= الحق>04/01/08</td>
 <td قم بمحاذاة= الحق>7,500.00</td>
 <td قم بمحاذاة= الحق>0.00</td>
 <td>المخطط</td>
 </tr>

</الجدول>
 </مركز>
 </الهيئة>
</html>

النهج

اتبع هذه الخطوات إنشاء الشبكة:

  1. التعرف على مكونات الشبكة (صفوف/أعمدة).
  2. تعريف وإنشاء أعمدة موقع ضروري.
  3. إنشاء مواقع فرعية للمشاريع وقوائم المفرد.
  4. إضافة كقوب إلى صفحة ويب وتكوينه للبحث عن القوائم الخاصة بك.
  5. تعديل XML كقوب جمع ما يصل أعمدة إضافية.
  6. تعديل XSL لإنشاء جدول.

أنا ذاهب إلى التركيز على عدد ستة. أرقام واحد من خلال أربعة هي شيء أن تفعل أي مستخدم كقوب ومستقيم إلى الأمام. وقد عدد خمسة موثقة توثيقاً جيدا قبل الآخرين بما في ذلك هذا المقال آدن لقطة شاشة حصرية من MSDN هنا (http://msdn2.microsoft.com/en-us/library/bb897399.aspx) ومدونة هيذر سليمان هنا (http://www.heathersolomon.com/blog/articles/CustomItemStyle.aspx).

الصواميل والمسامير

بدء وتنفيذ الخطوات من واحد إلى خمسة حسب وثائق MSDN والمادة هيذر سليمان.

عند هذه النقطة, التي قمت بإضافتها إلى الصفحة الخاصة بك كقوب ولديك الخاص بك <كوممونفيوفيلدس> تكوين حسب الضرورة.

اتباع الخطوات المعتادة, احصل على هذه النتائج المتوسطة:

1. إنشاء نوع محتوى, قائمة مخصصة تيمبلاتيزيد لنوع المحتوى، واثنين من المواقع. هنا هو نوع المحتوى:

الصورة

هنا هو موقع الهيكل:

الصورة

2. إضافة كقوب بعد إنشاء بلدي المشروع مواقع فرعية والمفرد قوائم ملخص المشروع:

الصورة

3. إضافة جميع المعلومات الإضافية التي أريد عبر <كوممونفيوفيلدس>:

        <الملكية الاسم="كوممونفيوفيلدس" نوع="السلسلة">Project_x0020_Name;Project_x0020_Expenses;Project_x0020_Status;Project_x0020_Start_x0020_Date;Project_x0020_End_x0020_Date;Project_x0020_Budget</الملكية>

علما بأن اضطررت إلى إبقاء كافة حقول الخصائص في سطر واحد، أو أنها لا تعمل (كقوب أن تقول لي أن قام الاستعلام بإرجاع أية عناصر).

4. عند هذه النقطة, نحن مستعدون لتجاوز مقالة MSDN والوجه للمادة هيذر سليمان. اتبع الخطوات لها ابتداء من قرب خطوة #5 لإنشاء مخصصة / الإصدار unghosted من ItemStyle.xsl. أنا اتبع النصيحة هيذر, حتى من خلال الخطوة 11 والحصول على هذه النتائج في المرحلة المتوسطة:

4.1: اسم قالب XSL بلدي كما يلي:

<xsl:اسم القالب = "الشبكة" تطابق = "صف[@Style = 'الشبكة']" وضع = "إيتيمستيلي">

أنا أيضا قليلاً تعديل لها واقترح <xsl:لكل …> عن طريق إضافة <br/> علامة لتوفير قائمة بنظافة:

    <xsl:لكل حدد="@*">
      ف:<xsl:القيمة حدد="الاسم()" /><br/>
    </xsl:لكل>

4.2: تعديل جزء ويب, الذهاب إلى المظهر وحدد بلدي الشبكة "" نمط:

الصورة

تطبيق التغيير، وهنا هو نتيجة:

الصورة

يمكننا أن نرى من ما ورد أعلاه أن الحقول نريد (اسم المشروع, المصروفات, مركز, إلخ) متاحة لنا لاستخدامها عندما كنا تنبعث منها HTML. ليس هذا فقط, ولكن نحن نرى أسماء الذي نحن يجب أن مرجع هذه الأعمدة في XSL. وعلى سبيل المثال, ونحن مرجع "مركز المشروع" ك "Project_x005F_x0020_Name".

عند هذه النقطة, نغادر من بلوق هيذر وعلى أكتاف هذه العمالقة, أود أن أضيف بلدي قليلاً.

ContentQueryMain.xsl

ملاحظة: عند إجراء تغييرات على كل من ContentQueryMain.xsl، فضلا عن ItemStyle.xsl, كنت بحاجة للتحقق من هذه الملفات مرة أخرى قبل أن يمكنك مشاهدة تأثير التغييرات الخاصة بك.

لأغراض صنع الشبكة, موس يستخدم اثنين من ملفات XSL مختلفة لإنتاج النتائج التي نراها من كقوب. لتوليد بت السابقة للإخراج, قمنا بتعديل ItemStyle.xsl. موس فعلا يستخدم ملف XSL آخر, ContentQueryMain.xsl إلى بالاقتران مع ItemStyle.xsl لإنشاء HTML لها. كما يدل على ذلك اسمه, ContentQueryMain.xsl هو الرئيسي "" XSL التي تتحكم في تدفق الشاملة للترجمة. التكرار عبر كافة العناصر التي تم العثور عليها ويمر عليهم واحداً تلو الآخر لقوالب في ItemStyle.xsl. سوف نقوم بتعديل ItemStyle.xsl لتوليد المفتوحة <الجدول> العلامة قبل انبعاث الصف الأول من البيانات وإغلاق <الجدول> العلامة بعد انبعاث الصف الأخير. لإنجاز هذا, يتم تعديل ContentQueryMain.xsl لتمرير معلمتين من معلمات إلى شبكة "لدينا" قالب في ItemStyle.xsl, "الصف الأخير" و "الصف الحالي". ويستخدم ItemStyle.xsl هذه للشرطي تنبعث منها العلامات اللازمة.

باستخدام تقنية هيذر سليمان, ونحن موقع ContentQueryMain.xsl. وهو يقع في نفس المكان ItemStyle.xsl. وينبغي أن تساعد هذه لقطة الشاشة:

الصورة

ونحن بحاجة إلى القيام بالتغييرات التالية:

  • تعديل قالب xsl, "كاليتيمتيمبلاتي" أن يستدعي في الواقع لدينا قالب الشبكة في ItemStyle.xsl. أننا سوف تمر معلمتين من معلمات إلى قالب الشبكة حتى أنه سيتعين عليها البيانات فإنه يحتاج إلى توليد شروط فتح وإغلاق <الجدول> العلامات.
  • تعديل نوعا آخر من ContentQueryMain.xsl التي تدعو كاليتيمتيمبلاتي "" لتمرير فإنه لاستروو "" المعلمة حيث أن لاستروو قد أن ينتقل إلى قالب الشبكة لدينا.

حدد موقع القالب المسمى "OuterTemplate.CallItemTemplate" حدد السلسلة:

  <xsl:قالب الاسم="OuterTemplate.CallItemTemplate">

استبدال القالب كله كما يلي:

  <xsl:قالب الاسم="OuterTemplate.CallItemTemplate">
    <xsl:بارام الاسم="كوربوسيشن" />

    <!--
      إضافة لاستروو "" المعلمة.
      نحن نستخدم فقط عندما يتم تمرير نمط عنصر في "الشبكة".
    -->
    <xsl:بارام الاسم="لاستروو" />

    <xsl:اختر>
      <xsl:عندما اختبار="@Style = 'نيوسرولوبيتيم'">
        <xsl:تطبيق قوالب حدد="." وضع="إيتيمستيلي">
          <xsl:مع بارام الاسم="اديتمودي" حدد="$cbq_iseditmode" />
        </xsl:تطبيق قوالب>
      </xsl:عندما>
      <xsl:عندما اختبار="@Style = 'نيوسبيجيتيم'">
        <xsl:تطبيق قوالب حدد="." وضع="إيتيمستيلي">
          <xsl:مع بارام الاسم="كوربوس" حدد="$كوربوسيشن" />
        </xsl:تطبيق قوالب>
      </xsl:عندما>
      <xsl:عندما اختبار="@Style = 'نيوسكاتيجورييتيم'">
        <xsl:تطبيق قوالب حدد="." وضع="إيتيمستيلي">
          <xsl:مع بارام الاسم="كوربوس" حدد="$كوربوسيشن" />
        </xsl:تطبيق قوالب>
      </xsl:عندما>

      <!--
              تمرير الموقف الحالي ولاستروو إلى قالب itemstyle.xsl الشبكة.
              ItemStyle.xsl سوف تستخدم ذلك تنبعث منها الفتح وإغلاق <الجدول> العلامات.
      -->
      <xsl:عندما اختبار="@Style = 'الشبكة'">
        <xsl:تطبيق قوالب حدد="." وضع="إيتيمستيلي">
          <xsl:مع بارام الاسم="كوربوس" حدد="$كوربوسيشن" />
          <xsl:مع بارام الاسم="آخر صورة" حدد="$لاستروو" />
        </xsl:تطبيق قوالب>
      </xsl:عندما>

      <xsl:خلاف ذلك>
        <xsl:تطبيق قوالب حدد="." وضع="إيتيمستيلي">
        </xsl:تطبيق قوالب>
      </xsl:خلاف ذلك>
    </xsl:اختر>
  </xsl:قالب>

التعليقات تصف غرض التغييرات.

طبعًا, "OuterTemplate.CallItemTemplate" يسمى نفسه من قالب آخر. تحديد موقع هذا القالب عن طريق البحث عن هذه السلسلة النصية:

<xsl:قالب الاسم="OuterTemplate.Body">

قم بالتمرير من خلال الإرشادات الموجودة في OuterTemplate.Body وإدراج المعلمة لاستروو على النحو التالي (تعليق بخط مائل كما هو موضح):

<xsl:قالب المكالمة الاسم="OuterTemplate.CallItemTemplate">
  <xsl:مع بارام الاسم="كوربوسيشن" حدد="$كوربوسيشن" />
  <!-- إدراج المعلمة لاستروو. -->
  <xsl:مع بارام الاسم="لاستروو" حدد="$لاستروو"/>
</xsl:قالب المكالمة>

وبعد كل هذا, وأخيراً لدينا الأشياء إعداد بشكل صحيح حيث أن لدينا ItemStyle.xsl يمكن أن تنبعث منها <الجدول> العلامات في المكان المناسب.

ItemStyle.Xsl

ملاحظة: مرة أخرى, تحقق في ItemStyle.xsl بعد إجراء أي تغييرات، حيث يمكنك أن ترى تأثير تلك التغيرات.

لدينا مهمتين هنا:

  • استبدال قالب شبكة كاملة. يمكنك نسخ/لصق من الأسفل.
  • إضافة بعض الجامبو خارج تعريف القالب التي تمكن "فورماتكورينسي" قالب للعمل. (يمكن أن نقول أن لدى التعامل مع ضعيف في XSL).

الأولى, بالقرب من الأعلى من ItemStyle.xsl, أضف هذا السطر:

  <!-- بعض الجامبو التي تمكننا من عرض الولايات المتحدة. تحويل العملات. -->
  <xsl:تنسيق عشري الاسم="الموظفين" أرقام="د" />

  <xsl:قالب الاسم="الافتراضي" مباراة="*" وضع="إيتيمستيلي">

علما أن أضفت مباشرة قبل <xsl:اسم القالب = "الافتراضي" …> تعريف.

القادم, أن نعود إلى أعمالنا قالب الشبكة. استبدال قالب شبكة كاملة مع التعليمات البرمجية أدناه. أنه دقيق وعلق, ولكن لا تتردد في البريد الإلكتروني لي أو ترك التعليقات على بلوق إذا كان لديك أسئلة.

  <xsl:قالب الاسم="الشبكة" مباراة="الصف[@Style = 'الشبكة']" وضع="إيتيمستيلي">

    <!--
      ContentMain.xsl يمر كوربوس وآخر.
      ونحن نستخدم هذه للشرطي تنبعث منها الفتح وإغلاق <الجدول> العلامات.
    -->
    <xsl:بارام الاسم="كوربوس" />
    <xsl:بارام الاسم="آخر صورة" />

    <!-- المتغيرات التالية معدلة من ItemStyle.xsl القياسية -->
    <xsl:متغير الاسم="سافيماجيورل">
      <xsl:قالب المكالمة الاسم="OuterTemplate.GetSafeStaticUrl">
        <xsl:مع بارام الاسم="أورلكولومنامي" حدد="'ImageUrl'"/>
      </xsl:قالب المكالمة>
    </xsl:متغير>
    <xsl:متغير الاسم="سافيلينكورل">
      <xsl:قالب المكالمة الاسم="OuterTemplate.GetSafeLink">
        <xsl:مع بارام الاسم="أورلكولومنامي" حدد="'LinkUrl'"/>
      </xsl:قالب المكالمة>
    </xsl:متغير>
    <xsl:متغير الاسم="ديسبلايتيتلي">
      <xsl:قالب المكالمة الاسم="OuterTemplate.GetTitle">
        <xsl:مع بارام الاسم="العنوان" حدد="@Title"/>
        <xsl:مع بارام الاسم="أورلكولومنامي" حدد="'LinkUrl'"/>
      </xsl:قالب المكالمة>
    </xsl:متغير>
    <xsl:متغير الاسم="لينكتارجيت">
      <xsl:إذا كان اختبار="@OpenInNewWindow = 'true'" >_blank</xsl:إذا كان>
    </xsl:متغير>

    <!--
      هنا يمكننا تعريف متغير, "تابليستارت".  وهذا يتضمن HTML التي نستخدمها لتعريف فتح الجدول، فضلا عن تسميات الأعمدة.  لاحظ أنه إذا كان كوربوس = 1, وهو يتضمن HTML في علامة CDATA.
      خلاف ذلك, أنها سوف تكون فارغة.

      قيمة تابليستارت اميتيد في كل مرة يتم استدعاء إيتيمستيلي عبر ContentQueryMain.xsl.
    -->
    <xsl:متغير الاسم="تابليستارت">
      <xsl:إذا كان اختبار="$كوربوس = 1">
        <![CDATA[
        <حدود الجدول = 1>
          <tr bgcolor = "الأزرق">
            <td><لون الخط = "الأبيض"><ب>اسم المشروع</ب></الخط></td>
            <td محاذاة = "الحق"><لون الخط = "الأبيض"><ب>التاريخ بالكامل</ب></الخط></td>
            <td محاذاة = "الحق"><لون الخط = "الأبيض"><ب>الميزانية</ب></الخط></td>
            <td محاذاة = "الحق"><لون الخط = "الأبيض"><ب>المصروفات الفعلية</ب></الخط></td>
            <td><لون الخط = "الأبيض"><ب>الحالة العامة</ب></الخط></td>
          </tr>
        ]]>
      </xsl:إذا كان>
    </xsl:متغير>

    <!--
      متغير آخر, تابليند يعرف ببساطة الإغلاق الجدول العلامة.

      كما هو الحال مع تابليستارت, أنها دائماً اميتيد.  وهذا السبب يتم تعيين القيمة الخاصة به الشرطي استناداً إلى ما إذا كان لقد تم مرت علينا الصف الأخير من ContentQueryMain.xsl.
    -->
    <xsl:متغير الاسم="تابليند">
      <xsl:إذا كان اختبار="$كوربوس = $Last">
        <![CDATA[ </الجدول> ]]>
      </xsl:إذا كان>
    </xsl:متغير>

    <!--
      دائماً تنبعث منها محتويات تابليستارت.  إذا لم يكن الصف الأول أقره لنا ContentQueryMain.xsl, ثم أننا نعرف قيمته ستكون فارغة.

      تعطيل الإخراج الهروب لأنه عندما تابليستارت ليس فارغاً, أنها تتضمن HTML الفعلي الذي نريد أن يتم تقديمها بواسطة المستعرض.  إذا أننا لا نقول محلل XSL لتعطيل الإخراج الهروب, سوف تولد الأشياء مثل "&الملازم;الجدول&gt;" بدلاً من "<الجدول>".
    -->
    <xsl:القيمة حدد="$تابليستارت" تعطيل-إخراج-الهروب="نعم"/>


    <tr>
      <!--
      ف:ف Project_x005F_x0020_Name:ف Project_x005F_x0020_End_x005F_x0020_Date:ف Project_x005F_x0020_Budget:ف Project_x005F_x0020_Expenses:Project_x005F_x0020_Status
      -->
      <td>
        <xsl:القيمة حدد="@Project_x005F_x0020_Name"/>
      </td>

      <td قم بمحاذاة="حق">
        <xsl:القيمة حدد="@Project_x005F_x0020_End_x005F_x0020_Date"/>
      </td>

      <td قم بمحاذاة="حق">
        <xsl:قالب المكالمة الاسم="فورماتكورينسي">
          <xsl:مع بارام الاسم="القيمة" 
حدد="@Project_x005F_x0020_Budget"></xsl:مع بارام> </xsl:قالب المكالمة> </td> <td قم بمحاذاة="حق"> <xsl:قالب المكالمة الاسم="فورماتكورينسي"> <xsl:مع بارام الاسم="القيمة" حدد="@Project_x005F_x0020_Expenses">
</xsl:مع بارام> </xsl:قالب المكالمة> </td> <td> <xsl:القيمة حدد="@Project_x005F_x0020_Status"/> </td> <!-- كل ما يلي علق بها توضيح الأمور. ومع ذلك, إعادته والأشياء إلى <td> لمعرفة تأثيرها. --> <!-- <div معرف = "لينكيتيم" الطبقة = "البند"> <xsl:إذا كان اختبار = "طول السلسلة($سافيماجيورل) != 0 "> <div class = "صورة المنطقة اليسرى"> <href = "{$سافيلينكورل}" الهدف = "{$لينكتارجيت}"> <فئة img = "الصورة-عرض ثابت" src = "{$سافيماجيورل}"
alt = "{@ImageUrlAltText}"/> </أ> </div> </xsl:إذا كان> <div class = "عنصر الارتباط"> <xsl:قالب المكالمة
name="OuterTemplate.CallPresenceStatusIconTemplate"/> <href = "{$سافيلينكورل}"
الهدف = "{$لينكتارجيت}" عنوان = "{@LinkToolTip}"> <xsl:حدد قيمة من = "$DisxslyTitle"/> </أ> <div class = "الوصف"> <xsl:القيمة من select="@Description" /> </div> </div> </div>
--> </tr> <!-- تنبعث منها الإغلاق الجدول العلامة. إذا نحن لسنا في الصف الأخير, هذا وسوف تكون فارغة. --> <xsl:القيمة حدد="$تابليند" تعطيل-إخراج-الهروب="نعم"/> </xsl:قالب> <xsl:قالب الاسم="فورماتكورينسي"> <xsl:بارام الاسم="القيمة" حدد="0" /> <xsl:القيمة حدد='تنسيق الرقم($القيمة, "$DDD,DDD,DDD.DD ", "الموظفين")' /> </xsl:قالب>

لا تدعم شاشات إدخال البيانات WSS/موس القياسية المنسدلة المتتالية (أو أخرى داخل-من الاتصال)

التحديث (04/2008): ويبين هذا الدخول بلوق كبيرة نهج القائمة على جافا سكريبت جيدة لهذه المشكلة: http://webborg.blogspot.com/2008/04/add-functions-and-events-to-sharepoint.html

التحديث الثاني: (04/2008): هذا بلوق دخول تبدو واعدة، وكذلك: http://www.cleverworkarounds.com/2008/03/13/free-mosswss-2007-web-part-hide-controls-via-javascript/

عدة مرات في الأسبوع, إذا لم اليومية, منتدى المستخدمين وصف شرط أن ستلبي عادة عن طريق المنسدلة المتتالية. وعلى سبيل المثال, لدى اثنين من عناصر تحكم القائمة المنسدلة:

  • قائمة بالولايات المتحدة. الدول
  • قائمة بالولايات المتحدة. المدن.

كمقدمي خدمات واجهة المستخدم المسؤول, نحن نريد أن تعمل مثل هذا:

  • بول يختار الولايات المتحدة. الدولة من القائمة المنسدلة.
  • وهذا يتسبب في المدن القائمة المنسدلة للتصفية فقط تلك المدن التي تنتمي إلى الدولة المختارة.
  • بول يختار مدينة من هذه القائمة التي تمت تصفيتها.

لا يوجد أي دعم خارج منطقة الجزاء لهذه الميزة. في الحقيقة, لا يوجد أي دعم خارج النطاق لأي نوع من الاتصالات المباشرة داخل النموذج. وهذا يشمل برمجياً إخفاء/تمكين/تعطيل الحقول في استجابة للتغيرات الميدانية في أي مكان آخر في النموذج.

أن الهدف الحقيقي من هذه المقالة لوصف الحلول الممكنة، وهذه هي الخيارات يعرف لهم:

  1. وضع نوع عمود المخصص. كمطور مخصص العمود, لديك السيطرة الكاملة على العالم "" هذا العمود مخصص. يمكنك تنفيذ القائمة المنسدلة متتالية بهذه الطريقة.
  2. النظر في استخدام سير العمل. وفي بعض الحالات, تريد تلقائياً بتعيين قيمة لحقل استناداً إلى قيمة حقل آخر. وفي هذه الحالة, أن عادة محاولة استخدام عمود محسوب, ولكن بعض الأوقات, أنها لن تحصل فقط على إنجاز هذه المهمة. SharePoint مصمم سير العمل بديل نسبيا إدارة ملائمة لإسقاط إلى أسفل في التعليمات البرمجية و visual studio. إذا كنت تذهب في هذا الطريق, يكون على بينه من المسألة التي تناولتها هذه المقالة. (http://paulgalvin.spaces.live.com/blog/cns!CC1EDB3DAA9B8AA!405.entry).
  3. معالجات الأحداث: مثل سير العمل, هذا حل بعد حقيقة. معالج الأحداث الخاص بك تجميع. net (C#, VB.NET) إلى SharePoint الذي يمرر التحكم. يحتوي الكائن على تطويرك للوصول إلى بيانات القائمة (ونموذج الكائن بأكمله) ويمكن القيام بأي حساب المطلوبة.
  4. استخدام مصمم SharePoint لإنشاء نماذج إدخال مخصصة. أنا لم يكن لديك تجربة مباشرة مع هذا النهج, لكني أسمع أنهم يفعلون أشياء جيدة مع NewForm.aspx هذه الأيام 🙂
  5. لفة الخاص بك وظيفة إدخال بيانات ASP.NET (كصفحة ويب مستقل أو كجزء ويب) واستخدم هذا بدلاً من ذلك.

إذا كان أي شخص يعرف الخيارات الأخرى و/أو أفضل, الرجاء نشر تعليق وسوف أقوم بتحديث النص الأساسي لهذا المنصب.

<نهاية/>

[تشنورتي] بطاقات:

نعم/لا (خانة الاختيار) تصفية في "جزء ويب الخاص باستعلام المحتوى"

لتصفية استعلام نعم/لا يوجد مربع الاختيار بعنوان "المعلم جزء من الغرام", تكوين كقوب مثل هذا:

الصورة

هذا هو آخر واحد من هذه الأسئلة واضحة-مرة واحدة-أنت تعرف-it-ولكن هاردتوفيندانانسويرتو: كيفية تصفية على نعم/لا يوجد مربع الاختيار استخدام جزء ويب الخاص باستعلام المحتوى.

الأول نتيجة البحث واجد باستخدام مصطلح البحث "جزء ويب الخاص باستعلام المحتوى نعم/لا عامل التصفية" خطأ خارج الشقة, ولذلك أعتقد أن طرح هذا هناك وانظر إذا أنه يمكن أن يحل محل النتيجة غير صحيحة في نتائج البحث النموذجية.

فمن السهل جداً: صحيح القيم = "1" وقيم زائفة لا يساوي "1" (ريترو جميلة, فعلا).

في المثال أعلاه, أنا إنشاء عمود موقع من نوع "نعم/لا (خانة الاختيار)" المسماة "PG معلما". إضافتها إلى مكتبة دوك, تحميل وثائق قليلة, قم بتعيين قيمة لمدة عامين واختبار.

<نهاية/>