Штомесячны архіў: Снежань 2007

Думаючы аб камерцыйных прадуктаў

Я паставіў SharePoint Designer пашырэння праекта уверх на CodePlex Раней у гэтым годзе і, хоць гэта сапраўды вельмі абмежаваныя па сваіх маштабах, Я лічу, што яна была загружана 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 🙂

Мой фон на самай справе значна больш у распрацоўцы прадукту, і я ведаю, што патрабуецца, каб прынесці першакласны прадукт, у адрозненне ад праекту хобі CodePlex, to market. In my мінулая жыццё, Я быў адказным за прадукт R&D for all software products. The difference between then and now is that I’m a consultant now working for an (выдатны) кансультацыйная фірма (Conchango). Папярэдне, Я ўсю кампанію ззаду мяне, і перада мной, 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:

  • Ці з'яўляецца ўсё гэта каштуе?
  • Практычныя парады па маркетынгу, збор грошай, распаўсюд.
  • Цэнаўтварэнне.
  • Падтрымка.
  • Любыя іншыя заўвагі вы хацелі б пакінуць.

Гэта "лёгкая" каб прыдумаць прадукт ідэй і іх рэалізацыі, though many dozens of hours of work are required. The other stuff is not as easy for me.

</канец>

Sunday Morning Смешныя: “Ісус павінен памерці”

Мы купілі наш першы (і толькі) "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, мы зрабілі прапанову выкарыстоўваць Volvo 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 🙂

</канец>

Technorati Тэгі: ,

Google сапраўды прымаў Мой Live Blog прастор у праграме AdSense

АБНАЎЛЕННЕ: Па стане на 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.

This is not a SharePoint post, but might be of interest to bloggers generally.

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. Аднак, I was recently accepted into the program for my live spaces blog, so the policy has either changed or Google denied her for some other reason.

Вядома, I don’t see any obvious way to integrate Google AdSense into my live space, but it’s a start 🙂

</канец>

Technorati Тэгі: ,

Рэалізацыя Master / Падрабязнасці па сувязях з дапамогай карыстацкіх спісаў

Форум карыстальнікаў часта, як пытанні, як гэта:

> Прывітанне,
>
> Скажыце, калі ласка, ці ёсць магчымасці для стварэння карыстацкага спісу з
> Майстар і тыпу дэталяў (як рахункі) без выкарыстання InfoPath.
>

SharePoint прадастаўляе некаторыя з скрынкі функцыямі, якія падтрымліваюць відаў бізнесу, што патрабаванні, як.

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

Выкарыстоўвайце дадатковыя спісы для падтрымання колькасці кліентаў, нумары прадуктаў, і г.д..

Выкарыстоўвайце вэб-запыт змесціва часткі (Толькі ў MOSS) and/or a data view web part to create merged views of the lists. SQL Server Reporting Services (SRS) таксама даступная за справаздачны баку яго.

Аднак, 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. Напрыклад, SharePoint дазваляе стварыць два карыстацкіх спісаў, "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, SharePoint дазваляе запоўніць гэтыя прабелы з дапамогай інструментаў, такіх як:

  • Апрацоўшчыкі падзей. Use them to enforce referential integrity.
  • Выбарачныя слупкі: Create custom column types and use them in lieu of the default lookup column. Add paging, буферызацыі і AJAX функцыі, каб зрабіць іх ўспрымальнасць.
  • BDC. 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.

    BDC гэта функцыя MOSS (не даступныя ў WSS) and is challenging to configure.

  • ASP.NET вэб-формаў: Стварэнне поўнафункцыянальнай падтрымкай AJAX форму, якая выкарыстоўвае аб'ектнай мадэлі SharePoint і / або вэб-службаў для спісаў SharePoint рычагі, забяспечваючы пры гэтым вельмі спагадны карыстацкі інтэрфейс.

Апошні варыянт можа адчуваць, што вы пачынаеце з нуля, але ўлічваць той факт, што платформа SharePoint пачынае вас з наступнымі ключавымі асаблівасцямі:

  • Мадэль бяспекі з забеспячэннем.
  • Сістэма меню з захаваннем.
  • "Master table" (I.E. прыстасаваныя спісы) з бяспекай, убудаваны абслугоўвання і аўдыту.
  • Пошук.
  • Back End інструменты інтэграцыі (BDC).

Калі вы пачынаеце з новай пусты праект у Visual Studio, ў вас ёсць шмат інфраструктуры і сантэхнікі пабудаваць, перш чым наблізіцца да таго, што прапануе SharePoint.

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, калі ласка, пакіньце каментар.

</канец>

Quick Tip: Запыт змесціва вэб-часткі, Шуканае значэнне калонкі і XSL

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

That column is of type "lookup".

Я змяніў <CommonViewFields> і ItemStyle.xsl паказаць калонкі.

Просты <XSL:кошт з абярыце =…> вяртаецца ўнутранае значэнне, якое ўключае парадкавых дадзеных пазіцыі, такі як:

1;#Маямі

Каб атрымаць зразумелыя чалавеку значэнні, выкарыстоўваць XSL-падрадкоў пасля, як паказана на малюнку:

<XSL:value-of select="substring-after(@ Real_x005F_x0020_Estate_x005F_x0020_Location,'#')"></XSL:коштам ад>

Выкарыстоўвайце гэты метад, калі вы працуеце з пошуку значэнняў у пераўтварэнні XSL і трэба, каб зразумелыя чалавеку значэнні.

<канец />

Technorati Тэгі: , ,

SharePoint Бигль снежаньскім выпуску Up & Жыць

Многія з вас ведаюць гэта ўжо, але ў снежні выданне SharePoint Бигль жывы.

Кожны артыкул варта чытаць на мой погляд.

Я хачу даць трохі дадатковай прырост да майго калегі артыкуле (Наталля Voskrensenskya). She provides a screen-shot extravaganza while describing how she used custom lists, працоўны працэс, SharePoint Designer, 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.

</канец>

MOSS кажа мне “Доступ забаронены” Для рэдагавання задачы працоўнага працэсу, Але я сапраўды маюць доступ

I’ve implemented a workflow using SharePoint Designer in a site which is mainly read-only to "NT_AUTHORITY\Authenticated Users" (I.E. ўсё). 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.

Ці магу я запоўніць і захаваць форму ў бібліятэку? –> ДА

Ці можна атрымаць доступ задачу з спасылкі ў электроннай пошце? –> ДА

Ці магу я ўбачыць змены задачы працоўнага працэсу спасылцы –> ДА

Ці магу я націсніце на гэтую спасылку? –> NO … Адмоўлена ў доступе.

Чаму я бачу спасылку Змяніць, якая адмаўляе мне дазвол, калі я націскаю на яго? 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

Плакаты, як уяўляецца, мяркуючы, што просты акт экспарту працоўнага працэсу ў дыску страве будзе выправіць праблему з MOSS бяспекі? I can hardly believe I just typed that. I’m reminded of the South Park episode about the 9/11 змова, дзе Стэн пытаецца наш Preznit, "Really?" over and over again.

Так, Няма чаго губляць, Я запускаю СПД, пстрыкніце правай кнопкай мышы на працоўным працэсе і захаваць яго на маім C:\ 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.

Сапраўдным я прызначыць, што гэта самая дзіўная з Рашэнне Workflow 2007.

</канец>

SharePoint Designer, Бягучага элемента “Абсалютны URL Encoded” і HTTPS

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, ў вас няма з скрынкі опцыі.

Для яе вырашэння, create a custom action that provides a string replace function to use in your workflow. Alternatively, выкарыстоўваць 3rd інструмент бокам, напрыклад, выдатны пакет тут: http://www.codeplex.com/spdwfextensions 🙂

</канец>

Technorati Тэгі: ,

Хутка і лёгка: Вызначце Унутранае імя Калона слупок сайта

АБНАЎЛЕННЕ: Джэрэмі Thake была блогу пра гэта і мірыцца некаторыя код для кансольнага прыкладання які паказвае ўнутраныя імёны.

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", Я выказаў меркаванне, што імя слупка для выкарыстання ў <CommonViewFields> is "Due_x0020_Date".

Няправільны!

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

Як я лічу, гэта? I re-read Heather Блог Саламона ўваход на змены 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" імя, Я хацеў дадаць яшчэ адно поле <CommonViewFields>. Using the Solomon technique, I was getting a column name like "XYZ_x0020_Project_x0020_Due_x00".

Я падумаў пра сябе, 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.

Бясплатны савет: Калі я працаваў з CQWP, Калі я дадала дрэнная ўнутраная імя <CommonViewFields>, the CQWP would tell me that the query had returned no results. Але, Калі я дадаў тыпу дадзеных да імя поля, 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, але калі я паспрабаваў адлюстраваць яго значэнне, I would always get a blank.

Гэта не маскіраваць памылку:

<CommonViewFields>Due_x0020_Date;</CommonViewFields>

Гэтага маскіраваць памылкі:

<CommonViewFields>Due_x0020_Date,DateTime;</CommonViewFields>

</канец>

Сцеражыцеся Крытычныя змены ў ItemStyle.xsl

Я працаваў з ItemStyle.xsl каб наладзіць знешні выгляд вэб-кантэнту Частка запытаў і мае рацыю наконт абеду, 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, заўважыў гэта паведамленне з'яўляецца ў кучу месцаў:

Не ўдаецца адлюстраваць гэтую вэб-частка. Для ліквідацыі праблемы, адкрыць гэтую вэб-старонку ў Windows SharePoint Services-сумяшчальны HTML рэдактар, напрыклад Microsoft Office SharePoint Designer. Калі праблема не ўхіленая, звярніцеся да адміністратара вэб-сервера.

Я абвінавачваў кліента (ня ведаючы яшчэ, што гэта была мая віна ў гэтым пункце) but eventually noticed that visual studio intellisense was warning me that I had malformed XSL. I corrected it and everything started working.

Цыроўкі асцярожныя пры працы з ItemStyle.xsl (і любы з глабальнага файлаў XSL) — разбіваючы іх закранае многія артэфакты ў сямействе.

<канец />