viernes, 22 de noviembre de 2013

Clarity functional administration

Clarity direct addresses

v13
Project audit trail
.../niku/nu#action:odf.projectAuditTrailReturn&id= %projectid%
Task audit trail
.../niku/nu#action:odf.taskAuditTrailReturn&id=%taskid%&projectId=%projectid%
Licenses per user(there is not a direct menu entry)
.../niku/nu#action:userbyrights&user_id=%userid%

Report scheduling with cron

Based in  standard cron format.
Five time parameters separated by "spaces"
Different values for a same parameter are separated by "comma"
* = any value



*    *    *    *    *

min (0 - 59)
hour (0 - 23)
day of month (1 - 31)
month (1 - 12)
day of week (0 - 6) (0 to 6 are Sunday to Saturday, or use names)


Theme for testing



Clarity_theme_lime_testing.css


CAPA and versions


Clarity v13.1
CAPA Player - Version 11.1.0 Build 11.1.0.1111
Clarity v13.2
CAPA Player - Version 11.1.0 Build 11.1.0.28260


Prefixes portlets and reports


COP. , from PMO Accelerator (portlets)
CATS. ,  from Best Practises Accelerator (obsolete reports replaced by CSP and portlets by cop)
RPT_PMO_ ,  Obsolete reports from PMO Accelerator (Releases previous to 3.1)
CSP_,  from Clarity Solution Pack (reports and portlets for BO)


Addins/Accelerators:
APM addin , Application Portfolio Management
NPD Accelerator, New Product Development
PMO Accelerator (not tied to any specific industry)
PRINCE2 Accelerator  (tied to PRINCE2 from Office of Government Commerce)
PMBOK Accelerator  (tied to PMI PMBOK)
EVM add-in, Earned Value Manager (ANSI/EIA standard 748-A)
CSP addin CA PPM Solution Pack for Business Objects Reporting

Add-ins Compatibilities with Clarity version
Check Change Impact and Upgrade Guide
Upgrade, Add-ins Compatibilities


viernes, 4 de octubre de 2013

Raspberry Pi - stuff (pins, model specs,...


Raspberry Hardware

Raspberry Pi 1 Model B revision 1.2
Model B - Rev2 aka Rev2 - 512MB RAM


ARM1176JZF-S a 700 MHz (family ARM11)
implements the ARM11 ARM architecture v6. provides support for extensions to ARMv6 

ARM11 single core model B 512MB
3Conector RCA (PAL and NTSC),
HDMI (rev1.3 y 1.4),
gpio pins for B - rev2
61 Interfaz DSI for panel LCD62 63
HDMI Type A



 from a cat /proc/cpuinfo
ARMv6  rev7(v6L)
hardw: BMC2708

GPIO:26 pins

Spanish Lesson:
Raspberry Pi y GPIO
http://www.diverteka.com/?p=1370




http://techcrunch.com/2012/10/21/getting-started-with-the-raspberry-pi-is-not-as-easy-as-pie/

Raspberry Pi 3 Model B

Quad-Core, 1.2 GHz, 1 GB RAM, USB 2.0, Bluetooth 4.0, Wi-Fi

BCM2837R1FBG
The Cortex-A53 supports the full ARMv8-A architecture.
It not only runs 64-bit applications also seamlessly and efficiently runs legacy ARM 32-bit applications.


 Combined 3.5mm audio jack and composite video
Camera interface (CSI)
Display interface (DSI)
Micro SD card slot (now push-pull rather than push-push)
VideoCore IV 3D graphics core

GPIO: 40 pins

Raspberry Pi 4 Model B

64bit Quad-Core,  Cortex A72, 2 GB RAM, 2HDMI
USB 2.0, USB 3.0, Bluetooth 5.0, Wi-Fi
Power: 3V/5V


Software/Images


Most of raspberry images are based in copy files to SD formated in FAT, and during the 1st boot, original partition is dynamically resized  and new partitions are created.


rpix86 is a PC emulator for the Raspberry Pi
http://rpix86.patrickaalto.com/index.html

 chameleon Pi
 http://chameleon.enging.com/?q=download


Tools:Windows Software
Ms. Windows is not the best environment to work with disks, filesystems etc.. but using the following apps we can do most of the tasks without the need of rebooting a Windows computer.

Win32DiskImager.exe (GPL)
Linux Reader (Diskinternals)
EaseUS Partition Master (EaseUS)

There are better software for Windows\DOS and Linux but at least the previous are gratis



Installation


//Raspbian//
dd
gparted
wifi config


multimedia player GUI for omx player
>>>from https://github.com/KenT2/tboplayer
tboplayer
A GUI interface using jbaiter's pyomxplayer wrapper to control omxplayer

Required pexpect:
wget http://pexpect.sourceforge.net/pexpect-2.3.tar.gz
     tar xzf pexpect-2.3.tar.gz
     cd pexpect-2.3
     sudo python ./setup.py install

Installing tboplayer:
From a terminal window open in your home directory type:
     wget https://github.com/KenT2/tboplayer/tarball/master -O - | tar xz

There should now be a directory 'KenT2-tboplayer-xxxx' in your home directory. Rename the directory to tboplayer

Open the tboplayer directory and from a terminal opened in THIS directory:

    python tboplayer.py

TBOPlayer is developed on Raspbian Wheezy with python 2.7
<<<<

install mp3 player
video
//Raspbmc//

  1. Uncompress downloaded file
  2. Identify SD card device (i.e /dev/mmblkxx) (1)
  3. Format/remove partition from SD card. Disks or Fdisk (2)
  4. Applying image to SD
    •  sudo dd if=/path/sd.img of=/dev/mmcblk0 (3)
    •  /path/ mounter folder where image is placed
  5. Boot Raspberry with SD
    • (Raspbmc will do some actions over SD, Sucha as partition resizing etc)
  6. (optional) From PC, resize/create partitions
    • (i.e with gparted) (4)
    • Create a fat32 partition
    • Copy multimedia to SD

(1) use Disks, dmesg, ...
(2) if there is problem try with a different card reader, usb to SD adaptor,..
(3) Use dd command or restore image from Disks on GUI, wait because it can take sometime and there is not a progress bar
(4) gparted recommended, but other software could done this action

OS
Username: pi. Password: raspberry

login via ssh
raspbmc
 username: root
 password: root
openelec
  username: root
  password: openelec


Some useful links:
technical articles:  http://raspi.tv/




martes, 6 de agosto de 2013

Retro IT Culture

 

Best abandon books and webs where to read about the old times of IT

Basic Rules!!




Tecnología Obsoleta:
http://www.alpoma.net/tecob/



The probably the best IT books ever published including the best illustrations:

http://www.paraquenoseolviden.com/gallery2/v/electronica/

http://www.paraquenoseolviden.com/gallery2/v/equipos_electronicos/

Just DIY:
http://www.paraquenoseolviden.com/gallery2/v/comohacer/






viernes, 26 de julio de 2013

XML - Editor, Tools,...


XML editing software
Java is not compatible with UTF8 with BOM and XOG is based in Java
so use UTF8 (withoutBOM) or cp1252 aka ANSI

--Ms.Notepad XML 2007
(be careful writes UTF8 with BOM)
   Outline view with XML elements. Able to drag and drop elements from one file to other

--XML Spear 3.1. Good free software! it is possible to select the enconding(even UTF8 with BOM)
   Outline with element, no drag and drop
   Able to open big files (>20MB)  
   Plugin for Clarity

--Eclipse Indigo+WTP
   By default not able to manage big xml files
  Outline view with XML elements, Able to drag and drop elements from one file to other (in different Eclipse windows)

 Eclipse XML Editors and Tools
  org.eclipse.wst.xml_ui.feature
  org.eclipse.wst.xsl.feature

--Notepad++
  it is not an specific editor but it has colour syntax and can be used for:
   -compare two files (plugin compare)
   -see tree view (plugin XML Treeview)
   -pretty XML, check syntax,etc... (plugin XML Tools)
   -find text strings and apply different colors to them (Plugin analyse)

--PSPad
  it is not an specific editor but it has colour syntax and can be used to compare two files(Tools, text Differences)


Web services
Create XSD from web:
http://www.xmlforasp.net/CodeBank/System_Xml_Schema/BuildSchema/BuildXMLSchema.aspx
XSD in Russian Doll Style or Separate Complex Types

!note.  resulting XSD is not proper to map Clarity instances, value is missing.

Flame-Ware Solutions XML-2-XSD v2.0
http://www.flame-ware.com/Products/XML-2-XSD/
!note. resulting XSD has xmlns:msdata, not proper to map Clarity

jueves, 11 de julio de 2013

XML- Map data to XML for XOG

XOG-in CSV data to a Clarity custom object

Using Mapforce2013 *
*Mapforce2013Enterprise (rel2sp2) [commercial app]
With installation folder it can be used as a portable app.
Registration is computer dependent (C:\ProgramData\Altova\MapForce2013)


In order to generate a xml to xog-in

  • Add schema file(xsd)
    •   ../xsd/nikuxog_customObjectInstance.xsd
  • Add csv or xslx (xslx better to display column headers)
    •  Config. rows level, "Show separate items for columns"

  • Config at XSD
    •  Attributes content is inside tag ColumnValue
    • Add a duplicate of ColumnValue per each attribute to map
    • map attribute name to "name" element in Schema
    • map content to "text()" element in Schema
  • Map columns and constants to Schema
    •  map Row number to xsd element with iteration (sequence)
    •  map columns to xsd elements






Mapforce mapping
  

  • Menu: Output, Save Output file, (xml file to xog-in)
  • Edit in xml file to correct local paths, i.e.  xsi:noNamespaceSchemaLocation="../../xsd/nikuxog_customObjectInstance.xsd"
Notes
*Clarity date attribute is in format yyyy-mm-ddT00:00:00 and will be xogout including time but format yyyy-mm-dd is supported for xogin

martes, 11 de junio de 2013

Clarity - partition - lookup and mappings

  How to use partitioned values in a static list lookup with attribute mappings

I am writing this short procedure because I think it is quite interesting and I didn't see any document about it. For instance, it can be done with out of the box "Investment Status Indicator"   attribute

Lookup ID:    INVESTMENT_STATUS_INDICATOR
and
Attribute Name: Status Indicator

It is possible to create values associated to partitions from lookup "Values"


However, from object attribute I cannot see the lookupvalues if they are associated to "Mipartition:Partition and descendants"
If we change to "Partition, ancestors and descendants" then we can see them from mappings and map  with colors


with Partition, ancestors and descendants




But now the values are available for non partition views and users. :(
So, We change values to "Mipartition:Partition and descendants"
Now, partitioned values are not available for system views :)
But from partition views, these values are available and can be selected. :)


Note that at the moment from the attribute we can see all the mappings but those two associated to partition values will appear without value associated. It is only a visual effect and in the database they are configured well, in fact if we would reconfig values to "Partition, ancestors and descendants" they automatically will be displayed in mappings list  :)

with Partition and descendants

If you have  an error "HTTP 500 Internal server error"when editing from  Project List whereas same action from a system view works fine. Go to partition views and click Publish (it will restore user view customization).



viernes, 19 de abril de 2013

Clarity XOG - XML - WSDL -SOAP - Content package

XOG compatibility

Usually XOG version are compatible with Clarity version if there is not changes in the database structure. Differences in .xsd files could mean differences between data in Clarity.

Anyway default version association:
Clarity v.12.1 SP1
i.e. XOG 10.50.0.125

Clarity v.13.0.1.0102

Clarity v.13.1.00248
 for example  XOG V12.0.6.5471 could work with a Clarity v.13.0.1, but there is a risk...



Testing XOG from Clarity web
 v12.

……/niku/app?action=xog.client
 v13.
……/niku/nu#action:xog.client




XML Open Gateway (XOG)
web service interface that you can use to:
  *Import data
  *Export data
  *Move configuration data from one system to another
to read data from or write data to CA Clarity using XML and web services
GEL tags that can be used with XML for more advanced custom integration tasks
CA Clarity web services use XML messages that follow the SOAP standard.

WSDL Reference
https://servername.domain.com/niku/wsdl

SOAP Testing - Queries\WSDL

SOAP UI
 SOAP UI, free licence software, after downloading a Clarity  WSDL template, remove or comment all those conditions or filters that you are not using for your request.



SOAP Sonar.
SOAP Sonar
Commercial software and gratis only for a single project/query open. Very easy to work with filter parameters, because  only those parameters introduced in inputboxes will be used for the request.



Working\Saving XML Read Files
ANSI/CP1252, UTF8without BOM
Tags:
Comments:


Common filters:

EQUALS
OR
BEFORE
AFTER
BETWEEN

i.e
x,y

Custom Objects
Reading Object definition
custom_object_instances_read.xml

Reading contents/instances
custom_object_read.xml


Stock objects
Read reference.

Sort results

or when more there is more tahn one element



Arguments:



XOG-out /XOG-in

Between different environments (i.e Project)

  1. XOGout a project
  2. Edit XML to adapt to new enviroment 
    1. Replace Projectid by an id not in use, if attribute is autonumeric, use the next id
  3. Remove all unique tags in a Clarity instance (i.e internalTaskID)
    1. from notepad: find internalTaskID=".*?"
    2. Select "Regular expression"
    3. checkbox ".matches newline"
    4. Count (verify)
    5. Replace  (with nothing)
  4. (Some unique tags like taskID are unique  but the ambit is just the project  )
  5. Check 
    1. resources, if userid is autonumeric could be different between the environments
  6. XOG-in to new environment
Between different environments (i.e User/resources)
  1. XOGOut resources (rsm_resources)
    1. filter by resourceID supports wildcard %
  2. XOGOut Users/accounts (cmn_users)   
    1. filter by userName doesn't supports wildcards, so use criteria="OR" and values separated by comma (without spaces)      
    2. Password not extracted, default password=Niku2000
  3. Edit XML files
  4. --Users: add properties for delete to XML tags
    1. Note: complete and completed/Iscomplete are synonyms      
    2. i.e. complete="true" for (capscase, don't use Uppercase)
    3. supported by: OBSAssocs, Groups, GlobalRights, InstanceRights, InstanceOBSRights, SkillAssocs
    4. i.e. ReplaceAll "Groups" by "Groups complete="true""
  5. --Resources
    1. complete="true" for (optional)
    2. resetCalendar="true" to
    3. (*)additional fields cannot  be reset from XOG such as Booking Manager,Date of Termination, Allocations,....
  6.     XOGIn     
    1. Reset by hand all those attributes which could not be reset by XOG
  Content packages/Export
  •  Add process (must be Active)

 Import/Install Add-in/Upload Content Package 
  • Install in Migration Mode. This option forces all content items in the package to install and overwrite old existing content. 
  • A package with same version cannot be uploaded twice
  • Add-in packages cannot be deleted

jueves, 11 de abril de 2013

Databases, csv, spreadsheets and other herbs


Data export and import between databases and spreadsheets should be an easy task, but sometimes progress in time doesn't mean advance of products or functionalities, at least it is true fact when we are speaking about Microsoft products.



For instance, a task like specify a separator symbol in Excel; different than comma was so easy in the past, but now it is nightmare.



Dbvisualizer - find drivers
Database extraction

For example SQLTools or DB visualizer

-SQLTools, fast and free tool, can work without installation but requires Oracle client installed.

Config of connections:
.\GNU\SQLTools\connections.xml
or
.\SQLTools\SharedData\connections.xml

-DB visualizer supports many database drivers (even can be detected from the computer)
Support extraction to CSV files, and select a separator symbol.

Remove Newline Character. Always checked, to avoid return carriage ia a field being used as delimiter

C:\Users\myuser\.dbvis\config70\dbvis.xml

Notes: There is an issue with  DBvisualizer/Gnumeric, default windows enconding "cp1252" from DBvis cannot be recognized by Gnumeric.
Oracle SQL Developer - Export


Squirrel SQL

C:\Users\myuser\.squirrel-sql\SQLAliases23.xml

SQL Developer (Oracle)
With many options and able to work with many connections and tables at same time.
Can export to csv, tsv, dsv, xls,xlsx (including query in a different tab)

v 4.1.3.20
Features:
CVS integrated with compare features (tab: Historial)
Result of previous queries  (results tabs)

Settings/configuration:
Herramientas,Preferencias,Editor de codigos, Canal de Linea, Mostrar números de líneas
Herramientas,Preferencias,Base de datos,NLS, formato fecha=DD/MM/RR HH24:MI:SSXFF
Herramientas,Preferencias,Base de datos,Avanzada, Tamaño de recuperación.. =50


Connections configuration:

Users\myself\AppData\Roaming\SQL Developer\system4.1.3xx\o.jdeveloper.db.connection.12.2.1.0xx\connections.xml (includes encrypted password, file with passwords will work on other system/version)


Connections, Export/import connections  (requires a password to encrypt passwords in xml file)

Install Password Plugin: Show me password
com.tomecode.showme.password.sqldeveloper.1.0.0


JDK configuration


by default ../../jdk
(if not detected there; a browse folder box will allow us to select the folder)



sqldeveloper4.x.\sqldeveloper\sqldeveloper\bin\sqldeveloper.conf

SetJavaHome ../../jdk



Spreadsheets

Gnumeric:
is able to import csv files with a different than comma symbol,
is able to export a spreadsheet with an specific separator

There are problems importing a  csv file DBvis enconded with "cp1252"
The following combinatiosn works

DBvisualizer / Gnumeric
UTF8        /    ISO 8859-2
CP1252    /    Windows 1250

Import
Go to "Data", "Import Text File", "Text import configuration" or "Data", "Text to Columns"














Export
Save As, File type: Text (configurable)
Gnumeric Export











Ms. Excel 2003
Can import csv, and even specify delimiters but it is useless for exportation to csv as it always delimit columns using semicolon.
Theorically from Computer, regional settings, delimiter can be configured but it doesn´t work.

Ms. Excel (>2007)

Last versions removed the option Import in Menu, so now it is not very intuitive, but it can be done opening a text file with a .txt extension (don't use csv, because automatically comma will be used as delimiter)  and a wizards will be launched.
Theoretically from Computer, regional settings, delimiter can be configured but it doesn't work with Windows 7.  Probably excel is one of the best Microsoft apps but there is a complete lack of interoperability. Better to use Libreoffice


Excel import










Formating contents in Excel:

Cleaning acents:
Limited by maximun of nested functions:
=SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(B1,"á","a"),"é","e"),"í","i"),"ó","o"),"ú","u"),"ã","a")

Convert to Proper name and clean acents
=SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(PROPER(A9),"á","a"),"é","e"),"í","i"),"ó","o"),"ú","u")


Look for a string in an array a extract a column from same row
=VLOOKUP(b2,!equivalencias$1:$20,2,FALSE)
=VLOOKUP(stringtofind,in_array!$first_row:$last_row,col_to extract,FALSE)
False=match exact string

Find a string in the last characters
=IF(RIGHT(E2,10)="@domain.es","Spanish",IF(RIGHT(E2,13)="@domain.co.uk","British","none"))

Detect white spaces at beginning or end of a string
i.e if space found write the string without spaces.
=IF(OR(LEFT(A2,1)=" ",RIGHT(A2,1)=" "),TRIM(A2),"Word  is OK")


Libreoffice/OpenOffice

Import, just open a csv file and wizard automatically will open.

Export, Save as: CSV with checkbox "Edit filter settings" let us to change delimiter character or add quotation marks to fields

miércoles, 23 de enero de 2013

Clarity Development III (Queries, NSQL)


--- Queries  in Clarity---


NSQL
SELECT field
FROM table *

-How to find the names to use from Clarity.

Table=Table name. Check in Object, Attributes, "Database Table" column
* i.e for custom objects: odf_ca_cop_xxxxxx

Field=Attribute name.
For custom attributes, check in Object, Attributes, "Database Column" column
For default attributes, click on "Attribute" column, and use  "Attribute ID" (in Object Attribute window)
For virtual attributes, check in Object, Attributes, "Database Column" column

-NSQL Query in a Lookup-Query:
Lookup-query supports works with a quite standar SQL syntaxis

i.e
SELECT   @SELECT:my.code:code@,       
         @SELECT:P.PROJECT_CODE:PROJECT_CODE@,       
FROM   odf_ca_myobject my, PAC_MNT_PROJECTS P
WHERE @FILTER@


-NSQL query in QUERY 

Requires the comple NQL syntaxis and at least one dimension definition (SELECT:DIM:)

i.e.
SELECT   @SELECT:DIM:USER_DEF:IMPLIED:Mytest:my.code:code@,       
         @SELECT:DIM_PROP:USER_DEF:IMPLIED:Mytest:my.created_by:created_by@
FROM   odf_ca_myobject my
WHERE  @FILTER@

-Table Prefixes


PrefixTable Topic
BIZ,Opportunities
CAL,Events
CAP,Capacity Planning
CLB,Collaboration
CMN,Common tables that span functionality
CMN_RPT,Reporting
CMN_SEC,Security
MR,Methodology
NBI,Datamart
NTD,Discussions
OBS,Organizational Breakdown Structure
PAC,Project Accounting
PPA,Project Billing
PR and PRJ,Projects
RSM,Resource management
SRM,Main objects table that crosses functionality modules
TAX,Tax
XDM,eXtensible Data Model (XDM) for user-defined fields and forms

(added tables)
COP, from PMO Accelerator (not tied to any specific industry)
CATS,  from Best Practises Accelerator (old) (BPA)
ODF,
ODMD, CA Clarity PPM Essentials
PR2, Accelerator PRINCE2 (tied to PRINCE2 from Office of Government Commerce)
PBK, Accelerator PMBOK guide (tied to PMI PMBOK)
CSK, Accelerator Program Management Office (PMO)

TIPS for Naming in Clarity (objects, attributes,...)
qry query
q_ query
lkp lookup
l_ lookup
prt portlet
rpt report
prj project
proc process
res resource
tab tab
obj object
o_ object
pfl portafolio

martes, 15 de enero de 2013

Clarity development II (power filter, calculated attributes, Processes..)

Calculated attributes & Power Filters  & Process conditions

Calculated attributes

result type: string
   
Concat(string1,string2,...)   

Concat(attribute)

If a lookup attribute (ie. project.goal_code) are not listed in the pulldown try to write id  in formula ;)



DateDiff(start,finish,"Day")

Be careful with syntax because some functions like DateDiff,  internally the result can be negative but the attribute will displays with no minus symbol.!!
!!(If negative it will be displayed in red color and between bracket () symbols)


Boolean output Min(Max(DateDiff(Now(), prfinish,"Day"),0),1)


Calculated attribute+mappi>ng colors 
DateDiff(Now(), prfinish,"Day")
-1 to -100 (red)
0 to 100 (green)
In views, Fields, configure field; Display Elements=Image  



Power Filters
-Power filters are not SQL!
-The Power Filter is currently designed to search for values only. If you leave the field empty (NULL value) that field is not included in the filtering. There is no current functionality that allows the configuration of the power filter to search for NULL or NOT NULL values.

"wildcard" character in Oracle is a percentage "%", but Clarity handles that;
i.e. I enter a "*" in a Clarity LIKE condition and this is converted by Clarity to a "%" when the SQL hits the database.

note: on v7.5.3 on Oracle, both % and * worked as wildcards, since v8 only * has worked

Examples:
project.schedule_finish >= dateMacro("today")+50
like( project.name, "Mi_" ) && notLike( project.name, "PR-" )


Syntax: dateMacro(“period name”)
previousDay
currentDay
nextDay
today
previousWeek
currentWeek
nextWeek
previousMonth
currentMonth
nextMonth
previousQuarter
currentQuarter
nextQuarter
previousYear
currentYear
nextYear


Process Conditions 

Start conditions. to avoid to enter in the process. Include here the conditions required by steps.
To detect a change in on attribute: I.e of formula created by manual writing or generated from forms.
( project.status__oldValue != lookup("INVESTMENT_OBJ_STATUS", 1) && project.status == lookup("INVESTMENT_OBJ_STATUS", 1) ) || ( project.status__oldValue == lookup("INVESTMENT_OBJ_STATUS", 1) && project.status != lookup("INVESTMENT_OBJ_STATUS", 1) )
Same expression (Clarity Evaluated)
( ( ( Project Status [Previous Value] != 'Approved' ) and ( Project Status = 'Approved' ) ) or ( ( Project Status [Previous Value] = 'Approved' ) and ( Project Status != 'Approved' ) ))
Process Notification
Process have default message for notifications, and these messsages can be customized per each process.

Some generic tags:

[processName]
[stepName]
[stepActionName]
[objectName]: [objectInstanceName]

when using "project" object
$[Projects.unique_code]
$[Projects.manager_id]
@[:projmgr.projectDefaultTab!~:~:Click Here]