Месечне архиве: Децембар 2007

Размишљање о комерцијалних производа

Трпим СхареПоинт Ектенсионс Десигнер пројекат горе у ЦодеПлек раније ове године и иако је стварно прилично ограничене у обиму, Процењујем да је било преузето од стране 40 на 60 (можда чак и 100) companies in just about two months. That indicates to me that there’s a market for that solution and if I were to successfully commercialize it, that could translate into a goodly amount of beer 🙂

Моја позадина је заправо много више у развој производа и знам шта је потребно да би врхунски производ, за разлику од ЦодеПлек хоби пројекат, to market. In my Прошли живот, Ја сам био задужен за производ А&D for all software products. The difference between then and now is that I’m a consultant now working for an (одличан) Консултантска фирма (Цонцханго). Раније, Имао сам целу компанију иза мене и испред мене, selling and supporting the products we brought to market. Данас, Ја бих сама.

Имам неколико идеја у виду производа, but I think the easiest would be to create a commercial version of the above-mentioned CodePlex project that uses that as a starting point and extends it further. My fuzzy off-the-cuff thinking is to charge something like $100 неограниченог програмера лиценци и $500 per production web front end. I think I would also give away the source code.

Ако имате искуства или мисли да сте спремни да делите, оставите коментар или емаил ме директно. I’d like to hear opinions like:

  • Да ли је то све вредно?
  • Практични предлози за маркетинг, прикупљање новца, расподела.
  • Цене.
  • Подржати.
  • Сваки други коментар желите да оставите.

It’s "easy" да дођу до производа идеја и да их примени, though many dozens of hours of work are required. The other stuff is not as easy for me.

</крај>

Тецхнорати Тагс:

Сундаи Морнинг Фунни: “Исус Муст Дие”

Купили смо наш први (и само) "luxury" car back when hurricane Floyd nailed the east coast of the U.S. We got a LOT of rain here in New Jersey and several days passed before life returned to normal. Just before Floyd struck, смо направили понуду за Волво користи 850 GL and after Floyd struck, drove it home.

It was our first car with a CD player. Like most new car owners, we went a little CD crazy, revived our dormant CD collection and went on long drives just to listen to CD’s in the car. Like all fads, this passed for us and we ended listening to the same CD over and over again. У нашем случају, it was Jesus Christ Superstar.

Једно од (многи) brilliant pieces in that rock opera is sung by the establishment religious types, led by Caiaphas, the "High Priest". They sing their way into deciding how to handle the "Jesus problem" and Caiaphas directs them to the conclusion that "Jesus must die". The refrain on the song is "Just must die, must die, must die, this Jesus must die". You hear that refrain a lot in that piece.

At the time, my son was about three years old. You can probably see where this is going.

I came home from work one day and my son is in the living room playing with toys and humming to himself. I’m taking off my jacket, looking through the mail and all my usual walk-in-the-door stuff and I suddenly realize that he’s just saying, not really singing: "Jesus must die, must die, must die." I was mortified. I could just see him doing that while on one of his baby play dates at a friend’s house — probably the last play date with that baby friend.

We pulled that CD out of the Volvo after that 🙂

</крај>

Тецхнорати Тагс: ,

Прихвати ли Гоогле Ми Ливе Спацес блог у програму АдСенсе

УПДАТЕ: Од 03/09, I have found no way to integrate my live spaces account with Google Adsense. Microsoft’s system here seems to prevent all of the technical mechanisms that Google provides would-be adsense hosters. I tend to believe this is mainly a side effect of the security they’ve built into live spaces, not a direct effort to disable Adsense.

Ово није СхареПоинт порука, али може бити од интереса за блогера генерално.

Someone commented on their Windows Live Spaces blog that Google affirmatively denied their application to participate in AdSense. She theorized that Google denied her because Windows Live Spaces hosts her blog. Међутим, Недавно сам примљена у програм за моје Ливе Спацес блог, па политика је или промењен или Гоогле је одбијен због неког другог разлога.

Наравно, Ја не видим никакву очигледан начин да се интегришу Гоогле АдСенсе у мој Простор, but it’s a start 🙂

</крај>

Тецхнорати Тагс: ,

Имплементација Мастер / Детаил Односи Коришћење прилагођене листе

Форум корисници често као оваква питања:

> Здраво,
>
> Молим вас реците ми да ли постоје могућности за изградњу прилагођене листе са
> мастер и детаљ типа (као фактура) без употребе ИнфоПатх.
>

СхареПоинт пружа неке из кутије функција које подржавају врсте пословним захтевима као што је тај.

У глобалу, one links two lists together using a lookup column. List A contains the invoice header information and list B contains invoice details.

Користите додатне листе за одржавање бројева купаца, бројеви производа, итд.

Користите Веб сегмент упита садржаја (у МОСС само) and/or a data view web part to create merged views of the lists. SQL Server Reporting Services (СРС) је такође доступан за извештајни стране њега.

Међутим, there are some important limitations that will make it difficult to use pure out-of-the-box features for anything that is even moderately complex. These include:

  • Величина вези листе проналажење вс. "smartness" of the lookup column type. A lookup column type presents itself on the UI differently depending on whether you’ve enabled multi-select or not. In either case, the out-of-the-box control shows all available items from the source list. If the source list has 1,000 ставке, that’s going to be a problem. The lookup control does not page through those items. Уместо тога, it pulls all of them into the control. That makes for a very awkward user interface both in terms of data entry and performance.
  • Lookups "pull back" one column of information. You can never pull back more than one column of information from the source list. На пример, you cannot select a customer "12345" and display the number as well as the customer’s name and address at the same time. The lookup only shows the customer number and nothing else. This makes for an awkward and difficult user interface.
  • No intra-form communication. Писао сам о томе овде. You can’t implement cascading drop-downs, условно омогућите / онемогућите поља, итд.
  • No cascading deletes or built-in referential integrity. SharePoint treats custom lists as independent entities and does not allow you to link them to each other in a traditional ERD sense. На пример, СхареПоинт вам омогућава да креирате две прилагођене листе, "customer" and "invoice header". You can create an invoice header that links back to a customer in the customer list. Онда, you can delete the customer from the list. Оут оф тхе бок, there is no way to prevent this. To solve this kind of problem, што то обично користите за претовар догађаја.

То може да изгледа суморно, but I would still use SharePoint as a starting point for building this kind of functionality. Though there are gaps between what you need in a solution, СхареПоинт нам омогућава да попуни те празнине коришћењем алата као што су:

  • Event handlers. Use them to enforce referential integrity.
  • Прилагођене колоне: Create custom column types and use them in lieu of the default lookup column. Add paging, баферовање и АЈАКС функције да их одговоре.
  • БДД. This MOSS-only feature enables us to query other SharePoint lists with a superior user interface to the usual lookup column. BDC can also reach out to a back end server application. Use BDC to avoid replication. Rather than replicating customer information from a back end ERP system, use BDC instead. BDC features provide a nice user interface to pull that information directly from the ERP system where it belongs and avoids the hassle of maintaining a replication solution.

    БДД је МОСС функција (није доступна у ВСС) and is challenging to configure.

  • АСП.НЕТ Веб Форм: Направите потпуно функционалан АЈАКС омогућен образац који користи СхареПоинт објектни модел и / или веб сервисима СхареПоинт листама искористи док пружа веома брз кориснички интерфејс.

Последња опција може да се осећате као да почињете од нуле, али у обзир чињеницу да је СхареПоинт платформа вам се полази од следећих кључних карактеристика:

  • Безбедност модел са одржавањем.
  • Мени систем са одржавањем.
  • "Master table" (и.е. Прилагођене листе) са обезбеђењем, уграђене одржавање и ревизија.
  • Претражи.
  • Назад крај алата интеграције (БДД).

Ако почнете са новом празном пројекта у Висуал Студио, имате пуно инфраструктуре и водовод за изградњу пре него што дођете близу оно СхареПоинт нуди.

I do believe that Microsoft intends to extend SharePoint in this direction of application development. It seems like a natural extension to the existing SharePoint base. Microsoft’s CRM application provides a great deal of extensibility of the types needed to support header/detail application development. Although those features are in CRM, the technology is obviously available to the SharePoint development team and I expect that it will make its way into the SharePoint product by end of 2008. If anyone has an knowledge or insight into this, оставите коментар.

</крај>

Тецхнорати Тагс:

Брзо Савет: Веб сегмент за упит садржаја, Проналажење вредности колоне и КССЛ

I have a column name in a content type named "Real Estate Location".

That column is of type "lookup".

Променили сам <ЦоммонВиевФиелдс> и ИтемСтиле.ксл да покаже колону.

Једноставан <клс:вредности од изаберите =…> враћа унутрашњу вредност која садржи податке о положају редни, као такав:

1;#Мајами

Да бисте добили људски пријатељски вредност, користите КССЛ-подстрока после, као што је приказано:

<клс:value-of select="substring-after(@ Реал_к005Ф_к0020_Естате_к005Ф_к0020_Лоцатион,'#')"></клс:вредности од>

Користите ову технику сваки пут када радите са проналажење вредности у КССЛ трансформација и треба да се људски пријатељски вредност.

<крај />

Тецхнорати Тагс: , ,

СхареПоинт Бигл децембарском броју Горе & Живети

Многи од вас већ знају, али децембра издање СхареПоинт Беагле је уживо.

Сваки чланак је вредан читања, по мом мишљењу.

Желим да дам мало више налетети на Мој колега је чланак (Наталија Воскренсенскиа). She provides a screen-shot extravaganza while describing how she used custom lists, тока, СхареПоинт Десигнер, data views and other elements to implement a self-service training feature in MOSS. She describes techniques that can be applied in many different business scenarios. Check out Њен блог док си у томе.

Не заборавите да проверите мој чланак as well 🙂 I wrote about using MOSS to help an HR department manage open positions.

</крај>

Мос говори ми “Приступ одбијен” За уређивање задатка тока посла, Али ја заиста немам приступ

I’ve implemented a workflow using SharePoint Designer in a site which is mainly read-only to "NT_AUTHORITY\Authenticated Users" (и.е. свако). There is a forms library for an InfoPath form. There is an associated workflow tasks list as well so that when the workflow operates, може доделити задатке особама.

Ја бреак дозволу за библиотеку образаца и листи задатака, тако да сваки корисник ауторизован креирање образаца и ажурирају своје задатке.

I test with my low-privileges test account.

Могу ли да попуните и сачувајте образац у библиотеци? –> ДА

Могу ли да приступим задатак са е-линка? –> ДА

Могу ли да видим неку везу Измени тока задатака –> ДА

Могу ли да кликнете на тај линк? –> НЕ … Дозвола одбијен.

Зашто ја могу да видим везу измени која онемогућава ме дозволу када кликнем на њега? That’s not how it’s supposed to work…

Ја идем кроз безбедносне конфигурације поново, very closely. I do it again. Сматрам брисање овај пост јер ја очигледно не знам ништа о безбедности.

Коначно, I search the Internets. I find this highly unlikely MSDN forum thread: http://forums.microsoft.com/TechNet/ShowPost.aspx?PostID=1838253&SiteID=17

На плакатима изгледа да се сугерише да ће једноставан чин извоз тока посла у тањиру диск поправи МОСС безбедносно питање? I can hardly believe I just typed that. I’m reminded of the South Park episode about the 9/11 Стан је завера у којој тражи нашу Презнит, "Really?" over and over again.

Тако, ништа за изгубити, Ја се ватра СПД, кликните десним тастером миша на радни процес и сачувајте га на моју ц:\ drive. That would be the c:\ drive on my laptop. I’m looking over my shoulder the whole time so that no one will ask me, "why are you saving that workflow to your laptop?"

Невероватно, that solves my problem. I can edit the task.

Овим именује то буде најбизарнији Воркфлов Решење о 2007.

</крај>

Тецхнорати Тагс:

СхареПоинт Десигнер, Тренутна шифра је “Кодирани Апсолутна УРЛ адреса” и ХТТПС

We often want to send an email that includes a hyperlink to the item or document that triggered the workflow. We can use current item’s "Encoded Absolute URL" for this purpose. Међутим, it always seems to use "http" for the URL protocol. If your site runs on HTTPS then it will not work for you.

слика

Колико ја знам, there is no out of the box solution to this problem. If you need to use HTTPS, you have no out of the box option.

To solve it, create a custom action that provides a string replace function to use in your workflow. Alternatively, use a 3rd party tool such as the excellent package here: http://www.codeplex.com/spdwfextensions 🙂

</крај>

Тецхнорати Тагс: ,

Брзо и лако: Одредите интерни назив колони колони локације

УПДАТЕ: Џереми Тхаке has blogged about this and put up some code for a console application that shows internal names.

I was trying to get a content query web part to display a due date from a task and because the screen label is "Due Date", Претпоставио сам да је колона име за коришћење у <ЦоммонВиевФиелдс> is "Due_x0020_Date".

Погрешно!

The real column name in this case was "DueDate".

How did I find it? I re-read Heather Solomon’s blog entry on modifying CQWP to show additional columns of data. She describes this process at step #13. Trust it. It’s correct. Најмање, it was correct for me. I did not trust it at first for another column with a much longer name.

I say "Trust it" because I did not trust it and probably wasted near two hours butting my head up against a wall. After I resolved the "DueDate" име, I wanted to add another field to <ЦоммонВиевФиелдс>. Using the Solomon technique, I was getting a column name like "XYZ_x0020_Project_x0020_Due_x00".

I thought to myself, that’s clearly a truncated name. I went ahead and un-truncated it with no success. I finally used the seemingly truncated name and it worked.

Bonus tip: When I was working with the CQWP, if I added a bad internal name to <ЦоммонВиевФиелдс>, the CQWP would tell me that the query had returned no results. Али, if I added a data type to the field name, it would return a result. Adding the data type actually masked a problem since I was referencing a non-existent field. I could add it, but when I tried to display its value, I would always get a blank.

This did not mask the error:

<ЦоммонВиевФиелдс>Due_x0020_Date;</CommonViewfields>

This did mask the error:

<ЦоммонВиевФиелдс>Due_x0020_Date,DateTime;</CommonViewfields>

</крај>

Чувајте Бреакинг Промене ИтемСтиле.ксл

Радио сам са ИтемСтиле.ксл да прилагодите изглед сегмент упита садржаја Веб и праву за време ручка, I made a breaking change to the xsl. I didn’t realize it, but this had far reaching effects throughout the site collection. I went off to lunch and upon my return, noticed this message appearing in a bunch of places:

Unable to display this Web Part. To troubleshoot the problem, open this Web page in a Windows SharePoint Services-compatible HTML editor such as Microsoft Office SharePoint Designer. If the problem persists, contact your Web server administrator.

I blamed the client (not realizing as yet that it was my fault at this point) but eventually noticed that visual studio intellisense was warning me that I had malformed XSL. I corrected it and everything started working.

Be darned careful when working with ItemStyle.xsl (and any of the global XSL files) — breaking them affects many artifacts in the site collection.

<крај />