Category Archives: InfoPath 2007 // ফরম সার্ভার

InfoPath কেস-অসংবেদী তুলনা

আমি জন্য একটি নিবন্ধ লিখেছিলেন SharePointBriefing.com and they put it up live today.

এখানে একটি টিজার:

image

এটা দেখুন.

</শেষ>

আমার ব্লগ এর জন্য সাবস্ক্রাইব করুন.

টুইটারে আমার অনুসরণ http://www.twitter.com/pagalvin

Technorati বিভাগ:

দ্রুত হিট: SharePoint একটি SPListItem থেকে সরাসরি InfoPath এক্সএমএল পঠন

I’m been working on a project where I need to extract attachments from an InfoPath form. There are some good resources for parsing InfoPath forms (যা শুধু এক্সএমএল ফাইল, তাই এটা আসলে বেশ সহজ).

আমি প্রকল্প পর্যন্ত নির্মাণ করা হয়েছিল, I started by downloading an InfoPath form and saving it to my local hard drive. My c# code was reading directly from that instance. কিন্তু, the InfoPath forms are really living inside a SharePoint forms library. I did a little half hearted searching to find out how to read it directly from the library and almost gave up, in which case I would have saved the form to a local temp directory and read it from there. কিন্তু, there’s no need to go through those hoops as you can read it directly from the library. This little snippet shows how:

/// এখানে ক্লাস সংজ্ঞা স্টাফ, সহ:
ব্যক্তিগত Spfile mySharePointFile; /* একটি SPList অংশ */
// আরো কোড এখানে আমরা আছে বর্গ একটি পদ্ধতি ভিতরে যায়:
XmlTextReader textReader;
textReader = নতুন XmlTextReader(mySharePointFile.OpenBinaryStream());

= textReader.WhitespaceHandling WhitespaceHandling.না;

textReader.Read();

// নোড মূল্য আছে যদি

যখন (textReader.Read())
{

… and so on and so forth …

উপরে তারা কী বিট আমরা OpenBinaryStream মাধ্যমে সরাসরি InfoPath পড়তে পারে() method call on the SPFile as a parameter to the constructor on XmlTextReader. It works great.

</শেষ>

আমার ব্লগ এর জন্য সাবস্ক্রাইব করুন.

টুইটারে আমার অনুসরণ http://www.twitter.com/pagalvin

Technorati বিভাগ:

Programmatically InfoPath ফর্ম থেকে সংযুক্তিসমূহ নিষ্কাশন (তাদের নাম সহ!)

I have an expense entry solution for a client that leverages InfoPath and workflow. At one point during the approval process, তাই আমি যে ভাল InfoPath তথ্য সব সেইসাথে সংযুক্তিসমূহ নিজেদের এমন একটি ইমেল উৎপন্ন করতে হবে (দীর্ঘশ্বাস) someone can take that data and manually re-key it into an Oracle database application.

It’s not very difficult to get at or parse the InfoPath form. I didn’t know how to handle the attachments, কিন্তু. After an hour or two of poking around the Internets (an eternity!) I found this article: http://support.microsoft.com/kb/892730

It provide some handy code to extract the attachment from a node in the form. (You still need to find the node and all that, but that’s just XML parsing).

I know that the attachment is base64-encoded and I originally went down the path of just extracting the the base64 data, decoding it and saving it. কিন্তু, I quickly realized I didn’t know how to get the file name itself until I found the aforementioned article.

I had actually found that quite early, but I was put off by its split personality. On the one hand, the article *says* it’s good for InfoPath 2007. তবুও, the code and instructions are all about Visual Studio 2003 and references to InfoPath 2003.

পাদ - পংক্তি, the code that article provided is working well for me (এতদূর). I can get my InfoPath form, I can parse it, I can find and decode the attachment and I know its name. What more can one ask of one’s life?

</শেষ>

আমার ব্লগ এর জন্য সাবস্ক্রাইব করুন.

টুইটারে আমার অনুসরণ http://www.twitter.com/pagalvin

Technorati বিভাগ: ,,

If you’re worried that your SharePoint environment may be a tad unhealthy, let me help you fix that with a health check.

একটি FBA পরিবেশ মধ্যে InfoPath সঙ্গে অনুমোদন গোষ্ঠীসমূহ ম্যানেজিং

আমি প্রমাণীকরণ ভিত্তি করে একটি ফর্ম InfoPath ব্যবহার করে বাস্তবায়ন করতে হবে যে একটি ব্যয় অনুমোদন প্রক্রিয়া আছে (FBA) ফরম পরিষেবাগুলি ব্যবহার পরিবেশ (ওয়েব ভিত্তিক InfoPath).

দুটি অনুমোদন গ্রুপ হয় এবং প্রক্রিয়া ভালো কাজ করে:

  • ব্যবহারকারী একটি ব্যয় রিপোর্ট খুঁজে fills এবং অনুমোদনের জন্য এটি জমা.
  • প্রথম স্তরের approver গ্রুপে একটি ইমেল লী.
  • প্রথম স্তর approver প্রতিবেদন পর্যালোচনা এবং অনুমোদন বা অস্বীকার.
  • প্রথম স্তর ব্যক্তির অনুমোদন যদি, সিস্টেমের দ্বিতীয় স্তরের approver সূচিত.

জিনিষ InfoPath দিকে, আমি ব্যবহারকারী যারা অনুমোদন দলের এক সদস্য কিনা তার উপর ভিত্তি করে প্রদর্শিত করুন / আড়াল করুন যে বিভিন্ন বিভাগে আছে.

একটি FBA পরিবেশে করুন আপনার ব্যবহাকারীর নাম() ফাংশন সবসময় ফাঁকা ফেরৎ, দুঃখিতভাবে. What I’ve done is set up a a custom list called “Approval Groups”.

আমি তালিকা থেকে কোনো অতিরিক্ত কলাম যোগ না.

ফর্ম আপ খোলেন, তখন, এটা ভালো একটি নিয়ম আছে:

image

"একটি ক্ষেত্র এর মান সেট" এখানে:

image

এটি মুলত বলছে না: অনুমোদন গ্রুপ কাস্টম তালিকা ক্যোয়ারী এবং যেখানে শিরোনাম এর মান = "নর্ডিক" কোনো সারি খুঁজছেন দ্বারা যে ক্যোয়ারী ফিল্টার.

যে কোনো মান উত্পন্ন হয়ে থাকলে, then the current user is a member of that group. I know it contains that value because the string length is greater than zero.

Close the loop by securing the individual items in the Approval Group list. At run-time, বর্তমান ব্যবহারকারী যে আইটেমটি জন্য যথাযথ নিরাপত্তা এক্সেস আছে না হয়, তাহলে তারপর ক্যোয়ারী এটা ফেরত দিতে হবে না, string-length will be zero and now you know the current user is not part of that group. You can use that fact as needed in the form.

This is a super brief write-up. I’m pressed for time or I’d provide more detail.

I don’t know how relevant it is that I’m in an FBA environment. This would probably work well in a non-FBA environment but I can imagine cases where this would be useful.

</শেষ>

আমার ব্লগ এর জন্য সাবস্ক্রাইব করুন.

টুইটারে আমার অনুসরণ http://www.twitter.com/pagalvin

Technorati বিভাগ: ,

InfoPath // ফর্ম System.Xml.XmlException রেন্ডারিং যখন "Unhandled ব্যতিক্রম জন্য একটি ব্যাখ্যা: ফাইলের অপ্রত্যাশিত শেষ পার্সিং নাম ঘটেছে যখন. "

আমি একটি InfPath ফর্ম আজ কাজ এবং একটি পুরানো বন্ধু বিরুদ্ধে আপ স্থাপিত হয়, ফর্ম System.Xml.XmlException রেন্ডারিং যখন "Unhandled ব্যতিক্রম: ফাইলের অপ্রত্যাশিত শেষ পার্সিং নাম ঘটেছে যখন. "

This happened to me a long time ago and I don’t know what exactly I did to resolve it. Honestly, আমি একটি নতুন প্রকল্প স্থানান্তর করা হয়েছে যে মনে হয় এবং এই এক সমস্যা সমাধান করা দেখেছি না (আমার বদলাবার যে মাথা ব্যাথা মোকাবেলা করার ছিল). I do remember it was a devil of a problem. I spent several unsuccessful days dealing with it. Since then, আমি এই শেষ বছরে অন্তত একবার দুটিই MSDN ফোরাম আসা পর্যন্ত দেখা যায় এবং সত্যিই এটি জন্য একটি answer দেখেছি করেছি.

আমি ভাগ্যক্রমে আজ এবং এই সময় এটি আঘাত , I had just made a change to the form. I backed out that change and the problem went away. It turns out that it’s possible to create a from template using InfoPath Designer in such a way that it generates a parse error on the forms server side of the fence.

আমার কেস, সমস্যা ধাপগুলি দ্বারা সৃষ্টি হয়েছিল:

  1. একটি টেক্সট ক্ষেত্রের একটি ডাটা উৎসের একটি নতুন উপাদান যোগ করুন.
  2. ফর্ম সম্মুখের দিকে এটি ছাড়ুন.
  3. তালিকা নিচে একটি ড্রপ মধ্যে এটি এর প্রদর্শন পরিবর্তন করুন.
  4. একটি SharePoint কাস্টম তালিকা থেকে তার মান টান তালিকা ড্রপ ডাউন বলুন.

যারা পদক্ষেপ একটি সমস্যা হয়তো বা হতে হলে আমি জানি না, একরকম তালিকা নিজেই তথ্য একটি সমস্যা. I’m going to experiment a bit and see if I can nail downt he parameters of this with any more detail.

</শেষ>

আমার ব্লগ এর জন্য সাবস্ক্রাইব করুন.

টুইটারে আমার অনুসরণ http://www.twitter.com/pagalvin

Technorati বিভাগ:

তোমার InfoPath ফরম ভিতরে ডেভেলপার নোট এম্বেড করুন

আমি এখনও InfoPath ফরম বিশ্বের বসবাস করছি এবং আমি একটি ফরমের যারা "ছোট" পরিবর্তনের এক করা প্রয়োজন, দুর্ভাগ্যবশত, breaks a naming convention I adopted with it two weeks ago. আমি নিজেকে করার চিন্তা, "কেউ এখন থেকে বছরে এই জিনিস তাকান এবং বলে যাচ্ছে, 'কি পল চিন্তা ছিল? By Jove, তার নামকরণের কনভেনশন কোন অর্থে তোলে!"

আমি তখন আমি এই জন্য ফর্মে একটি দৃশ্য তৈরি করতে পারে বুঝতে, আবার, realized that I could have been doing something like this all along. I added a “Developer Notes” view to the InfoPath form as such:

image

ব্যবহারকারীরা যে দৃশ্যে পাওয়া এবং সেইজন্য করতে পারবে না যাতে আমি ফর্ম কনফিগার করেছেন, it’s only visible with the InfoPath client in design view. Now I feel a little inoculated against some future unknown developer looking at my form and thinking bad thoughts about me. Phew!

</শেষ>

আমার ব্লগ এর জন্য সাবস্ক্রাইব করুন.

টুইটারে আমার অনুসরণ http://www.twitter.com/pagalvin

Technorati বিভাগ:

InfoPath দেখেছে ম্যানেজিং

আমি InfoPath পর্যায়ক্রমে যেখানে মধ্য দিয়ে যেতে হবে বলে মনে হচ্ছে, সহসা, I’m crafting a bunch of forms. My fingers learn how to use the tool well and then I go through nine month drought and have to learn it all over again.

আমি একটি InfoPath ফেজ মাঝখানে এবং আমি দেখ অনেকটা সঙ্গে InfoPath ফরম তৈরি করছি. আপনি সম্ভবত লক্ষ্য করা এক জিনিস যে InfoPath 2007 client shows views in alphabetical order. This is a real nuisance some times. My best technique these days is to prepend a number to the view name so that they always show in the order I want, এখানে দেখানো হিসাবে:

image

আমি ইচ্ছুক আমি সব বরাবর এই করছেন হয়েছে,en.

</শেষ>

আমার ব্লগ এর জন্য সাবস্ক্রাইব করুন.

টুইটারে আমার অনুসরণ http://www.twitter.com/pagalvin

Technorati বিভাগ:

InfoPath ফরম Sevices, ভিত্তিক প্রমাণীকরণ ফরম (FBA) এবং অনন্য ফাইলের নাম

আমি এই সপ্তাহে একটি FBA পরিবেশে MOSS ফরম কিছু InfoPath কাজ এবং শিখেছি করেছি হয়েছে, আমি একটি FBA জোনের একটি কর্মক্ষেত্রে ফরম স্থাপন করতে গিয়েছিলাম যে যখন আপনার ব্যবহাকারীর নাম() function function does not work. I was using it to generate unique file names.

ভাল, যে ফাংশন একটি FBA পরিবেশের মধ্যে কাজ করে না (অন্তত, না বাক্স আউট). এবং, প্রতিফলন উপর, আমি পরিকল্পনা ছিল উপায় করুন আপনার ব্যবহাকারীর নাম ব্যবহার করে যে কোনও ঘটনা একটি অনন্য ফাইলের নাম নিশ্চিত হবে না.

আমার সমাধান এখন ব্যবহার করা হত() function and a rule that fires on loading of the form. I assign the file name to data element when it’s blank:

image

image

The advantage of this approach is that the file name is set only once. (আমি স্ক্রিন শট তা উপস্থাপন করা হবে না, কিন্তু "myFilename" ফাঁকা হলে ফায়ার নিয়ম নেভিগেশন একটি শর্ত রাখা). I used to set the file name at the data source level. Typically, আমি কিছু করতে হবে (খারাপ) এমন:

image

যে সঙ্গে সমস্যা যদি ব্যবহারকারী একটি সোমবার ফর্ম প্রর্দশিত হবে এবং ব্যবহারকারী বি মঙ্গলবার এটি পরিবর্তন করা হয়, দুটি ভিন্ন ব্যবহারকারীদের বিভিন্ন ব্যবহারকারীর নাম সঙ্গে এটি সংরক্ষণ করা থেকে আপনি দুটি ভিন্ন রূপ দিয়ে শেষ করব.

সুতরাং, FBA বিরক্তিকর বিশেষ করে সাধারণ এবং InfoPath সঙ্গে হতে পারে, এটি সম্পর্কে আমি অন্যথায় কাজ হবে না যে পুনরায় মনে হয় একটি ছোট কিন্তু সত্যিই গুরুত্বপূর্ণ প্রযুক্তিগত বিস্তারিত এবং পদ্ধতির তৈরি!

</শেষ>

আমার ব্লগ এর জন্য সাবস্ক্রাইব করুন.

টুইটারে আমার অনুসরণ http://www.twitter.com/pagalvin

Technorati বিভাগ:

দ্রুত এবং সহজ: একটি InfoPath ফরম কেবল পঠনযোগ্য করুন (MOSS মধ্যে InfoPath ফরম সেবা)

ভালো একটি সাধারণ ব্যবসা দৃশ্যকল্প আছে:

  • ব্যবহারকারী InfoPath ফর্মটি fills.
  • ফর্ম জমা.
  • দীর্ঘ চলমান কর্মপ্রবাহ প্রক্রিয়া kicks বন্ধ.
  • কর্মপ্রবাহ চলমান হয়, আমরা কেউ ফর্ম বিষয়বস্তু পরিবর্তন করতে চান না.

এই office.microsoft.com উদাহরণ describes how to create a separate "view" and mark the whole view as read-only. This is a workable approach but has the drawback that you’ve effectively created two entire versions of the same form and must now keep them in sync manually. If you add a field to the editable view, you must then add it to the non-editable view as well. সময়ের, বিভিন্ন ডেভেলপারদের সঙ্গে, there can be some divergence.

এই বিকল্প কিছু ক্ষেত্রে ভাল কাজ করতে পারে:

  • Add a new field to the form called "IsEditable".
  • সত্য তার ডিফল্ট মান নির্ধারণ করুন.
  • MOSS প্রকাশ করা হচ্ছে যখন এটি প্রচার করুন.
  • কর্মপ্রবাহ ইন, মিথ্যা IsEditble মান সেট.
  • ফর্ম ফিরে যান.
  • Add a rule that "upon open of the form", IsEditable মিথ্যা যখন আপনার সাশ্রয়ী বাটন নিষ্ক্রিয়.

The drawback to this approach is that all the fields will still be editable on the screen. The user can get a false impression that they can actually change content. You can mitigate that by putting in some text that the form is disabled, সম্ভবত পৃষ্ঠায় শীর্ষ জুড়ে বড় লাল অক্ষরে.

এক প্রকল্প, I created a "workflow status" দেখা. As the workflow progressed, it would update specific status fields that had been promoted from the form. When the user opened the form, the "open form" যে দৃশ্যে সুইচ এবং ব্যবহারকারীকে একটি চমৎকার সামান্য সারাংশ অবস্থা ছিল স্বয়ংক্রিয়ভাবে বাতিল.

</শেষ>

আমার ব্লগ এর জন্য সাবস্ক্রাইব করুন.

একটি InfoPath ফরম ব্যবহারকারী আইডি উপর নির্ভর করে দেখুন স্যুইচ করুন

আমরা একটি নতুন ভাড়া সমর্থন একাধিক ছবিসহ একটি InfoPath ফর্ম উন্নত ছিল / on-boarding process. When the company hires a new person, আইটি বিভাগ এবং অন্যান্য দলের পদক্ষেপ নিতে হবে (মাইনে সেট আপ, উপযুক্ত অ্যাপ্লিকেশন অ্যাক্সেস সক্ষম, একটি ডেস্ক সনাক্ত, প্রভৃতি). We use on form but a different view of the form for each of those functions.

এই কোম্পানিতে, ব্যবসায়িক প্রক্রিয়ার সাথে জড়িত ব্যক্তিদের অধিকাংশই-কাণ্ডজ্ঞান হয়, তারা ফর্মটি অ্যাক্সেস তাই যখন, their default view is a "menu" view with buttons that direct them to their specific function. কিন্তু, we needed to simplify things for the new hire’s direct manager. This person should not see any of the IT related stuff. বাস্তবিকই, তিনি ফর্ম আর মাত্র এক দৃশ্য দেখতে এবং অন্যান্য দেখেছে দেখতে একটি বিকল্প নেই, এমনকি করা উচিত.

আমাদের কেস, সরাসরি পরিচালকদের অ্যাকাউন্টে সরাসরি আকারে সৌজন্যে সাথে সংযুক্ত করা হয় নির্বাচক যোগাযোগ (which I am always wanting to call a "people picker" কিছু কারণে).

ধাপগুলি নিম্নরূপ:

1. নকশা মোডে, সরঞ্জাম যান -> ফরম বিকল্প -> খুলুন এবং সংরক্ষণ করুন.

2. Select "rules".

3. Create a new rule whose action is "switch to view" এবং যাদের অবস্থা করুন আপনার ব্যবহাকারীর নাম ওঠানামায়() কাজ.

ব্যবহারকারীর নাম() returns the "simple" user name without the domain. If I log into SharePoint with credentials "domain\pagalvin", ব্যবহারকারীর নাম() returns "pagalvin".

The contact selector provides three bits of information for a contact. The "AccountID" portion is most useful for this scenario. The only thing that makes this even a little bit of challenge is that the contact selector (যাহাই হউক না কেন আমার পরিবেশ) ডোমেন এবং ব্যবহারকারী আইডি ফেরৎ, as in "domain\pagalvin". This prevents us from doing a straight-forward equality condition since AccountID ("domain\pagalvin") আপনার ব্যবহাকারীর নাম সমান হবে না() ("pagalvin").

We can get around this using the "contains" অপারেটর: AccountID করুন আপনার ব্যবহাকারীর নাম রয়েছে().

আমরা এটা আপনার ব্যবহাকারীর নাম সামনে আরও এবং প্রাক pend একটি হার্ড কোড ডোমেন নিতে পারেন() আমাদের সমতা অপারেটর রয়েছে নেভিগেশন একটি মিথ্যা ইতিবাচক ঝুঁকি পরীক্ষা করুন এবং নিষ্কাশন পেতে কাজ.

We would have REALLY like to automatically switch view for other users based on their AD security group membership. উদাহরণস্বরূপ, when a member of the "IT Analytics" গ্রুপ ফর্ম ব্যবহারের, automatically switch to the IT Analytics view. We didn’t have time to implement it, but my first thought is to create a web service that would have a method like "IsMemberOfActiveDirectorySecurityGroup", এটি আপনার ব্যবহাকারীর নাম পাস() and return back true or false. Does anyone have any other, আরো চতুর ধারণা? Is there any SharePoint function we can leverage from InfoPath to make that determination?

</শেষ>

Technorati বিভাগ: