Remember to Elevate For Event Log Entries

Remember if you are logging errors to the system event log when developing your SharePoint application code you need to commonly promote the privileges that it is occurring under. Below is a common line that you can use in your catch blocks that gives you pretty much all the information you could want about an exception object:

[csharp] SPSecurity.RunWithElevatedPrivileges(delegate { EventLog.WriteEntry(Your WebPart Name, string.Concat(new object[] { “Exception in Function: “, ex.Message, ” Inner Excpetion: “, ex.InnerException, “Call Stack: “, ex.StackTrace }), EventLogEntryType.Error); });


Formation and Elicitation of Knowledge Management

Formation and Elicitation of Knowledge Management

KM also known as knowledge management from processing perspectives is troubled with the dissemination, creation and usage of knowledge within the company. A well-structured process is in demand for placing for managerial knowledge to be successful. The processes could be separated into steps.

Starting with knowledge creations or elicitation: following its capture or storage, then transferring or disseminations: Lastly, its exploitations…we now comprehend the various stages of the processing.

Reaction of Creation and Elicitation

Knowledge requires creation and solicitation to produce reactions to something or else respond to stimulus of some sort. Thus, knowledge requires creation and solicitation from resources in order to function as inputs to the knowledge administration processing.

The first scenario where knowledge is required to create, we start with the roots, which is data. Relating data requires gathering from various basis, including sales, billing, transaction and systems collection. At the time applicable data is gathered, the data requires processing to produce meaningful information. The transaction systems processing takes care of the task in many businesses today. Similar to data information coming from various sources, likewise requires gathering of data.

One of the important considered aspects of the technique is vigilance of the information, since it can come from external starting place as well as internal sources. Industrial publications, as well as Government sources conduct market surveys to move regulations and laws, etc. These sources make up the external starting places. Information gathered requires integration. When all details of the necessary information is gathered and at our disposal, we start analyzing its pattern, trends, and associations—generating knowledge as a result.

Tasks of the knowledge creation could be delegated or devoted to personnel, including marketing financial analysts. Alternatively, it could employ artificial intelligence-base computerized techniques for tasking genetic algorithms, intelligent agents, and artificial neural networks.

Data Mining and knowledge discovery in databases (KDD) come in union with the processing of extracting validity, previously unfamiliar and possibly practical in patterns and information from raw data in large databases. Analogy of data mining suggests sifting through huge amounts of low-grade ore or data, to find something of value. The process is multi-stepping and iterative inductive processing. The processes include tasks including, data extraction, problem analyzing, data preparations, cleaning, data reduction, output analyzing, reviewing, and rule development. For the reason that data mining involves retrospective analyzing of data, experimental designs outside of the scope of data mining is out of complex. Data mining and KDD generally is minister to synonyms referring to the entire processing in evolving from data to knowledge. The goal of data mining is to extract pertinent information from the data with ultimate goals of discovering knowledge.

Knowledge Managing Processing

Knowledge as well resides in the mind of employees in form of know-how. Knowledge within the residency of the human mind however is often in unspoken form. To ready for sharing of information across an org, the knowledge requires transferring to explicit formatting.

Inviting organizational atmospheres is the center for knowledge soliciting. Sharing of ‘know-how’ with colleagues, is essential, especially without fear of personal value losses, and near to the ground occupational security issues. KM-Knowledge Management is all about sharing. Personnel at workplaces are likely to communicate freely with reservation in informal atmospheres, speaking with peers rather than mandated managers.

Capturing and Storage

In order to enable storage and distribution, knowledge gathering must adhere to codifications in machine-readable formats. Codification of knowledge leads to transferring of explicit knowledge in paper form reporting or manuals in electronic documentation, and in unspoken forms foremost, and then symbolized in electronic form. The documents require search capabilities in order to facilitate ease of knowledge retrieval. Codification techniques based on notions, lead us to believe knowledge can in fact be codified, stored and recycled at a later time. The conclusion is that the knowledge is extracted from the person {s} who developed the information, and made it independent of the person. The information then can be reused for various reasons. The approach facilitates individuals to search information and retrieve knowledge without contacting the original developer of the information. Codification of knowledge, while in form is beneficial for sharing purposes, will have linked costs. The plan makes it easy to transfer strategic know-how outside of the company for scrupulous reasons. It is costly to codify knowledge and generate repositories. Furthermore, we could witness information overloads, which large directories of codified knowledge could never be of use or used for reason that the knowledge is overwhelming in nature of the information gathered. Codified knowledge must be gathered from a variety of sources and made centrally accessible to all managerial affiliates. Exploitation of centralized repositories facilitates trouble-free and speedy recovery of knowledge, while eliminating duplication of efforts by departmental or organizational levels and for this reason, cost is saved.

Transferring and Dissemination

In terms, one of the prevalent barricades to managerial knowledge and its usage of knowledge is an unproductive channel between knowledge supplier and seeker.

Logjams take place from origins, such as temporal locality or the deficient in of inducements for knowledge sharing.


Ruggles’ (1998) conducted a study of 431 European companies, and US, which showed that creating networks of knowledge workers and mapping internal knowledge, are the two top missions for effectual KM-knowledge management.

Nowadays nearly, every knowledge repositories are web-enabled providing the broadest dissemination over the World Wide Web or via intranets. Group Support Systems are also utilized to provide useful knowledge sharing. Two of the prominent sources come form IBM’s Lotus Notes and Microsoft Exchange programs. The security data sources are important as well as capabilities of user friendliness, and are considered while providing accessible knowledge repositories. Password usage and severs on secure platforms are important while providing accessible knowledge in susceptible nature. Accessible mechanisms require user-friendly functions in an effort to utilize knowledge repositories.

The exchanging of explicit knowledge is comparatively straightforward via the electronic community. On the other hand, exchange of unspoken knowledge is easiest at what time we have a shared context, coalition, and ordinary language in non-verbal and verbal cues. It enables high-levels of understanding amongst members of organizational atmosphere.

In 1995, Nonaka and Takeuchi identified the processing of socialization and externalization, and its method of transferring unspoken knowledge. Socialization continues the knowledge unspoken throughout the transferring, whereas externalization modifies the unspoken knowledge into more explicit knowledge. Examples of socialization include on-the-job training and apprenticeships. Externalization, which comprises the utilization of metaphors and analogies to trigger dialogue amid individuals, communicates knowledge. Portions of the knowledge is, on the other hand, is lost during transfer. To endorse such knowledge sharing, businesses ought to consent for video and desktop conferencing as a practical alternative for knowledge dissemination.

Exploitation and Application of Knowledge

Members of staff using knowledge repositories within organizational recital are a key gauge of the system’s achievement. Unless people learn from knowledge and apply it, knowledge will never turn into an innovation trend. The enhanced capabilities of collecting and processing data, or to communicate through electronic device does not (on its-own), lead to improvement of human communications or actions necessarily.

The notion recently pertaining to community practices in fostering knowledge sharing and exploitations have developed interest around the world. Brown and Duguid, in 1991, argued that a significant task for organizations is to distinguish and back accessible or embryonic communities. A great deal of knowledge exploitation and application occurs within a team environment, including workgroups in organizations. The support is necessary to enforce success.

Davis and Botkin in 1994 summarized six traits of knowledge-base business. The traits include:

  1. The more the customers employ knowledge-based aids, the more intelligent they become.
  2. Knowledge-base products and services adjust changing state of affairs
  3. Knowledge-based businesses can customize their offerings
  4. Knowledge-base products and services relative have short life cycles
  5. Knowledge-based businesses react to customers in real time manner

Event Handling In InfoPath

Within the InfoPath 2007, there is the option to handle events using an item called the Event Manager. Similar to the event receiver architecture provided by other facilities of SharePoint, the Event Manager provides mechanisms by which forms can provide and respond to event capturing. Writing code that is consumed by the Event Manager is done using Visual Studio Tools for Application (VSTA), and when choosing to program events off the InfoPath design surface it will attempt to open the VSTA IDE.

The Event Manager is called from the InternalStartup() method, which controls the events that are registered when a form is initially loaded. Each event that should be captured can be registered within the InternalStartup() method and then delegates can be constructed to encapsulate a reference to a method which handles the events tripped custom code.

There are several events that can be captured and managed when leveraging the Event Manager.

Event Capturing Available Through the Event Manager

Event Type
Event Capture
Control Event OnClick When a user clicks a control in InfoPath ClickedEventHandler(object sender, Microsoft.Office.InfoPath.ClickedEventArgs e)
Form Event OnSaveRequest When a user saves an InfoPath Form SaveEventHandler(object sender, Microsoft.Office.InfoPath.SaveEventArgs e)
Form Event OnContextChange When a user changes a Form Context, such as when a form is submitted SubmitEventHandler(object sender, Microsoft.Office.InfoPath.SubmitEventArgs e)
Form Event OnSign When a user signs an InfoPath form with a digital signature SignEventHandler(object sender, Microsoft.Office.InfoPath.SignEventArgs e)
Form Event OnMergeRequest When a user merges a set of InfoPath forms (merge operation) MergeEventHandler(object sender, Microsoft.Office.InfoPath.MergeEventArgs e)
Form Event OnSwitchView When an InfoPath view is changed (switch view operation) ViewSwitchedEventHandler(object sender, Microsoft.Office.InfoPath.ViewSwitchedEventArgs e)
Xml Event OnBeforeChange Before a passed XPath node is changed, wire an XML event XmlChangedEventHandler(object sender, Microsoft.Office.InfoPath.XmlEventArgs e)
Xml Event OnValidate When an XPath node is being validated, wire an XML event XmlChangingEventHandler(object sender, Microsoft.Office.InfoPath.XmlChangingEventArgs e)
Xml Event OnAfterChange After an XPath node is changed, wire an XML event XmlValidatingEventHandler(object sender, Microsoft.Office.InfoPath.XmlValidatingEventArgs e)
Registering View Delegate in InternalStartup()

Using the InfoPath event handlers is as straight-forward as the event receiver/listener architecture that is present with SharePoint content types and list definitions. The event being captured must be registered within the InternalStartup() method by standard declaration. Wiring an event to display a message box telling the user they are switching views requires registering the event first.


void InternalStartup(object sender, EventArgs e)   
((FormControl)sender).EventManager.FormEvents.ViewSwitched +=        new ViewSwitchedEventHandler(OnSwitchView);    

View Delegate
Once the handler has been registered within the InternalStartup() method, the event handler that it is called can be declared by a delegate.
public delegate void ViewSwitchedEventHandler(object sender,         Microsoft.Office.InfoPath.ViewSwitchedEventArgs e)  
MessageBox.Show(“You are switching InfoPath Views!”);  

With the event wired as such, whenever a user switches InfoPath views, a message box displays, confirming that they are switching views. More elegant event handlers could be developed depending on the event capturing logic that is required; however the overall concept remains the same.

By the same token, it is possible to validate the XML fields so a user entering null values into an InfoPath form is passed a message.

Register Event in InternalStartup()
First, register the XML event handler in the InternalStartup() method. Since it is an XML event, an XPath statement is required in order for InfoPath to know which control to validate against.
public void InternalStartup()
EventManager.XmlEvents[“/my:myFields/my:ProSharePoint2007Field “].Validating += new XmlValidatingEventHandler(ProSharePoint2007Field_Validating);
Once the event handler has been registered, the actual event logic can be wired to the event to be called when the XML event is tripped.
Validating a Null Value with Event Handling
Use a String.IsNullOrEmpty if check on the value being passed into the InfoPath control to verify a null entry. Otherwise, you can use the Errors.Add method in order to point each error to the XML node, or InfoPath field the error is associated with; in this case the ProSharePoint2007Field. The other error handling method in the below code is the Error.Delete method which removes the error handler if no errors are encountered in the InfoPath field. Any number of string comparison options that are available through the .NET framework could be leveraged if you’re looking for a more elegant error-checking mechanism.

public void ProSharePoint2007Field_Validating(object sender, XmlValidatingEventArgs e)


if (!String.IsNullOrEmpty(e.NewValue))    


Errors.Add(e.Site, “ProSharePoint2007Field “, “Null Values are not allowed!”);    




Errors.Delete(“ProSharePoint2007Field “);