Project Server 2010 Booking Type “Committed” vs “Proposed” August 10, 2013
Posted by juanpablo1manrique in ProjectServer.Tags: ProjectServer
add a comment
Cuando un gerente de proyecto asigna un recurso a una tarea, y el recurso tiene un tipo de reserva (booking type) “Proposed”, el sistema interpreta cada una de las asignaciones del recurso como un “compromiso provisional.” Cuando un gerente de proyecto asigna un recurso con una reserva tipo (booking type) “Committed”, el sistema interpreta las asignaciones como “compromisos firmes.” los gerentes de proyecto pueden cambiar el valor tipo de reserva (booking type) para cada miembro del equipo en un proyecto especifico. Como buena práctica se recomienda establecer el valor de tipo de reserva (booking type) a “Committed” para todos los recursos del grupo de recursos de empresa (Enterprise Resource Pool). Cuando un gerente de proyecto asigna a un miembro del equipo como recurso propuesto “Proposed” en un proyecto, el sistema marca todas las tareas asignadas para el recurso propuesto como asignaciones propuestas. Las consecuencias en Project Server 2010 son los siguientes:
- Las tareas asignadas de tipo “Proposed” no se le muestran al recurso en su lista de tareas y tampoco en su TimeSheet.
- Los proyectos en los que el recurso está reservado como “Proposed” no se muestran en “View Resource Availability page”, y las horas de trabajo de los recursos no se muestran para la asignación de tareas propuestas.
- Reservas propuestas no afectan a la disponibilidad de recursos. En consecuencia, estos no aparecen en la página Ver disponibilidad de recursos “View Resource Availability page”.
- Tipo de reserva (booking type) es una dimensión del cubo OLAP y está disponible para su uso en las vistas.
System.Windows.Forms.Panel Controls.Add only see first July 27, 2013
Posted by juanpablo1manrique in SharePoint.Tags: .NET
add a comment
Buen día amigos,
Aquí estoy realizando una aplicación Windows forms, pero en forms ciertas cosas funcionan diferente, me anime a escribir este post para todos aquellos que estamos acostumbrados a desarrollar WEB y nos encontramos con la necesidad de Hacer WindowsForms por casualidad.
Al ejecutar este código solo veía el primer control,
- Label lbl = new Label();
- lbl.Text = “sdfsdasdcsddf”;
- Panel12.Controls.Add(lbl);
- TextBox lbl3 = new TextBox();
- lbl3.Text = “1234 ABC”;
- Panel12.Controls.Add(lbl3);
- Label lbl2 = new Label();
- lbl2.Text = “123223”;
- Panel12.Controls.Add(lbl2);
Las solución para que en pantalla no se viera solo el primero fue agregar el location
- Label lbl = new Label();
- lbl.Text = “sdfsdasdcsddf”;
- lbl.Location = new System.Drawing.Point(0, 0);
- Panel12.Controls.Add(lbl);
- TextBox lbl3 = new TextBox();
- lbl3.Text = “1234 ABC”;
- lbl3.Location = new System.Drawing.Point(0, lbl.Size.Height);
- Panel12.Controls.Add(lbl3);
- Label lbl2 = new Label();
- lbl2.Text = “123223”;
- lbl2.Location = new System.Drawing.Point(0, lbl.Size.Height + lbl3.Size.Height);
- Panel12.Controls.Add(lbl2);
Happy WinForm Coding
Open HTML, FLASH, PDF files in SharePoint Library try Download July 15, 2013
Posted by juanpablo1manrique in SharePoint, SharePoint2013.Tags: SharePoint
2 comments
Hola
En estos días tuve el impedimento de poder desplegar archivos HTML, PDF, FLASH desde una librería de SharePoint, al dar click sobre un archivo HTML que estaba en una librería, me lo intentaba descargar en vez de abrirlo de una vez,

Una de las soluciones fue ir al central administrator y en los settings del webApplication decirle “permissive”, pero la idea no era darle “permissive” ya que esto abría un poco la seguridad del web application, así que seguí buscando y encontré la función AllowedInlineDownloadedMimeTypes (Realmente es un vector), el cual permite agregar los tipos de application que quiero que se desplieguen sobre SharePoint, el script completo quedo de la siguiente manera.
$webApp=Get-SPWebApplication http://webapplicationurl:90
$webApp.BrowserFileHandling = “strict”
$webApp.AllowedInlineDownloadedMimeTypes.Add(“application/octet-stream”)
$webApp.AllowedInlineDownloadedMimeTypes.Add(“text/html”)
$webApp.AllowedInlineDownloadedMimeTypes.Add(“application/pdf”)
$webApp.AllowedInlineDownloadedMimeTypes.Add(“application/x-shockwave-flash”)
$webApp.Update()
Para poder ver que tipo de application que quiero desplegar, me recomendaron RESTClient de Firefox el cual me dice que tipo de application es el que necesito
https://addons.mozilla.org/en-us/firefox/addon/restclient/
PD. los archivo de tipo “application/octet-stream” igualmente no se abren en modo permissive sino que toca, colocarlo strict y agregar el tipo de application correspondiente.
Happy SharePoint,
Move sites in other database content July 6, 2013
Posted by juanpablo1manrique in SharePoint.add a comment
En este caso vamos a mirar como mover sites entre bases de datos de contenido en el caso de Sharepoint 2010,
Lo primero es crear un archivo XML con la ubicación de los sitios que deseamos mover,
stsadm -o enumsites -url http://localhost > c:\sites.xml
Este comando enumera todos los sitios de este WebApplication, así que es necesario editarlo en notepad y eliminar los sitios que no queremos mover, y luego ejecutamos el siguiente comando,
stsadm -o mergecontentdbs -url http://localhost -sourcedatabasename WSS_Content -destinationdatabasename WSS_content_2 -operation 3 -filename c:\sites.xml
y taran,
Hack or restore sa account sql server March 18, 2013
Posted by juanpablo1manrique in SharePoint.add a comment
Exactamente no la vamos a hackiar, vamos a elevernos permisos a ‘sysadmin’ y ahi recuperar el control de la instancia de SQL SERVER y entrar en modo Dios.
- Iniciar consola con permisos de administración
- cd\ para pararse en C:
- SQLCMD –E -S ‘Domain\Account’
- CREATE LOGIN ‘Domain\Account’ FROM WINDOWS *
- exec sp_addsrvrolemember @loginame=’Domain\Account’,@rolename=’sysadmin’
- servics.msc y reiniciar el servicio, tambien se puede hacer desde la consola de administración de SQL pero es lo mismo
* Este es un paso adicional que no siempre es necesario, toca ejecutarlo en caso que no se logre entrar a la instancia, por lo general se logran entrar dado que el BUILTIN\Users siempre esta presente en todas las instancias de SQL muy pocas veces se toman el trabajo de quitarlo para asegurar la instancia. En caso de que se logre entrar a la instancia este usuario se puede crear por el management studio pero va a quedar con permisos de public y luego se corre este procedimiento por comandos para elevarle los permisos.
Esto no es exactamente Hackear la cuenta, solo es entrar con una cuenta de administrador y elevarse privilegios, para casos más extremos se puede utilizar
http://www.windowsecurity.com/articles-tutorials/misc_network_security/Hacking_an_SQL_Server.html
Saludos
Error: var logoImg = documentGetElementsByName – MoveSiteTitle February 24, 2013
Posted by juanpablo1manrique in SharePoint, SharePoint Development.Tags: MasterPage, SharePoint
3 comments
Hola Amigos
Ahora que ingresamos al mundo cross-browser, con sharepoint 2013, encontrmos que sharepoint 2010 todavia tiene algunos incovenientes, uno de ellos se me present en estos días al estar trabajando con el SharePoint recien instalado y con el Master.Page v4 que trae sharepoint por defecto, en Chrome en el momento de hacer debug se evidenciaba error en estas 2 líneas.
solucion medio temporal:
En SharePoint designer se busca el PlaceHolder:PlaceHolderPageTitleInTitleArea al abrir el master page se le dice a que visible = false
<asp:ContentPlaceHolder id=”PlaceHolderPageTitleInTitleArea” runat=”server” Visible=”false” />
Esto ya no renderiza este molesto código en sharepoint
Se intento bajar el ultimo Cumulative Update de Diciembre 2012 http://support.microsoft.com/hotfix/KBHotfix.aspx?kbnum=2596957
Pero esto no soluciono el problema
Asi que este place holder quedo con la propiedad visible=”false”, esta solución no me convence del todo así que seguire investigando sobre el tema, cualquier sugerencia con gusto sera recibida.
SHPludos
Reordenar las propiedades de un WebPart January 22, 2013
Posted by juanpablo1manrique in SharePoint.add a comment
Hola Amigos
Cuando se agregan propiedades personalizadas a un WebPart las mismas quedan de ultimas.
- Recordemos que al crear un VisualWEbPart siempre se crean 2 archivos WebPartMyClass y UserControlWebPartMyClass.
Estuve investigando un resto como ponerlas en el primer lugar, pero no encontre nada, esta vez san Google no me ayudo, así que toco pedirle ayuda a otro santo, a VS 2010. Me dio por sobreescribir solo a nivel de prueba el metodo, en WebPartMyClass:
public override Microsoft.SharePoint.WebPartPages.ToolPart[] GetToolParts()
Y al mirar por debug las variables en cuestion me encontre con, muy buenas noticias.
El metodo final quedo de la siguiente manera, y ya se ven en el orden que queria
Siempre es bueno probar override de las clases que uno tiene disponibles, haber que encuentra,
saludos
Modificar las propiedades de un WebPart sin usar el control de EditWebPart por defecto de SharePoint January 18, 2013
Posted by juanpablo1manrique in SharePoint, SharePoint Development.Tags: SharePoint
add a comment
Hola amigos
En esta oportunidad he tenido el atrevimiento de modificar las propiedades de un webPart desde un boton sin necesidad de utilizar el control de propiedades que trae por defecto SharePoint,
Recordemos que un WebPart esta dividido en 2 clases importantes una para la definición de WebPart que hereda de Microsoft.SharePoint.UI.WebParts.WebPart de ahora en adelante WebPartMyClass y otra que es un User Control ascx; en el caso de los WebPart visuales de ahora en adelante alias UserControlWebPartMyClass,
Para lograr salvar las propiedades de esta manera es necesario construir un metodo publico en WebPartMyClass de la siguiente manera
public void SaveCustomProperties(string val1, string val2)
{
this.Property1 = val1;
this.Property2 = val2;
this.SaveProperties = true;
this.SaveControlState();
}
El código dice más que mil palabras, 🙂
Y desde el evento de boton del ascx (UserControlWebPartMyClass) llamar este metodo que acabamos de construir de la siguiente manera
protected void Button1_Click(object sender, EventArgs e)
{
((WebPartMyClass)this.Parent).SaveCustomProperties(“val1”, “val2”);
}
Aqui el código de las 2 clases
— Clase WebPartMyClass
using System;
using System.ComponentModel;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using Microsoft.SharePoint;
using Microsoft.SharePoint.WebControls;
namespace xxxx
{
[ToolboxItemAttribute(false)]
public class Processes : WebPart
{
// Visual Studio might automatically update this path when you change the Visual Web Part project item.
private const string _ascxPath = @”~/_CONTROLTEMPLATES/yyyyy/UserControlWebPartMyClass.ascx”;
protected override void CreateChildControls()
{
Control control = Page.LoadControl(_ascxPath);
((UserControlWebPartMyClass)control).Property1 = this.Property1;
((UserControlWebPartMyClass)control).Property2 = this.Property2;
Controls.Add(control);
}
public void SaveCustomProperties(string val1, string val2)
{
this.Property1 = val1;
this.Property2 = val2;
this.SaveProperties = true;
this.SaveControlState();
}
[WebBrowsable(true), WebDisplayName(“Property1”), WebDescription(“Property1”),
Personalizable(PersonalizationScope.Shared), Category(“Custom Property”),
System.ComponentModel.DefaultValue(“”)]
public string Property1{get;set;}
[WebBrowsable(true), WebDisplayName(“Property1”), WebDescription(“Property1”),
Personalizable(PersonalizationScope.Shared), Category(“Custom Property”),
System.ComponentModel.DefaultValue(“”)]
public string Property2{get;set;}
}
}
— UserControlWebPartMyClass —
using System;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using Microsoft.SharePoint.WebPartPages;
namespace xxxx
{
public partial class ProcessesUserControl : WebPartControl
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
((WebPartMyClass)this.Parent).SaveCustomProperties(“val1”, “val2”);
}
}
}
Este post fue inspirado por esta duda
Register-SPWorkflowService : The underlying connection was closed January 17, 2013
Posted by juanpablo1manrique in SharePoint2013.Tags: SharePoint
2 comments
Este error me aparecio instalando Workflow 2013 SharePoint.
Register-SPWorkflowService : The underlying connection was closed: An unexpected error occurred on a receive. Client ActivityId : ee2de3e9-3f96-4a6f-96b9-321e126cc37f.
Este sucedia cuando se ejecutaba mal el commando, se arreglo utilizando la direccion completa del dominio.
Incorrecto.
Register-SPWorkflowService –SPSite “http://devPC:90/TeamSite” –WorkflowHostUri “https://devPC:12290” –AllowOAuthHttp
Correcto.
Register-SPWorkflowService –SPSite “http://devPC:90/TeamSite” –WorkflowHostUri “https://devPC.mydomain.loc:12290” –AllowOAuthHttp
Aqui puedes observer todos los detalles de la instalación
Installing and configuring workflow for SharePoint Server 2013, Step by Step
Saludos
Installing and configuring workflow for SharePoint Server 2013, Step by Step January 17, 2013
Posted by juanpablo1manrique in SharePoint2013.2 comments
Hola Amigos
En estos dias estuve revisando el tema del nuevo WebApplication de Workflow de SharePoint 2013, y la configuracion del mismo es bastante diferente. cuando se intenta realizer un WF desde Designer solo se observa SharePoint 2010 disponible.
Cuando se navega en el central administrator -> Application Management -> Manage Service Applications -> Workflow Service Application se obtiene un error como:
SharePoint 2013 workflow requires a compatible workflow service configured with SharePoint such as Workflow Manager. The workflow service is either not installed or not configured. Follow this link to find out how to set up workflow.
Entonces estos son los pasos para instalar workflow sharepoint 2013
1. Tener en cuenta las consideraciones de diseño descritas en este pots: http://technet.microsoft.com/en-us/library/jj658588(v=office.15)
2A. Para realizar la configuración en un servidor aparte es necesario descargar el Workflow Manager Client [http://go.microsoft.com/fwlink/p/?LinkID=268376].
2B. En el caso en el que se va a configurar Workflow Manager en un servidor que ya posee SharePoint Server 2013, nos ahorramos el paso de descargar el Workflow Manager Client [http://go.microsoft.com/fwlink/p/?LinkID=268376] y lo podrán encontrar en, en el caso de instalarlo en los mismos servidores de la granja se debe asegurar que si se desea balancear el servicio debe estar en todos los WFE, si lo que se desea es instalarlo en un Application Server se debe instalar una sola vez, en el caso de ser un server aparte se debe instalar una sola vez.
Aqui el paso a paso de la instalación, como veran nos pide 2 puertos para sitios principales y las bases de datos que se crearán en SQL. Aqui un resumen de los datos importantes a tener en cuenta.
| URL WEB Finales | Bases de Datos en SQL |
| http://devPC:90/TeamSite | WFInstanceManagementDB |
| http://DEVPC:12290 | WFResourceManagementDB |
| http://DEVPC:12291 | SbManagementDB |
| SbGatewayDatabase | |
| SBMessageContainer01 |
Paso 1. Descargarlo. WorkflowManager.exe
Paso 2.
Paso 3. Buscar los binarios
x86: C:\Program Files (x86)\Workflow Manager Tools\1.0
x64: C:\Program Files\Workflow Manager Tools\1.0
3. Finalmente se debe registar el servicio desde powershell por medio de este comando
Register-SPWorkflowService –SPSite “http://devPC:90/TeamSite “ –WorkflowHostUri “https://devPC.mydomain.loc:12290 “ –AllowOAuthHttp
Super importante el https en 12290
4. Los certificados digitales se instalan desde el IIS en caso de requerirse.
Despues de estos cuantos pasos ya aparece disponible el tipo de WF para SharePoint 2013
Aqui ya podemos observer una de las nuevas funcionalidades sobre SharePoint 2013, los cuales son el manejo de los estados del flujo y las transiciones entre estados
Bueno como siempre, un placer




























