jump to navigation

A listener channel for protocol ‘http’ in worker process ‘XXXX’ serving application pool ‘.NET v4.5’ reported a listener channel failure. The data field contains the error number. November 6, 2013

Posted by juanpablo1manrique in Developer.
Tags: ,
add a comment

Buen día

En estos días se me presento un error en un Windows Server 2012, inicialmente el sitio que estaba instalando desplegaba error 503, yel pool de aplicacion se detenia, al investigar un poco en el event viewer, seccion system aparecio …

A listener channel for protocol ‘http’ in worker process ‘XXXX’ serving application pool ‘.NET v4.5’ reported a listener channel failure.  The data field contains the error number.

El error se presentaba cuando intentaba configurar una aplicacion que se encontraba en x64 y la intetaba mover a x32

Page1

El error se debia a que en ese servidor se encontraba instalado SharePoint y cierta configuración del mismo interferia con las aplicaciones .NET normales

fue necesario

Ingresar al archivo applicationhost.config ubicado en %WinDir%\System32\Inetsrv\Config, al abrirlo buscar

<add name=”SPNativeRequestModule” image=”C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\15\isapi\spnativerequestmodule.dll”  />

Editar esta llave y agregarle preCondition=”bitness64″

<add name=”SPNativeRequestModule” image=”C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\15\isapi\spnativerequestmodule.dll” preCondition=”bitness64″ />

Con esto ya se soluciono

Tambien es recomendable verificar que si se tiene RPC over HTTP Proxy instalado verificar que la llave PasswordExpiryModule tambien incluya el preCondition=”bitness64″

<add name=”PasswordExpiryModule” image=”%SystemRoot%\system32\rpcproxy\rpcproxy.dll” preCondition=”bitness64″ />

Saludos

 

Archivos ashx y asmx en Empty SharePoint Project November 22, 2012

Posted by juanpablo1manrique in SharePoint.
Tags: ,
add a comment

Me he encontrado con este problema al intentar agregar a un proyecto un archivo ashx y asmx en un Empty SharePoint Project, de sharepoint para que se despliegue en un archivo .wsp

  • 1. Debe estar ubicado en Layouts, para lo cual debemos mapear la carpeta en el proyecto,
  • 2. Una estrategia es tener un sitio web normal crear el archivo asmx o ashx y luego copiarlo y pegarlo al proyecto de sharepoint esto debido a que la opción de agregar un item no nos da la posibilidad de agregar este tipo de items
  • 3. Se comnpila el proyecto y se le da deploy, al hacer esto nos encontramos con el siguiente error Could not create type ‘MyProject.Handler1’.
  • 4. Para encontrar la solucion de este problema di bastantes vueltas pero lo encontre de la siguiente manera.
  • a. Dentro del proyecto de Sharepoint cree un Visual Web Part el cual en la cabecera tiene una línea <%@ Assembly Name=”$SharePoint.Project.AssemblyFullName$” %>
  • b.Esta línea permite que luego de hacer deploy, los archivos que quedan en 14 (C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\TEMPLATE\CONTROLTEMPLATES) esta linea se convierte en <%@ Assembly Name=”MyProject, Version=1.0.0.0, Culture=neutral, PublicKeyToken=7bf1drt64fd3c7da7″ %>
  • c. Pero con los archivos asmx y ashx no sucede lo mismo, para este caso fue necesario tomar esta línea y agregarla directamente al archivo, al hacer esto se logro el objetivo luego de hacer deploy de la solucion la misma ya funcionaba correctamente. y es posible utilizar los servicios

Happy SharePoint Coding!!

After Install CKSDEV I don´t see the WCF Service (CKSDev) June 23, 2012

Posted by juanpablo1manrique in Developer, SharePoint.
Tags: ,
add a comment

Bueno amigos

El día de hoy conocí un AddIn para VisualStudio que trae algunas plantillas de desarrollo bastante interesantes

CKS – Development Tools Edition (Server)   http://visualstudiogallery.msdn.microsoft.com/ee876627-962c-4c35-a4a6-a4d89bfb61dc/

La cual nos puede facilitar la vida para desarrollar algunos tipos de proyectos para SharePoint 2010.

Por lo general para crear un proyecto de SharePoint que implemente un WCF tenemos que realizar un proceso similar a este.

http://nikspatel.wordpress.com/2012/02/29/step-by-step-building-custom-wcf-services-hosted-in-sharepoint-part-i/ http://blah.winsmarts.com/2010-3-Video__Telerik_Silverlight_Chart_showing_live_data_from_SharePoint_2010.aspx

Pero con CKSDEV es mucho más fácil

Pero cuando lo instale tuve un problema, no veía las plantillas, lo que sucede es que al ejecutar el archivo CKS.Dev.Server.vsix este instala las plantillas para el usuario que esta logueado actualmente, aaa … ya se acuerdan que siempre que ejecutamos el VisualStudio 2010 le decimos que se ejecute con otra cuenta de usuario, pues ahí esta.

Para solucionar el tema toco Windows, Cambiar de usuario e iniciar sesión en el Win7 con el usuario que es FarmAdministrator de nuestro SharePoint 2010, se ejecuto nuevamente el archivo CKS.Dev.Server.vsix y al volver a la sesión que teníamos antes ya se observaban las plantillas,

Happy Coding!!!

One or more field types are not installed properly. Go to the list settings page to delete these fields. May 4, 2012

Posted by juanpablo1manrique in SharePoint, SharePoint Development.
Tags: ,
1 comment so far

Hola amigos

Se me ha presentado este error al ejecutar el siguiente código. One or more field types are not installed properly. Go to the list settings page to delete these fields.

  •  int i = (from p in context.SporadicMessageInst                     
  • where p.CreateDateCalc > date                     
  • select p).ToList().Count;  

No ve van a creer el problema que tenia pero lo que sucedia era que en el momento de llamar el contexto lo estaba haciendo con una URL incorrecta, los estaba haciendo con la URL del sitio principal y no la del subsitio donde estaba la lista

siempre puede suceder, entonces toca verificar que nos encontremos en el lugar correcto.

si la ruta es incorrecta y se intenta ajecutar el codigo

  •  var it = from p in context.SporadicMessageInst                     
  • where p.CreateDateCalc > DateTime.Now                     
  • select p;

Funciona bien pero cuando intento llamar el metodo

  • it.Count();
  •  it.ToList();

Arroja el mismo error, y no hay forma de verificar que no sea nulo porque la linea

if (it != null)

Siempre arroja verdadero, entonces no hay forma de validar que estemos en el lugar incorrecto.

Saludos

Codificación de usuarios : SAML : 0#.w : 0#.f March 26, 2012

Posted by juanpablo1manrique in Developer, SharePoint, SharePoint Development, Visual studio 2008.
Tags: ,
1 comment so far

Codificación de usuarios: SAML : 0#.w : 0#.f

Cuando se llama un usuario desde código se muestran unos códigos raros que se agregan al nombre de usuario, investigando sobre el tema los numeros extraños son codificación SAML el cual es necesario para soportar varios tipos de autenticación y el manejo de claims.

Para el caso de usuarios que vienen de sqlMemberShip tenemos códigos como:

0#.f|sqlmembership|user1

Para usuarios que vienen de directorio activo se codifican de la siguiente manera 0#.w|steve\\wilmaf

Una de los posibles maneras de trabajar con estos usuarios y limpiar estos códigos es utilizar lo siguiente,

string userLoginEncoded = SPUtility.FormatAccountName(“i”, entity.Value); string userLogin = SPClaimProviderManager.Local.DecodeClaim(userLoginEncoded).Value;

Espero que les sea de ayuda

Saludos

Form control does not have ControlMode set February 8, 2012

Posted by juanpablo1manrique in SharePoint Development.
Tags: ,
1 comment so far

Hola amigos

Tuve este error cuando estaba trabajando con Visual WebParts en el momento de agregar un Update Panel

Form control does not have ControlMode set

————————————————————–

 <asp:UpdatePanel ID=”UpdatePanel1″ runat=”server”>
                        <ContentTemplate>
                       
                        <table >
                            <tr ………….
                            </tr>
                        </table>
                        </ContentTemplate>
                        </asp:UpdatePanel>

La forma de solucionarlo fue ingresar al archivo de definicion del WebPart, este archivo lo podemos ubicar porque hereda de WebPart

  public class MyControl : WebPart

La forma de solucionarlo es asignar el SPcontrolMode, este parametro se debe modificar antes de que se ejecute el evento de Page_Load por lo tanto lo debemos agregar en el método CreateChildControls

  protected override void CreateChildControls()
        {
            SPContext.GetContext(this.Context).FormContext.FormMode = SPControlMode.Display;
Saludos

 

SharePoint no tiene en cuenta los milisegundos January 25, 2012

Posted by juanpablo1manrique in SharePoint, SharePoint Development.
Tags: ,
1 comment so far

Si se realiza un query como

 

en donde queremos obtener los items que  se encuentren entre un rango de fechas

DateTime endt = new DateTime(2012, 01, 24, 10, 41, 26, 451); //2012/01/24 10:41:26.451

 

DateTime endt = new DateTime(2012, 01, 24, 10, 41, 27, 478); //2012/01/24 10:41:27.478

 

Aunque el CAML Query no falla, definitivamente no tiene en cuenta los milisegundos, sino que los resultados que retorna solo tienen en cuenta los segundos y el resultado es acorde solo a los segundos,

Me puse en la tarea de realizar una búsqueda e imprimir el dato que contenia la columna tipo fecha de la siguiente manera,

DateTime itemCreatedDate = (DateTime)objSPItem[“Created”];
sbMessageResponse.Append(“<br />” + itemCreatedDate.ToString(“yyyy-MM-ddTHH:mm:ss.fffZ”));

El valor mostrado en pantalla no posee valores de milisegundos

——————————Created:2012-01-24T10:41:27.000Z

 

Listas Maestro Detalle SharePoint 2010 January 19, 2012

Posted by juanpablo1manrique in SharePoint, SharePoint Development.
Tags: ,
add a comment

He realizado un video de manejo de listas maestro – detalle en SharePoint 2010

Cargar un Archivo de Excel en SQL Server 2008 x64 March 27, 2010

Posted by juanpablo1manrique in Business Inteligent, Developer, Excel 2007, Excel Services, Office 2010, SQL SERVER 2008.
Tags: ,
30 comments

En estos días he estado desarrollando un procedimiento para cargar un archivo de Excel en SQL, todo estaba funcionando perfecto hasta que toco subir el archivo a un servidor de SQL server x64.

En el ambiente de desarrollo estaba utilizando Microsoft.Jet.OLEDB.4.0 pero al subirlo al servidor aparece un error que dice:

  • The OLE DB provider “Microsoft.Jet.OLEDB.4.0” has not been registered.

Buscando en internet encontré que para el servidor de x64 el nuevo proveedor es Microsoft.ACE.OLEDB.12.0, pero igualmente salió un error que decía:

  • The OLE DB provider “Microsoft.ACE.OLEDB.12.0” has not been registered.

Buscando en Internet encontré que se debían ejecutar las siguientes sentencias:

  • EXEC master.dbo.sp_MSset_oledb_prop N’Microsoft.ACE.OLEDB.12.0′, N’AllowInProcess’, 1
  • EXEC master.dbo.sp_MSset_oledb_prop N’Microsoft.ACE.OLEDB.12.0′, N’DynamicParameters’, 1
  • exec sp_configure ‘Advanced’, 1
  • RECONFIGURE
  • exec sp_configure ‘Ad Hoc Distributed Queries’, 1
  • RECONFIGURE
  • exec sp_configure ‘xp_cmdshell’, 1
  • RECONFIGURE
  • GO
  • sp_configure ‘show advanced options’, 1
  • GO
  • RECONFIGURE WITH OverRide
  • GO
  • sp_configure ‘Ad Hoc Distributed Queries’, 1
  • GO
  • RECONFIGURE WITH OverRide
  • GO

Pero seguía presentándose el error:

  • Cannot create an instance of OLE DB provider “Microsoft.ACE.OLEDB.12.0” for linked server “(null)”.

Esto se debe a que Microsoft en el lanzamiento de SQL SERVER 2008 x64 no hizo un proveedor para poder cargar archivos de Excel, el COLMO NO. Menos mal este problema lo tuve hace poco y descubrí que los componentes de conectividad de Office 2010 ya traen este proveedor los cuales se pueden descargar desde:

http://www.microsoft.com/downloads/details.aspx?familyid=C06B8369-60DD-4B64-A44B-84B371EDE16D&displaylang=en

Con lo cual se instala el proveedor y la sentencia:

  • SELECT * INTO SourceDimBalance FROM OPENROWSET(
  • ‘Microsoft.ACE.OLEDB.12.0’,
  • ‘Excel 12.0;Database=c:\TEMP\DimBalance.xlsx;HDR=YES’,
  • ‘SELECT * FROM [Hoja1$]’)

 

Funciona correctamente!!!!

Maintaining Scroll Position on Postback March 26, 2010

Posted by juanpablo1manrique in Uncategorized.
Tags:
add a comment

En asp.net se utilizava SmartNavigation = “true” para que la página mantuviera el estado de la página, y con esto se lograba que luego de dar un click en la pagina esta mantiviera el scroll donde estaba y no fuera necesario estar moviendo el scroll en cada click.

En el caso de que se hayan construido paginas personalizadas o controles personalizados para desplegar en SharePoint, por medio de un SiteWebPart o un Webpart de SmartPart es necesario agregarle a los controles en el evento de PageLoad la línea de código :

this.Page.MaintainScrollPositionOnPostBack = true;