<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://greggsmith.net/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=NeronLeVelu</id>
		<title>SDU - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="http://greggsmith.net/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=NeronLeVelu"/>
		<link rel="alternate" type="text/html" href="http://greggsmith.net/wiki/index.php?title=Special:Contributions/NeronLeVelu"/>
		<updated>2026-04-17T13:00:21Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.26.1</generator>

	<entry>
		<id>http://greggsmith.net/wiki/index.php?title=Send_WaitCall_attrGet_groups_by_persid&amp;diff=4094</id>
		<title>Send WaitCall attrGet groups by persid</title>
		<link rel="alternate" type="text/html" href="http://greggsmith.net/wiki/index.php?title=Send_WaitCall_attrGet_groups_by_persid&amp;diff=4094"/>
				<updated>2010-10-13T13:58:55Z</updated>
		
		<summary type="html">&lt;p&gt;NeronLeVelu: /* Examples */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
[[Category:Customizations]]&lt;br /&gt;
[[Category:r11]]&lt;br /&gt;
[[Category:r12]]&lt;br /&gt;
[[Category:Spell Code]]&lt;br /&gt;
{{Global Header}}&lt;br /&gt;
{{Global Announcement}}&lt;br /&gt;
== Overview ==&lt;br /&gt;
This method gets a list of groups for specified user.&lt;br /&gt;
&lt;br /&gt;
This action can be called in [[Spel_Reference_Guide|spell code]] in method [[send_wait]] (or [[send]]) using [[Send_WaitCall_Attr|call_attr]] action.&lt;br /&gt;
&lt;br /&gt;
== Usage ==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
void send_wait (int timeout, object top_object, &amp;quot;call_attr&amp;quot;, &amp;quot;cnt&amp;quot;, &amp;quot;get_groups_by_persid&amp;quot;, contact_persid)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* timeout - how long (in seconds) should the method wait for finishing the method (0 means infinite [no timeout] and is generally the value used)&lt;br /&gt;
* top_object - root object for the method (on which the method is called)&lt;br /&gt;
* contact_persid - persistent ID of an user for which you are looking for attached groups&lt;br /&gt;
&lt;br /&gt;
== Results ==&lt;br /&gt;
success or failure is tested with msg_error() (boolean function)&lt;br /&gt;
&lt;br /&gt;
On success the resulted list is filled into a global array '''msg''' as follows:&lt;br /&gt;
* msg[0] - the number of assigned groups&lt;br /&gt;
* msg[1] - a list of group's UUIDs&lt;br /&gt;
&lt;br /&gt;
On failure (don't forget to test failure in your code, your are in production with dummy users)&lt;br /&gt;
* msg[0] - failure reason&lt;br /&gt;
&lt;br /&gt;
== Examples ==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
int i;&lt;br /&gt;
send_wait(0, top_object(), &amp;quot;call_attr&amp;quot;, &amp;quot;cnt&amp;quot;, &amp;quot;get_groups_by_persid&amp;quot;, &amp;quot;cnt:776B094702EABB4B87F04A139E72D44B&amp;quot;);&lt;br /&gt;
if( msg_error()) {&lt;br /&gt;
logf (ERROR, &amp;quot;failure in send_wait ..... .Reason: %s&amp;quot;,msg[0]);&lt;br /&gt;
}&lt;br /&gt;
else{&lt;br /&gt;
for (i=0;i&amp;lt;msg_length();i++) {&lt;br /&gt;
logf (SIGNIFICANT, &amp;quot;Msg index #%s: %s&amp;quot;, i,msg[i]);&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Comment ==&lt;br /&gt;
'''This code does not work since SD R12.5. See this post: http://www.servicedeskusers.com/forum/index.php?showtopic=6047'''&lt;/div&gt;</summary>
		<author><name>NeronLeVelu</name></author>	</entry>

	<entry>
		<id>http://greggsmith.net/wiki/index.php?title=Send_WaitCall_attrGet_groups_by_persid&amp;diff=4093</id>
		<title>Send WaitCall attrGet groups by persid</title>
		<link rel="alternate" type="text/html" href="http://greggsmith.net/wiki/index.php?title=Send_WaitCall_attrGet_groups_by_persid&amp;diff=4093"/>
				<updated>2010-10-13T13:56:27Z</updated>
		
		<summary type="html">&lt;p&gt;NeronLeVelu: /* Results */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
[[Category:Customizations]]&lt;br /&gt;
[[Category:r11]]&lt;br /&gt;
[[Category:r12]]&lt;br /&gt;
[[Category:Spell Code]]&lt;br /&gt;
{{Global Header}}&lt;br /&gt;
{{Global Announcement}}&lt;br /&gt;
== Overview ==&lt;br /&gt;
This method gets a list of groups for specified user.&lt;br /&gt;
&lt;br /&gt;
This action can be called in [[Spel_Reference_Guide|spell code]] in method [[send_wait]] (or [[send]]) using [[Send_WaitCall_Attr|call_attr]] action.&lt;br /&gt;
&lt;br /&gt;
== Usage ==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
void send_wait (int timeout, object top_object, &amp;quot;call_attr&amp;quot;, &amp;quot;cnt&amp;quot;, &amp;quot;get_groups_by_persid&amp;quot;, contact_persid)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* timeout - how long (in seconds) should the method wait for finishing the method (0 means infinite [no timeout] and is generally the value used)&lt;br /&gt;
* top_object - root object for the method (on which the method is called)&lt;br /&gt;
* contact_persid - persistent ID of an user for which you are looking for attached groups&lt;br /&gt;
&lt;br /&gt;
== Results ==&lt;br /&gt;
success or failure is tested with msg_error() (boolean function)&lt;br /&gt;
&lt;br /&gt;
On success the resulted list is filled into a global array '''msg''' as follows:&lt;br /&gt;
* msg[0] - the number of assigned groups&lt;br /&gt;
* msg[1] - a list of group's UUIDs&lt;br /&gt;
&lt;br /&gt;
On failure (don't forget to test failure in your code, your are in production with dummy users)&lt;br /&gt;
* msg[0] - failure reason&lt;br /&gt;
&lt;br /&gt;
== Examples ==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
int i;&lt;br /&gt;
send_wait(0, top_object(), &amp;quot;call_attr&amp;quot;, &amp;quot;cnt&amp;quot;, &amp;quot;get_groups_by_persid&amp;quot;, &amp;quot;cnt:776B094702EABB4B87F04A139E72D44B&amp;quot;);&lt;br /&gt;
for (i=0;i&amp;lt;msg_length();i++) {&lt;br /&gt;
logf (SIGNIFICANT, &amp;quot;Msg index #%s: %s&amp;quot;, i,msg[i]);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Comment ==&lt;br /&gt;
'''This code does not work since SD R12.5. See this post: http://www.servicedeskusers.com/forum/index.php?showtopic=6047'''&lt;/div&gt;</summary>
		<author><name>NeronLeVelu</name></author>	</entry>

	<entry>
		<id>http://greggsmith.net/wiki/index.php?title=Send_WaitCall_attrGet_groups_by_persid&amp;diff=4092</id>
		<title>Send WaitCall attrGet groups by persid</title>
		<link rel="alternate" type="text/html" href="http://greggsmith.net/wiki/index.php?title=Send_WaitCall_attrGet_groups_by_persid&amp;diff=4092"/>
				<updated>2010-10-13T13:53:30Z</updated>
		
		<summary type="html">&lt;p&gt;NeronLeVelu: /* Usage */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
[[Category:Customizations]]&lt;br /&gt;
[[Category:r11]]&lt;br /&gt;
[[Category:r12]]&lt;br /&gt;
[[Category:Spell Code]]&lt;br /&gt;
{{Global Header}}&lt;br /&gt;
{{Global Announcement}}&lt;br /&gt;
== Overview ==&lt;br /&gt;
This method gets a list of groups for specified user.&lt;br /&gt;
&lt;br /&gt;
This action can be called in [[Spel_Reference_Guide|spell code]] in method [[send_wait]] (or [[send]]) using [[Send_WaitCall_Attr|call_attr]] action.&lt;br /&gt;
&lt;br /&gt;
== Usage ==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
void send_wait (int timeout, object top_object, &amp;quot;call_attr&amp;quot;, &amp;quot;cnt&amp;quot;, &amp;quot;get_groups_by_persid&amp;quot;, contact_persid)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* timeout - how long (in seconds) should the method wait for finishing the method (0 means infinite [no timeout] and is generally the value used)&lt;br /&gt;
* top_object - root object for the method (on which the method is called)&lt;br /&gt;
* contact_persid - persistent ID of an user for which you are looking for attached groups&lt;br /&gt;
&lt;br /&gt;
== Results ==&lt;br /&gt;
On success the resulted list is filled into a global array '''msg''' as follows:&lt;br /&gt;
* msg[0] - the number of assigned groups&lt;br /&gt;
* msg[1] - a list of group's UUIDs&lt;br /&gt;
&lt;br /&gt;
== Examples ==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
int i;&lt;br /&gt;
send_wait(0, top_object(), &amp;quot;call_attr&amp;quot;, &amp;quot;cnt&amp;quot;, &amp;quot;get_groups_by_persid&amp;quot;, &amp;quot;cnt:776B094702EABB4B87F04A139E72D44B&amp;quot;);&lt;br /&gt;
for (i=0;i&amp;lt;msg_length();i++) {&lt;br /&gt;
logf (SIGNIFICANT, &amp;quot;Msg index #%s: %s&amp;quot;, i,msg[i]);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Comment ==&lt;br /&gt;
'''This code does not work since SD R12.5. See this post: http://www.servicedeskusers.com/forum/index.php?showtopic=6047'''&lt;/div&gt;</summary>
		<author><name>NeronLeVelu</name></author>	</entry>

	<entry>
		<id>http://greggsmith.net/wiki/index.php?title=Send_wait&amp;diff=3958</id>
		<title>Send wait</title>
		<link rel="alternate" type="text/html" href="http://greggsmith.net/wiki/index.php?title=Send_wait&amp;diff=3958"/>
				<updated>2009-08-20T14:39:10Z</updated>
		
		<summary type="html">&lt;p&gt;NeronLeVelu: /* Usage */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
[[Category:Customizations]]&lt;br /&gt;
[[Category:r6]]&lt;br /&gt;
[[Category:r11]]&lt;br /&gt;
[[Category:Spell Code]]&lt;br /&gt;
{{Global Header}}&lt;br /&gt;
{{Global Announcement}}&lt;br /&gt;
== Overview ==&lt;br /&gt;
This is the most tricky function and it is the main reason of difficulty of reading [[Spel_Reference_Guide|SPELL code]]. It is used for calling methods on objects. On every SD object (ie. cr, chg, alg...) are defined methods and using ''send_wait'' function you can call them. Definitions of some of them are in *.maj files in [[$NX_ROOT]]/bopcfg/majic folder.&lt;br /&gt;
&lt;br /&gt;
== Usage ==&lt;br /&gt;
void send_wait (int timeout, object top_object, string method, [ var parameters… ])&lt;br /&gt;
&lt;br /&gt;
* timeout - how long (in seconds) should the method wait for finishing the method (0 means infinite). A timeout mean time after which the function is considering as failure, returning to caller with error and no result. Nearly every time the 0 is used.&lt;br /&gt;
* top_object - root object for the method (on which the method is called)&lt;br /&gt;
* method - name of the called method&lt;br /&gt;
* parameters - variable number of parameters based on the called method&lt;br /&gt;
&lt;br /&gt;
== Results ==&lt;br /&gt;
Function doesn't return value, but methods usually fill global '''msg''' array with return values. What values are on what positions depends on the called method.&lt;br /&gt;
&lt;br /&gt;
== Available methods ==&lt;br /&gt;
{| width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! colspan=3|'''&amp;lt;font size=&amp;quot;3&amp;quot;&amp;gt;Base object common&amp;lt;/font&amp;gt;'''&lt;br /&gt;
|-&lt;br /&gt;
|colspan=3|These methods are defined on all objects (maybe)&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;34%&amp;quot; align=&amp;quot;left&amp;quot; style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
*[[Send_WaitCall_Attr|call_attr]]&lt;br /&gt;
| width=&amp;quot;33%&amp;quot; align=&amp;quot;left&amp;quot; style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
*[[get_attr_vals]]&lt;br /&gt;
| width=&amp;quot;33%&amp;quot; align=&amp;quot;left&amp;quot; style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
*[[Send_WaitGet_Co_group|get_co_group]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! colspan=3|'''&amp;lt;font size=&amp;quot;3&amp;quot;&amp;gt;Base object CR&amp;lt;/font&amp;gt;'''&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;34%&amp;quot; align=&amp;quot;left&amp;quot; style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
*[[Send_WaitAuto_assign|auto_assign]]&lt;br /&gt;
*[[Send_WaitChange_status|change_status]]&lt;br /&gt;
*[[Send_WaitClose_call_request|close_call_request]]&lt;br /&gt;
*[[Send_WaitCopy_cr|copy_cr]]&lt;br /&gt;
*[[Send_WaitCopy_cr_site|copy_cr_site]]&lt;br /&gt;
*[[Send_WaitCob_mark_delete|dob_mark_delete]]&lt;br /&gt;
*[[Send_WaitCo_expand|do_expand]]&lt;br /&gt;
| width=&amp;quot;33%&amp;quot; align=&amp;quot;left&amp;quot; style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
*[[Send_WaitEscalate|escalate]]&lt;br /&gt;
*[[Send_WaitIinit_activity|init_activity]]&lt;br /&gt;
*[[Send_WaitInit_call_request|init_call_request]]&lt;br /&gt;
*[[Send_WaitLog_callback|log_callback]]&lt;br /&gt;
*[[Send_WaitLog_comment|log_comment]]&lt;br /&gt;
*[[Send_WaitLog_comment_no_checkout|log_comment_no_checkout]]&lt;br /&gt;
*[[Send_WaitLog_event|log_event]]&lt;br /&gt;
| width=&amp;quot;33%&amp;quot; align=&amp;quot;left&amp;quot; style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
*[[Send_WaitLog_research|log_research]]&lt;br /&gt;
*[[Send_WaitMake_from_template|make_from_template]]&lt;br /&gt;
*[[Send_WaitMake_from_template_site|make_from_template_site]]&lt;br /&gt;
*[[Send_WaitManual_notify|manual_notify]]&lt;br /&gt;
*[[Send_WaitReopen_call_request|reopen_call_request]]&lt;br /&gt;
*[[Send_WaitSend_api_msg|send_api_msg]]&lt;br /&gt;
*[[Send_WaitTransfer|transfer]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! colspan=3|'''&amp;lt;font size=&amp;quot;3&amp;quot;&amp;gt;Base object CHG&amp;lt;/font&amp;gt;'''&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;34%&amp;quot; align=&amp;quot;left&amp;quot; style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
*[[Send_WaitAccumulate|accumulate]]&lt;br /&gt;
*[[Send_WaitAccumulate_change|accumulate_change]]&lt;br /&gt;
*[[Send_WaitAccumulate_workflows|accumulate_workflows]]&lt;br /&gt;
*[[Send_WaitAdd_assets|add_assets]]&lt;br /&gt;
*[[Send_WaitAdd_auditlog|add_auditlog]]&lt;br /&gt;
*[[Send_WaitAuto_assign|auto_assign]]&lt;br /&gt;
*[[Send_WaitChange_status|change_status]]&lt;br /&gt;
*[[Send_WaitClose_change_descedents|close_change_descendents]]&lt;br /&gt;
*[[Send_WaitClose_change_request|close_change_request]]&lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;33%&amp;quot; align=&amp;quot;left&amp;quot; style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
*[[Send_WaitCopy_chg|copy_chg]]&lt;br /&gt;
*[[Send_WaitCopy_chg_site|copy_chg_site]]&lt;br /&gt;
*[[Send_WaitDo_expand|do_expand]]&lt;br /&gt;
*[[Send_WaitDob_mark_delete|dob_mark_delete]]&lt;br /&gt;
*[[Send_WaitEscalate|escalate]]&lt;br /&gt;
*[[Send_WaitFast_track|fast_track]]&lt;br /&gt;
*[[Send_WaitImpact_analysis|impact_analysis]]&lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;33%&amp;quot; align=&amp;quot;left&amp;quot; style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
*[[Send_WaitInit_activity|init_activity]]&lt;br /&gt;
*[[Send_WaitInit_change_request|init_change_request]]&lt;br /&gt;
*[[Send_WaitLog_event|log_event]]&lt;br /&gt;
*[[Send_WaitMake_from_template|make_from_template ]]&lt;br /&gt;
*[[Send_WaitMake_from_template_site|make_from_template_site ]]&lt;br /&gt;
*[[Send_WaitManual_notify|manual_notify]]&lt;br /&gt;
*[[Send_WaitOk_close_descedents|ok_close_descendents]]&lt;br /&gt;
*[[Send_WaitRemove_all_assets|remove_all_assets]]&lt;br /&gt;
*[[Send_WaitTransfer|transfer]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Examples ==&lt;/div&gt;</summary>
		<author><name>NeronLeVelu</name></author>	</entry>

	<entry>
		<id>http://greggsmith.net/wiki/index.php?title=Web_Screen_Painter&amp;diff=3919</id>
		<title>Web Screen Painter</title>
		<link rel="alternate" type="text/html" href="http://greggsmith.net/wiki/index.php?title=Web_Screen_Painter&amp;diff=3919"/>
				<updated>2009-06-12T15:50:58Z</updated>
		
		<summary type="html">&lt;p&gt;NeronLeVelu: /* On Save */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
[[Category:Customizations]]&lt;br /&gt;
[[Category:r11]]&lt;br /&gt;
{{Global Header}}&lt;br /&gt;
{{Global Announcement}}&lt;br /&gt;
&lt;br /&gt;
== Overview ==&lt;br /&gt;
This articles provides an under-the-hood explanation of the Web Screen Painter (WSP) and the Schema Designer introduced in r11.x.&lt;br /&gt;
&lt;br /&gt;
== Web Screen Painter ==&lt;br /&gt;
WSP Facts: &lt;br /&gt;
*Located on the Primary Server.&lt;br /&gt;
*Uses Tomcat exclusively.&lt;br /&gt;
*All published changes are automatically exported to all Secondary Servers. &lt;br /&gt;
&lt;br /&gt;
=== On Save === &lt;br /&gt;
When initiating a save (File &amp;gt; Save) the following occurs:&lt;br /&gt;
* The [[$NX_ROOT]]\site\mods\wsp\project directory is created if it does not already exist.&lt;br /&gt;
&lt;br /&gt;
* A new or modified file is stored within the [[$NX_ROOT]]\site\mods\wsp\project\... directory which has a structure that mimics the location of the default version of the file. &amp;lt;br&amp;gt;''For example: If editing the bin_form_np.htmpl used by the Analyst Interface which originally resides in [[$NX_ROOT]]\bopcfg\www\htmpl\web\analyst, a saved copy will be placed in [[$NX_ROOT]]\site\mods\wsp\project\www\htmpl\web\analyst.''&lt;br /&gt;
&lt;br /&gt;
* Do not forget that also 2 tables are updated by web screen painter to &amp;quot;remind&amp;quot; the modification. It is possible that some change (made manually for example) are not know by the WSP with all the side effect that can result in case of modification.&lt;br /&gt;
&lt;br /&gt;
=== On Publish ===&lt;br /&gt;
When initiating a publish (File &amp;gt; Publish) the following occurs:&lt;br /&gt;
* Any saved versions of the files being published that reside within [[$NX_ROOT]]\site\mods\wsp\project\... are removed.&lt;br /&gt;
&lt;br /&gt;
* A new or modified file will be stored on the Primary and all Secondary Servers within the [[$NX_ROOT]]\site\mods\... directory which has a structure that mimics the location of the default version of the file. &amp;lt;br&amp;gt;''For example: If editing the bin_form_np.htmpl used by the Analyst Interface which originally resides in [[$NX_ROOT]]\bopcfg\www\htmpl\web\analyst, a saved copy will be placed in [[$NX_ROOT]]\site\mods\www\htmpl\web\analyst. CA ensures that the default files are never altered by your customizations by saving custom files in a dedicated location.''&lt;br /&gt;
&lt;br /&gt;
* A deleted file will be removed from the Primary and all Secondary Servers. &lt;br /&gt;
&lt;br /&gt;
* The [[pdm_webcache]] command is automatically initiate which clears the cache on the Primary and all Secondary Servers. &lt;br /&gt;
&lt;br /&gt;
=== Backing out ===&lt;br /&gt;
Both published and unpublished forms can be deleted via the WSP. However, you can also navigate through the directory structure and delete the file. &lt;br /&gt;
*For saved but unpublished, navigate through the [[$NX_ROOT]]\site\mods\wsp\project\... directory and remove the target file. &lt;br /&gt;
&lt;br /&gt;
*For published files, navigate through the [[$NX_ROOT]]\site\mods\... directory on the Primary and all Secondary Servers, delete your file from all servers, and run the [[pdm_webcache]] from the Primary Server.&lt;br /&gt;
&lt;br /&gt;
== See Also ==&lt;br /&gt;
[[Schema Designer]]&lt;/div&gt;</summary>
		<author><name>NeronLeVelu</name></author>	</entry>

	<entry>
		<id>http://greggsmith.net/wiki/index.php?title=Pdm_extract&amp;diff=931</id>
		<title>Pdm extract</title>
		<link rel="alternate" type="text/html" href="http://greggsmith.net/wiki/index.php?title=Pdm_extract&amp;diff=931"/>
				<updated>2008-01-25T14:49:36Z</updated>
		
		<summary type="html">&lt;p&gt;NeronLeVelu: /* Examples */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Commands|Commands man]]&lt;br /&gt;
Use this command to dump data from the database to the screen or file (typically txt, dat, or csv).&lt;br /&gt;
&lt;br /&gt;
== Usage ==&lt;br /&gt;
pdm_extract [-h] [-f] [-c] [-e] [-r] [-v] [-s] [-u] [-d] [-x] [-X] [ALL | database table names]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
! Command&lt;br /&gt;
! Description&lt;br /&gt;
! Remarks&lt;br /&gt;
|-&lt;br /&gt;
| -h&lt;br /&gt;
| Help&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| -f&lt;br /&gt;
| format string&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| -c&lt;br /&gt;
| csv output&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| -e&lt;br /&gt;
| csv output with double double quotes&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| -r&lt;br /&gt;
| informal report output&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| -v&lt;br /&gt;
| verbose&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| -s&lt;br /&gt;
| saved script&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| -u&lt;br /&gt;
| no headers&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| -d&lt;br /&gt;
| use dataent.fmt&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| -x&lt;br /&gt;
| locale sensitive numeric formats&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| -X&lt;br /&gt;
| extract all tables except table list &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Examples ==&lt;br /&gt;
* Extract the whole big stuff (USD only not full mdb)&lt;br /&gt;
  pdm_extract All &amp;gt; All.txt&lt;br /&gt;
&lt;br /&gt;
* Extract a filtered list&lt;br /&gt;
  pdm_extract -f &amp;quot;SELECT * FROM Call_Req&amp;quot; WHERE type = 'I'&amp;quot; &amp;gt; Call_Req.dat&lt;br /&gt;
&lt;br /&gt;
* Extract a full table&lt;br /&gt;
  pdm_extract Priority &amp;gt; pri.txt&lt;br /&gt;
&lt;br /&gt;
* Extract several table at once&lt;br /&gt;
  pdm_extract Call_Request Activity_Log &amp;gt; call.dat&lt;/div&gt;</summary>
		<author><name>NeronLeVelu</name></author>	</entry>

	<entry>
		<id>http://greggsmith.net/wiki/index.php?title=Pdm_load&amp;diff=930</id>
		<title>Pdm load</title>
		<link rel="alternate" type="text/html" href="http://greggsmith.net/wiki/index.php?title=Pdm_load&amp;diff=930"/>
				<updated>2008-01-25T14:45:10Z</updated>
		
		<summary type="html">&lt;p&gt;NeronLeVelu: /* Examples */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Commands]]&lt;br /&gt;
Use pdm_load to load information directly into the database and bypass the GUIs. &lt;br /&gt;
&lt;br /&gt;
== Usage ==&lt;br /&gt;
pdm_load -f [filename] [-a] [-c] [-e] [-h] [-i] [-m] [-v] [-r] [-u] [-x]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
! Command&lt;br /&gt;
! Description&lt;br /&gt;
! Remarks&lt;br /&gt;
|-&lt;br /&gt;
| -a&lt;br /&gt;
| update all matching data&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| -c&lt;br /&gt;
| check only, no change to data&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| -e&lt;br /&gt;
| treat escapes literally&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| -h&lt;br /&gt;
| help&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| -i&lt;br /&gt;
| insert only&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| -m&lt;br /&gt;
| notify domsrvr of mass update&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| -v&lt;br /&gt;
| verbose&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| -r&lt;br /&gt;
| remove&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| -u&lt;br /&gt;
| update only&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| -x&lt;br /&gt;
| use locale sensitive numeric input formats&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Examples ==&lt;br /&gt;
pdm_load -f extract.txt -v&lt;br /&gt;
&lt;br /&gt;
pdm_load -f cnt_data.csv -i -v&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Removing some info (not shared by other aplication) from a file. Use the -r&lt;br /&gt;
  pdm_load -f InfoToRemove.dat -r -v 2&amp;gt;load.err&lt;/div&gt;</summary>
		<author><name>NeronLeVelu</name></author>	</entry>

	</feed>