Monthly Archives: Abenduaren 2007

Produktuak Merkataritza pentsatzen

Jarri dut SharePoint Designer luzapenak proiektua at sortu CodePlex lehenago aurten, eta nahiz eta oso esparrua oso mugatua, Hori izan da deskargatuko balioesteko dut 40 to 60 (nahiz eta, seguru asko, 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 🙂

Nire background da benetan askoz produktuaren garapenean eta zer gehiago behar da, goi-Notch produktu bat ekartzeko ezagutzen dut, gisa bat CodePlex hobby proiektuaren aurka, to market. In my iraganeko bizitzaren, Produktuaren arduraduna izan naiz I&D for all software products. The difference between then and now is that I’m a consultant now working for an (bikaina) aholkularitza enpresa (Conchango). Aurretik, Osoa enpresa bat izan nuen nire atzean, eta nire aurrean, selling and supporting the products we brought to market. Gaur egun, Bakarrik nuke.

Hainbat produktu kontuan ideia daukat, 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 beti sustatzailearen mugagabea lizentzia eta $500 per production web front end. I think I would also give away the source code.

Duzu, pentsamenduak edo esperientziak galtzen ari zaren prest partekatu, Mesedez, utzi iruzkin bat, edo email me zuzenean. I’d like to hear opinions like:

  • Da guztiak merezi?
  • Marketing aholku praktikoak, dirua biltzeko, banatzeko.
  • Prezioei.
  • Laguntza.
  • Beste edozein iruzkina utzi nahi duzun.

It’s "easy" etorri produktua ideiak eta horiek ezartzeko, though many dozens of hours of work are required. The other stuff is not as easy for me.

</amaiera>

Technorati Tags:

Igande goizean Funny: “Jesus Must Die”

Gure lehen erosi dugu (eta soilik) "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, erabili Volvo eskaintza bat egin genuen 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. Gure kasuan,, it was Jesus Christ Superstar.

Bat (asko) 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 🙂

</amaiera>

Technorati Tags: ,

Google Ba Onartu Nire Live Spaces Blog AdSense programa horretan

UPDATE: Bezala 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. Hala eta guztiz ere, 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.

Jakina, I don’t see any obvious way to integrate Google AdSense into my live space, but it’s a start 🙂

</amaiera>

Technorati Tags: ,

Master betearazteko / Xehetasunak Harreman pertsonalizatua zerrendak erabiltzea

Forum users frequently as questions like this:

> Kaixo,
>
> Mesedez, esan dit ez dira aukerak edozein zerrenda pertsonalizatu bat eraiki nahi izanez gero
> master eta xehetasun-mota (fakturak bezalako) without using InfoPath.
>

SharePoint kutxa eginbideak onartzen duten enpresa horrelako eskakizunak mota daudelarik batzuk eskaintzen.

Oro har,, one links two lists together using a lookup column. List A contains the invoice header information and list B contains invoice details.

Use additional lists to maintain customer numbers, product numbers, etc.

Use a content query web part (in MOSS only) and/or a data view web part to create merged views of the lists. SQL Server Reporting Services (SRS) is also available for the reporting side of it.

Hala eta guztiz ere, 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:

  • Size of related lookup lists vs. "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 elementuak, that’s going to be a problem. The lookup control does not page through those items. Horren ordez, 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. Esate baterako, 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. I’ve written about this here. You can’t implement cascading drop-downs, conditionally enable/disable fields, etc.
  • 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. Adibidez, SharePoint allows you to create two custom lists, "customer" and "invoice header". You can create an invoice header that links back to a customer in the customer list. Gero, you can delete the customer from the list. Kutxa Out, there is no way to prevent this. To solve this kind of problem, you would normally use event handlers.

It may seem bleak, 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 enables us to fill those gaps using tools such as:

  • Event handlers. Use them to enforce referential integrity.
  • Custom columns: Create custom column types and use them in lieu of the default lookup column. Add paging, buffering and AJAX features to make them responsive.
  • 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 is a MOSS feature (not available in WSS) and is challenging to configure.

  • ASP.NET web form: Create a full-featured AJAX-enabled form that uses the SharePoint object model and/or web services to leverage SharePoint lists while providing a very responsive user interface.

The last option may feel like you’re starting from scratch, but consider the fact that the SharePoint platform starts you off with the following key features:

  • Security model with maintenance.
  • Menu system with maintenance.
  • "Master table" (I.E. Ohiko zerrendak) with security, built-in maintenance and auditing.
  • Bilatu.
  • Back end integration tools (BDC).

If you start with a new blank project in visual studio, you have a lot of infrastructure and plumbing to build before you get close to what SharePoint offers.

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, Mesedez, utzi iruzkin bat.

</amaiera>

Quick Tip: Edukia Query Web zatia, Lookup Zutabe balioa eta XSL

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

That column is of type "lookup".

Aldatu dut <CommonViewFields> eta ItemStyle.xsl zutabe erakusteko.

Sinple bat <xsl:balio hautatu =…> itzultzen itzuli barneko balioa dituen ordinalak posizio datuak, esate baterako,:

1;#Miami

Giza-friendly balioa lortzeko, erabili xsl ezik-ondoren, ikus daitekeen bezala:

<xsl:value-of select="substring-after(@ Real_x005F_x0020_Estate_x005F_x0020_Location,'#')"></xsl:balio du>

Erabili teknika hau, betiere, XSL transformazio balio lookup ari zaren lan egin eta behar giza-friendly balioa lortzeko.

<amaieran />

Technorati Tags: , ,

SharePoint Beagle abenduaren zenbakitako Up & Bizi

Asko ezagutzen hau dagoeneko, baina abenduaren edizioa SharePoint Beagle da zuzeneko.

Artikulu behin, nire ustez, irakurketa merezi.

Apur bat igo eman nahi dut nire lankide artikuluak (Natalya Voskrensenskya). She provides a screen-shot extravaganza while describing how she used custom lists, workflow, 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 bere blog egiten zauden bitartean.

Ez ahaztu ikusteko nire artikulu as well 🙂 I wrote about using MOSS to help an HR department manage open positions.

</amaiera>

MOSS esaten dit “Sarbidea ukatu” Workflow zeregin bat editatzeko, Baina ez dut dute sarbidea

I’ve implemented a workflow using SharePoint Designer in a site which is mainly read-only to "NT_AUTHORITY\Authenticated Users" (I.E. guztiontzat). There is a forms library for an InfoPath form. There is an associated workflow tasks list as well so that when the workflow operates, zereginak esleitu ahal izango da pertsona.

Baimena apurtu dut forma liburutegia eta zereginen zerrendaren beraz autentifikatutako erabiltzailea edozein forma sor daitezke, eta euren esleitutako zereginak eguneratu.

I test with my low-privileges test account.

Ezin bete dut eta liburutegian inprimaki bat gorde? –> BAI

Ezin zeregin sartzeko I elektroniko bat lotura-tik? –> BAI

Ezin bat editatzeko workflow zeregin lotura ikusten dut –> BAI

Ezin klik lotura duten I? –> NO … Baimena ukatu.

Zergatik ezin bat editatu lotura duten me baimena ukatzen ikusten dut egin klik I? That’s not how it’s supposed to work…

Joan segurtasun konfigurazioa bidez dut berriro, very closely. I do it again. Mezu hau ez da ezabatzen uste dut jakina dut, zeren ez dakit segurtasun buruz ezer.

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

Kartelak dela iradokitzen to eu esportatzen disko platter bat ekintza sinple bat MOSS segurtasun zulo konpondu egingo? I can hardly believe I just typed that. I’m reminded of the South Park episode about the 9/11 konspirazio non Stan gure Preznit da eskatuz, "Really?" over and over again.

Beraz,, ezer galtzeko, Sutea sortu dut SPD, eu eskuin-klik egin eta gorde nire 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?"

Izugarri, that solves my problem. I can edit the task.

Izendatuko dut hau gehien Bizarra Workflow Workaround izateko 2007.

</amaiera>

Technorati Tags:

SharePoint Designer, Uneko elementua en “Kodetuta absolutua URL” eta 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. Hala eta guztiz ere, it always seems to use "http" for the URL protocol. If your site runs on HTTPS then it will not work for you.

image

Den neurrian ezagutzen dut, there is no out of the box solution to this problem. If you need to use HTTPS, Aukera kutxa kanpo ez duzu.

Konpondu nahi, create a custom action that provides a string replace function to use in your workflow. Alternatively, erabili 3 party tresna, hala nola, pakete bikaina hemen: http://www.codeplex.com/spdwfextensions 🙂

</amaiera>

Technorati Tags: ,

Azkarra eta erraza: Zehazteko Barne Zutabe Web Zutabe baten izena

UPDATE: Jeremy Thake du honi buruz Blogetakoak eta jarri batzuk kontsola aplikazio baten kodea erakusten duen barne-izenak.

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", Zutabe-izen hori erabili bere gain hartu nuen <CommonViewFields> is "Due_x0020_Date".

Oker!

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

Nola aurkituko dut? I re-read Heather Solomon en CQWP aldatzea sarrera blog to show additional columns of data. She describes this process at step #13. Trust it. It’s correct. Gutxienez, 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" izena, Eremu beste gehitzeko nahi nuen <CommonViewFields>. Using the Solomon technique, I was getting a column name like "XYZ_x0020_Project_x0020_Due_x00".

, Pentsatu nuen, 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: Noiz CQWP batera nintzen lanean, gehitu dut txarra barne izena badago <CommonViewFields>, the CQWP would tell me that the query had returned no results. Baina, gehitu dut datu-mota bat bada, eremu-izena, 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, baina bere balioa erakutsi nahi izan dut,, I would always get a blank.

Honek ez zuen maskara errorea:

<CommonViewFields>Due_x0020_Date;</CommonViewfields>

Akats maskara zuen:

<CommonViewFields>Due_x0020_Date,DateTime;</CommonViewfields>

</amaiera>

Kontuz Breaking to ItemStyle.xsl aldaketak

ItemStyle.xsl zen I Eduki Query Web Taldea eta eskuineko itxura pertsonalizatzeko lunch time buruzko lan, 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, nabaritu mezu hau toki mordo bat agertzen:

Ezin da Web zati honetan erakutsi. Arazoa konpontzeko, Open Web orrialde honetan, Windows SharePoint Services bateragarria, hala nola, Microsoft Office SharePoint Designer gisa HTML editorea. Arazoak jarraitzen badu, harremanetan zure web zerbitzariaren administratzaileak.

Bezeroa erruduntzat dut (oraindik ez konturatu zela nire errua puntu honetan) but eventually noticed that visual studio intellisense was warning me that I had malformed XSL. I corrected it and everything started working.

Izan darned kontuz ItemStyle.xsl lan egiten (eta XSL global edozein artxibo) — Horietako asko hautsi eragiten artifacts gune bildumako.

<amaieran />