NateS
(Nate Schoonover)
June 15, 2023, 12:16pm
21
josecgomez:
What’s the goal?
When we build up a part master we want to include the various drawings and specs for each step to avoid having to produce them physically. We might have a specific drawing for 5 of our 10 operations, along with a few sheets of overall blueprints. Along with material certifications. They want to be able to easily print all the attachments for a job if needed. I think the need will be high at first while we transition to a more paperless system. As it is now, you have to click on each attachment (first find the attachment if there are many assemblies and operations), then click print for each attachment.
The overall goal is to have an easy way to manage attachments in Epicor. And as I said in the intro, for now this is without ECM. We want to be able to quickly see a list of all the attachments for a part. Have those attachments get pulled into new jobs created for that part, quickly see a list of all the attachments for a job, assembly, or operation. Quickly print all the attachments for a job, assembly operation or part master. Quickly open all the attachments for a job, assembly, operation, or part master.
I am surprised it is so hard to print a file programmatically from Epicor.
klincecum
(Kevin Lincecum)
June 15, 2023, 1:32pm
22
This was me a while back, I’m still there, but at least there have been improvements
and workarounds.
Thank goodness for the people on this forum.
utaylor
(Utah Taylor)
June 15, 2023, 1:48pm
23
You don’t give yourself enough credit. You are rocking in the free world man.
klincecum
(Kevin Lincecum)
June 15, 2023, 1:53pm
24
Where do you think I would be without you guys?
Here, is where:
All you people talking to me about imposter syndrome, I promise you, it goes both ways.
NateS
(Nate Schoonover)
June 15, 2023, 3:58pm
25
When I run this code, I can see that the user is “EPICORDT\12345”. Obviously, this isn’t a user at the domain level. Can I add folder level permissions in windows to allow this user account to use File.Exists?
var xRow = (from ttResults_Row in queryResultDataset.Results where ttResults_Row.Calculated_Flag == false select ttResults_Row).FirstOrDefault();
var windowsIdentity = WindowsIdentity.GetCurrent();
if (windowsIdentity != null)
{
myMessage += "User: " + windowsIdentity.Name + Environment.NewLine;
}
myMessage = myMessage + Environment.NewLine + "Looking for: " + xRow.XFileRef_XFileName.ToString();
if (File.Exists(xRow.XFileRef_XFileName.ToString()))
{
//Start a process to print
Process p = new Process();
p.StartInfo = new ProcessStartInfo()
{
CreateNoWindow = false,
Verb = "Print",
FileName = xRow.XFileRef_XFileName.ToString()
};
p.Start();
myMessage = myMessage + Environment.NewLine + "Printing: " + xRow.XFileRef_XFileName.ToString();
}
else
{
myMessage = myMessage + Environment.NewLine + "File not Found: " + xRow.XFileRef_XFileName.ToString();
}
xRow.Calculated_Flag = true;
Note: I also updated the network folder and files to include a read/open permission for the “Everyone” user. Even after saving and restarting, the code above still returns file not found.
Rick_Bird
(Rick Bird)
June 15, 2023, 4:08pm
26
There is a nice ‘Industry Extension’ that Epicor offers that Dot Net IT did back in the day that looks to be still available on EpicWeb called Job Traveller Attachment Printing.
It’s pretty cheap, a few thousand I think, and basically how it works is when you are in the Job Traveler Print screen there are extra toolbar buttons for printing the Traveler and include any attachments.
Not sure if this has been extended to the Kinetic UI yet… but it’s a nice quick and easy extension (if you can get your CAM to be able to find it in their catalog)
Epicor ERP_Extended Solutions_Job Traveller Attachments_Documentation_Job-Traveller-Attachments-Extended-Solutions-ES0104.pdf (247.7 KB)
klincecum
(Kevin Lincecum)
June 15, 2023, 4:17pm
27
I wouldn’t exactly call that cheap if that’s all it does
NateS
(Nate Schoonover)
June 15, 2023, 4:20pm
28
I appreciate that! I am looking for a native approach. it seems to me all the parts are right here in front of me if I can just get them sorted out.
klincecum
(Kevin Lincecum)
June 15, 2023, 4:24pm
29
Does this work in classic and kinetic?
Do a trace when you open one and see if it’s just launching the link.
If it’s just launching the link, then the server isn’t accessing anything.
NateS
(Nate Schoonover)
June 15, 2023, 4:30pm
30
Classic only so far. I found this in the trace that looks promising:
<tracePacket>
<businessObject>Ice.Proxy.BO.DOCAssocImpl</businessObject>
<methodName>GetRows</methodName>
<appServerUri>https://test.epicorsaas.com/test/</appServerUri>
<returnType>Ice.BO.DOCAssocDataSet</returnType>
<localTime>6/13/2023 13:42:16:6447028 PM</localTime>
<threadID>1</threadID>
<correlationId>cd68fedd-d35c-4d02-a888-33b3146e6b16</correlationId>
<executionTime total="91" roundTrip="82" channel="0" bpm="0" bpmDataForm="0" other="9" />
<retries>0</retries>
<parameters>
<parameter name="whereClauseDocAssoc" type="System.String"><![CDATA[]]></parameter>
<parameter name="pageSize" type="System.Int32"><![CDATA[0]]></parameter>
<parameter name="absolutePage" type="System.Int32"><![CDATA[0]]></parameter>
</parameters>
<returnValues>
<returnParameter name="" type="Ice.BO.DOCAssocDataSet">
<DOCAssocDataSet xmlns="http://www.epicor.com/Ice/300/BO/DOCAssoc/DOCAssoc">
<DocAssoc>
<Company></Company>
<DocExtension>doc</DocExtension>
<Description>Office 97 Word Document</Description>
<ViewCommand>\\jet2\Epic50\vantage\av\avwin\avwin.exe "&1"</ViewCommand>
<PrintCommand>\\jet2\Epic50\vantage\av\avwin\avwin.exe -p "&1"</PrintCommand>
<DefaultPath></DefaultPath>
<SysRevID>13111395</SysRevID>
<SysRowID>fdb2ac8e-1bc6-3585-e811-4e0d8bb282d0</SysRowID>
<AllCompanies>true</AllCompanies>
<BitFlag>0</BitFlag>
<RowMod></RowMod>
</DocAssoc>
<DocAssoc>
<Company></Company>
<DocExtension>pdf</DocExtension>
<Description>Adobe Acrobat Reader</Description>
<ViewCommand>AcroRd32.exe "&1"</ViewCommand>
<PrintCommand>AcroRd32.exe /p "&1"</PrintCommand>
<DefaultPath></DefaultPath>
<SysRevID>13111396</SysRevID>
<SysRowID>fdb2ac8e-1bc6-3585-e811-4e0d8fb282d0</SysRowID>
<AllCompanies>true</AllCompanies>
<BitFlag>0</BitFlag>
<RowMod></RowMod>
</DocAssoc>
<DocAssoc>
<Company></Company>
<DocExtension>prn</DocExtension>
<Description>HP Printer (.prn) Files</Description>
<ViewCommand>\\jet2\Epic50\vantage\av\avwin\avwin.exe "&1"</ViewCommand>
<PrintCommand>\\jet2\Epic50\vantage\av\avwin\avwin.exe -p "&1"</PrintCommand>
<DefaultPath></DefaultPath>
<SysRevID>13111397</SysRevID>
<SysRowID>fdb2ac8e-1bc6-3585-e811-4e0d8cb282d0</SysRowID>
<AllCompanies>true</AllCompanies>
<BitFlag>0</BitFlag>
<RowMod></RowMod>
</DocAssoc>
<DocAssoc>
<Company></Company>
<DocExtension>prt</DocExtension>
<Description>Cadkey Part (.prt) File</Description>
<ViewCommand>\\jet2\Epic50\vantage\av\avwin\avwin.exe "&1"</ViewCommand>
<PrintCommand>\\jet2\Epic50\vantage\av\avwin\avwin.exe -p "&1"</PrintCommand>
<DefaultPath></DefaultPath>
<SysRevID>13111398</SysRevID>
<SysRowID>fdb2ac8e-1bc6-3585-e811-4e0d89b282d0</SysRowID>
<AllCompanies>true</AllCompanies>
<BitFlag>0</BitFlag>
<RowMod></RowMod>
</DocAssoc>
<DocAssoc>
<Company></Company>
<DocExtension>SSS</DocExtension>
<Description>SKETCHES</Description>
<ViewCommand>AcroRd32.exe "&1"</ViewCommand>
<PrintCommand>AcroRd32.exe /mFilePrint "&1"</PrintCommand>
<DefaultPath></DefaultPath>
<SysRevID>13111399</SysRevID>
<SysRowID>fdb2ac8e-1bc6-3585-e811-4e0d8eb282d0</SysRowID>
<AllCompanies>true</AllCompanies>
<BitFlag>0</BitFlag>
<RowMod></RowMod>
</DocAssoc>
<DocAssoc>
<Company></Company>
<DocExtension>txt</DocExtension>
<Description>Text (.txt) Files</Description>
<ViewCommand>NOTEPAD.EXE "&1"</ViewCommand>
<PrintCommand>NOTEPAD.EXE /p "&1"</PrintCommand>
<DefaultPath></DefaultPath>
<SysRevID>13111400</SysRevID>
<SysRowID>fdb2ac8e-1bc6-3585-e811-4e0d88b282d0</SysRowID>
<AllCompanies>true</AllCompanies>
<BitFlag>0</BitFlag>
<RowMod></RowMod>
</DocAssoc>
<DocAssoc>
<Company></Company>
<DocExtension>VER</DocExtension>
<Description>Detail Versions</Description>
<ViewCommand>WRITE.EXE "&1"</ViewCommand>
<PrintCommand>WRITE.EXE /p "&1"</PrintCommand>
<DefaultPath></DefaultPath>
<SysRevID>13111401</SysRevID>
<SysRowID>fdb2ac8e-1bc6-3585-e811-4e0d8db282d0</SysRowID>
<AllCompanies>true</AllCompanies>
<BitFlag>0</BitFlag>
<RowMod></RowMod>
</DocAssoc>
<DocAssoc>
<Company></Company>
<DocExtension>xls</DocExtension>
<Description>Excel-97</Description>
<ViewCommand>excel.exe "&1"</ViewCommand>
<PrintCommand>excel.exe /mFilePrint "&1"</PrintCommand>
<DefaultPath></DefaultPath>
<SysRevID>13111402</SysRevID>
<SysRowID>fdb2ac8e-1bc6-3585-e811-4e0d8ab282d0</SysRowID>
<AllCompanies>true</AllCompanies>
<BitFlag>0</BitFlag>
<RowMod></RowMod>
</DocAssoc>
</DOCAssocDataSet>
</returnParameter>
<returnParameter name="morePages" type="System.Boolean"><![CDATA[False]]></returnParameter>
</returnValues>
</tracePacket>
This shows that PDFs should be opened with Adobe Reader. But I couldn’t find the link I printed anywhere in the trace. Maybe I have to turn on more trace flags?
(Those old Jet2 locations aren’t valid anymore, but I don’t think that impacts the PDFs)
klincecum
(Kevin Lincecum)
June 15, 2023, 4:35pm
31
Open up tracing, set enable trace logging, write full ds, write response data.
open up a part, find the attachment.
apply trace logging, clear trace, open the attachment
view trace log
lets see what happens
klincecum
(Kevin Lincecum)
June 15, 2023, 4:42pm
32
Unless the user has an account on the server with the same password, would also have
to enable guest account. Possibly enable anonymous access in group policy.
Might be better to run a script under the user EPICORDT\12345 to
add known domain credentials to that account with access to the share.
Can be done with cmdkey
Reference article for the cmdkey command, which creates, lists, and deletes stored user names and passwords or credentials.
If you can’t login with that login on the local pc, you can use process.start (on the server, like in a baq or function) to run it in that context from a batch file etc.
NateS
(Nate Schoonover)
June 15, 2023, 4:45pm
33
klincecum:
lets see what happens
Same trace results. I get four BOs, each calling one method.
Pretty sure I sanitizedthis first:
<tracePacket>
<businessObject>Ice.Proxy.BO.UserTracingImpl</businessObject>
<methodName>GetNewOrGetByID</methodName>
<appServerUri>MyServer</appServerUri>
<returnType>Ice.BO.UserTracingDataSet</returnType>
<localTime>6/15/2023 12:41:37:8148425 PM</localTime>
<threadID>1</threadID>
<correlationId>78b6b539-7034-47ad-a74a-68becbc7ea13</correlationId>
<executionTime total="69" roundTrip="62" channel="0" bpm="0" bpmDataForm="0" other="7" />
<retries>0</retries>
<parameters>
<parameter name="UserID" type="System.String"><![CDATA[NATHAN]]></parameter>
</parameters>
<returnValues>
<returnParameter name="" type="Ice.BO.UserTracingDataSet">
<UserTracingDataSet xmlns="http://www.epicor.com/Ice/300/BO/UserTracing/UserTracing">
<UserTracing>
<UserID>NATHAN</UserID>
<AssemblyReflector>Off</AssemblyReflector>
<BitFlagViewWatcher>Off</BitFlagViewWatcher>
<Catch>0</Catch>
<CustomContext>Off</CustomContext>
<DataTrace>false</DataTrace>
<DataTraceCCDataSet>false</DataTraceCCDataSet>
<DataTraceFullDataSets>false</DataTraceFullDataSets>
<DataTraceIncludeServerTrace>false</DataTraceIncludeServerTrace>
<DataTraceReturnData>false</DataTraceReturnData>
<DataTraceDSChanges>false</DataTraceDSChanges>
<DeploymentLogging>Off</DeploymentLogging>
<DeregistrationException>Off</DeregistrationException>
<DialogException>Off</DialogException>
<FormLoad>Off</FormLoad>
<LogException>Off</LogException>
<NotifyAll>Off</NotifyAll>
<TransactionLoad>Off</TransactionLoad>
<DashboardException>Off</DashboardException>
<TraceHelp>Off</TraceHelp>
<UITraceLogDirectory>C:\Users\nates\AppData\Roaming\epicor\log\</UITraceLogDirectory>
<UITraceLocationScheme>%appdata%\epicor\log\</UITraceLocationScheme>
<SysRevID>132094479</SysRevID>
<SysRowID>202a6d2b-4fa4-48f2-9caa-be5f9d5c898f</SysRowID>
<Kinetic>false</Kinetic>
<BitFlag>0</BitFlag>
<RowMod></RowMod>
</UserTracing>
</UserTracingDataSet>
</returnParameter>
</returnValues>
</tracePacket>
<tracePacket>
<businessObject>Ice.Proxy.BO.UserTracingImpl</businessObject>
<methodName>Update</methodName>
<appServerUri>MyServer</appServerUri>
<returnType>System.Void</returnType>
<localTime>6/15/2023 12:41:37:8961102 PM</localTime>
<threadID>1</threadID>
<correlationId>ece0c85d-14ed-488f-a600-b99986ffbe27</correlationId>
<executionTime total="65" roundTrip="64" channel="0" bpm="0" bpmDataForm="0" other="1" />
<retries>0</retries>
<parameters>
<parameter name="ds" type="Ice.BO.UserTracingDataSet">
<UserTracingDataSet xmlns="http://www.epicor.com/Ice/300/BO/UserTracing/UserTracing">
<UserTracing>
<UserID>NATHAN</UserID>
<AssemblyReflector>Off</AssemblyReflector>
<BitFlagViewWatcher>Off</BitFlagViewWatcher>
<Catch>0</Catch>
<CustomContext>Off</CustomContext>
<DataTrace>false</DataTrace>
<DataTraceCCDataSet>false</DataTraceCCDataSet>
<DataTraceFullDataSets>false</DataTraceFullDataSets>
<DataTraceIncludeServerTrace>false</DataTraceIncludeServerTrace>
<DataTraceReturnData>false</DataTraceReturnData>
<DataTraceDSChanges>false</DataTraceDSChanges>
<DeploymentLogging>Off</DeploymentLogging>
<DeregistrationException>Off</DeregistrationException>
<DialogException>Off</DialogException>
<FormLoad>Off</FormLoad>
<LogException>Off</LogException>
<NotifyAll>Off</NotifyAll>
<TransactionLoad>Off</TransactionLoad>
<DashboardException>Off</DashboardException>
<TraceHelp>Off</TraceHelp>
<UITraceLogDirectory>C:\Users\nates\AppData\Roaming\epicor\log\</UITraceLogDirectory>
<UITraceLocationScheme>%appdata%\epicor\log\</UITraceLocationScheme>
<SysRevID>132094479</SysRevID>
<SysRowID>202a6d2b-4fa4-48f2-9caa-be5f9d5c898f</SysRowID>
<Kinetic>false</Kinetic>
<BitFlag>0</BitFlag>
<RowMod></RowMod>
</UserTracing>
</UserTracingDataSet>
</parameter>
</parameters>
<returnValues>
<returnParameter name="ds" type="Ice.BO.UserTracingDataSet">
<UserTracingDataSet xmlns="http://www.epicor.com/Ice/300/BO/UserTracing/UserTracing">
<UserTracing>
<UserID>NATHAN</UserID>
<AssemblyReflector>Off</AssemblyReflector>
<BitFlagViewWatcher>Off</BitFlagViewWatcher>
<Catch>0</Catch>
<CustomContext>Off</CustomContext>
<DataTrace>false</DataTrace>
<DataTraceCCDataSet>false</DataTraceCCDataSet>
<DataTraceFullDataSets>false</DataTraceFullDataSets>
<DataTraceIncludeServerTrace>false</DataTraceIncludeServerTrace>
<DataTraceReturnData>false</DataTraceReturnData>
<DataTraceDSChanges>false</DataTraceDSChanges>
<DeploymentLogging>Off</DeploymentLogging>
<DeregistrationException>Off</DeregistrationException>
<DialogException>Off</DialogException>
<FormLoad>Off</FormLoad>
<LogException>Off</LogException>
<NotifyAll>Off</NotifyAll>
<TransactionLoad>Off</TransactionLoad>
<DashboardException>Off</DashboardException>
<TraceHelp>Off</TraceHelp>
<UITraceLogDirectory>C:\Users\nates\AppData\Roaming\epicor\log\</UITraceLogDirectory>
<UITraceLocationScheme>%appdata%\epicor\log\</UITraceLocationScheme>
<SysRevID>132094479</SysRevID>
<SysRowID>202a6d2b-4fa4-48f2-9caa-be5f9d5c898f</SysRowID>
<Kinetic>false</Kinetic>
<BitFlag>0</BitFlag>
<RowMod></RowMod>
</UserTracing>
</UserTracingDataSet>
</returnParameter>
</returnValues>
</tracePacket>
<tracePacket>
<businessObject>Ice.Proxy.BO.ReportMonitorImpl</businessObject>
<methodName>GetRowsKeepIdleTimeWithBallonInfo</methodName>
<appServerUri>MyServer</appServerUri>
<returnType>Ice.BO.ReportMonitorDataSet</returnType>
<localTime>6/15/2023 12:41:42:1826901 PM</localTime>
<threadID>25</threadID>
<correlationId>d037970f-f531-4d5a-9bf8-99abe1706cb4</correlationId>
<executionTime total="65" roundTrip="62" channel="0" bpm="0" bpmDataForm="0" other="3" />
<retries>0</retries>
<parameters>
<parameter name="whereClauseSysRptLst" type="System.String"><![CDATA[((PrintDriver='TEXT' AND (AutoAction='PRINT' OR AutoAction='PREVIEW')) OR (PrintDriver='CRYSTAL' AND (AutoAction='PRINT' OR AutoAction='AUTOPRT' OR AutoAction='PREVIEW' OR AutoAction='AUTOPRV' OR AutoAction='SSRSPREVIEW')) OR (PrintDriver='EPIFIN' AND (AutoAction='PRINT' OR AutoAction='PREVIEW')) OR (PrintDriver='BARTENDER' AND (AutoAction='AUTOPRT' OR AutoAction='AUTOPRV')) OR (PrintDriver='EDI' AND AutoAction<>'') OR (PrintDriver='SSRS' AND (AutoAction='PREVIEW' OR AutoAction='PRINT') AND LastAction='SSRSREADY')) AND (WorkStationID='VAIDESKTOP003 1' OR WorkStationID='web_NATHAN')]]></parameter>
<parameter name="getBallonInfo" type="System.Boolean"><![CDATA[True]]></parameter>
<parameter name="whereClauseSysTask" type="System.String"><![CDATA[history = true and startedon > 06/14/2023 and SubmitUser = 'NATHAN']]></parameter>
<parameter name="whereClauseSysTaskLog" type="System.String"><![CDATA[]]></parameter>
<parameter name="sysMonitorData" type="System.Data.DataSet">
<NewDataSet />
</parameter>
</parameters>
<returnValues>
<returnParameter name="" type="Ice.BO.ReportMonitorDataSet">
<ReportMonitorDataSet xmlns="http://www.epicor.com/Ice/300/BO/ReportMonitor/ReportMonitor" />
</returnParameter>
<returnParameter name="sysMonitorData" type="System.Data.DataSet">
<SysMonitorTasksDataSet xmlns="http://www.epicor.com/Ice/300/BO/SysMonitorTasks/SysMonitorTasks" />
</returnParameter>
</returnValues>
</tracePacket>
<tracePacket>
<businessObject>Ice.Proxy.Lib.ClientCacheImpl</businessObject>
<methodName>GetClassInformation</methodName>
<appServerUri>MyServer</appServerUri>
<returnType>Ice.Lib.ClassAttributeDataSet</returnType>
<localTime>6/15/2023 12:41:48:3885608 PM</localTime>
<threadID>1</threadID>
<correlationId>5885ba65-68a1-49c8-a0fb-bdbdb253b857</correlationId>
<executionTime total="74" roundTrip="72" channel="0" bpm="0" bpmDataForm="0" other="2" />
<retries>0</retries>
<parameters>
<parameter name="token" type="System.String"><![CDATA[DOCAssoc]]></parameter>
<parameter name="additionalTokens" type="System.String[]"><![CDATA[]]></parameter>
<parameter name="nameSpace" type="System.String"><![CDATA[Ice:BO]]></parameter>
</parameters>
<returnValues>
<returnParameter name="" type="Ice.Lib.ClassAttributeDataSet">
<ClassAttributeDataSet xmlns="http://www.epicor.com/Ice/300/Lib/ClassAttribute/ClassAttribute">
<ClassAttribute>
<DataSetID>DOCAssoc</DataSetID>
<DataTableID>DocAssoc</DataTableID>
<FieldName>Description</FieldName>
<AttributeName>Required</AttributeName>
<AttributeValue>True</AttributeValue>
<ClassName>DOCAssoc</ClassName>
<SysRowID>00000000-0000-0000-0000-000000000000</SysRowID>
<RowMod></RowMod>
</ClassAttribute>
<ClassAttribute>
<DataSetID>DOCAssoc</DataSetID>
<DataTableID>DocAssoc</DataTableID>
<FieldName>DocExtension</FieldName>
<AttributeName>Required</AttributeName>
<AttributeValue>True</AttributeValue>
<ClassName>DOCAssoc</ClassName>
<SysRowID>00000000-0000-0000-0000-000000000000</SysRowID>
<RowMod></RowMod>
</ClassAttribute>
<ClassAttribute>
<DataSetID>DOCAssocList</DataSetID>
<DataTableID></DataTableID>
<FieldName></FieldName>
<AttributeName>IsList</AttributeName>
<AttributeValue>True</AttributeValue>
<ClassName>DOCAssoc</ClassName>
<SysRowID>00000000-0000-0000-0000-000000000000</SysRowID>
<RowMod></RowMod>
</ClassAttribute>
</ClassAttributeDataSet>
</returnParameter>
<returnParameter name="objectAccess" type="System.Boolean"><![CDATA[True]]></returnParameter>
<returnParameter name="restrictedColumns" type="System.String"><![CDATA[DocAssoc:|DOCAssocList:]]></returnParameter>
<returnParameter name="restrictedMethods" type="System.String"><![CDATA[]]></returnParameter>
<returnParameter name="additionalTokenAccess" type="System.String"><![CDATA[]]></returnParameter>
</returnValues>
</tracePacket>
<tracePacket>
<businessObject>Ice.Proxy.BO.DOCAssocImpl</businessObject>
<methodName>GetRows</methodName>
<appServerUri>MyServer</appServerUri>
<returnType>Ice.BO.DOCAssocDataSet</returnType>
<localTime>6/15/2023 12:41:48:4666688 PM</localTime>
<threadID>1</threadID>
<correlationId>a1ec5a5b-fa40-456c-be2c-18e2d96590d1</correlationId>
<executionTime total="206" roundTrip="198" channel="0" bpm="0" bpmDataForm="0" other="8" />
<retries>0</retries>
<parameters>
<parameter name="whereClauseDocAssoc" type="System.String"><![CDATA[]]></parameter>
<parameter name="pageSize" type="System.Int32"><![CDATA[0]]></parameter>
<parameter name="absolutePage" type="System.Int32"><![CDATA[0]]></parameter>
</parameters>
<returnValues>
<returnParameter name="" type="Ice.BO.DOCAssocDataSet">
<DOCAssocDataSet xmlns="http://www.epicor.com/Ice/300/BO/DOCAssoc/DOCAssoc">
<DocAssoc>
<Company></Company>
<DocExtension>doc</DocExtension>
<Description>Office 97 Word Document</Description>
<ViewCommand>\\jet2\Epic50\vantage\av\avwin\avwin.exe "&1"</ViewCommand>
<PrintCommand>\\jet2\Epic50\vantage\av\avwin\avwin.exe -p "&1"</PrintCommand>
<DefaultPath></DefaultPath>
<SysRevID>13111395</SysRevID>
<SysRowID>fdb2ac8e-1bc6-3585-e811-4e0d8bb282d0</SysRowID>
<AllCompanies>true</AllCompanies>
<BitFlag>0</BitFlag>
<RowMod></RowMod>
</DocAssoc>
<DocAssoc>
<Company></Company>
<DocExtension>pdf</DocExtension>
<Description>Adobe Acrobat Reader</Description>
<ViewCommand>AcroRd32.exe "&1"</ViewCommand>
<PrintCommand>AcroRd32.exe /p "&1"</PrintCommand>
<DefaultPath></DefaultPath>
<SysRevID>13111396</SysRevID>
<SysRowID>fdb2ac8e-1bc6-3585-e811-4e0d8fb282d0</SysRowID>
<AllCompanies>true</AllCompanies>
<BitFlag>0</BitFlag>
<RowMod></RowMod>
</DocAssoc>
<DocAssoc>
<Company></Company>
<DocExtension>prn</DocExtension>
<Description>HP Printer (.prn) Files</Description>
<ViewCommand>\\jet2\Epic50\vantage\av\avwin\avwin.exe "&1"</ViewCommand>
<PrintCommand>\\jet2\Epic50\vantage\av\avwin\avwin.exe -p "&1"</PrintCommand>
<DefaultPath></DefaultPath>
<SysRevID>13111397</SysRevID>
<SysRowID>fdb2ac8e-1bc6-3585-e811-4e0d8cb282d0</SysRowID>
<AllCompanies>true</AllCompanies>
<BitFlag>0</BitFlag>
<RowMod></RowMod>
</DocAssoc>
<DocAssoc>
<Company></Company>
<DocExtension>prt</DocExtension>
<Description>Cadkey Part (.prt) File</Description>
<ViewCommand>\\jet2\Epic50\vantage\av\avwin\avwin.exe "&1"</ViewCommand>
<PrintCommand>\\jet2\Epic50\vantage\av\avwin\avwin.exe -p "&1"</PrintCommand>
<DefaultPath></DefaultPath>
<SysRevID>13111398</SysRevID>
<SysRowID>fdb2ac8e-1bc6-3585-e811-4e0d89b282d0</SysRowID>
<AllCompanies>true</AllCompanies>
<BitFlag>0</BitFlag>
<RowMod></RowMod>
</DocAssoc>
<DocAssoc>
<Company></Company>
<DocExtension>SSS</DocExtension>
<Description>SKETCHES</Description>
<ViewCommand>AcroRd32.exe "&1"</ViewCommand>
<PrintCommand>AcroRd32.exe /mFilePrint "&1"</PrintCommand>
<DefaultPath></DefaultPath>
<SysRevID>13111399</SysRevID>
<SysRowID>fdb2ac8e-1bc6-3585-e811-4e0d8eb282d0</SysRowID>
<AllCompanies>true</AllCompanies>
<BitFlag>0</BitFlag>
<RowMod></RowMod>
</DocAssoc>
<DocAssoc>
<Company></Company>
<DocExtension>txt</DocExtension>
<Description>Text (.txt) Files</Description>
<ViewCommand>NOTEPAD.EXE "&1"</ViewCommand>
<PrintCommand>NOTEPAD.EXE /p "&1"</PrintCommand>
<DefaultPath></DefaultPath>
<SysRevID>13111400</SysRevID>
<SysRowID>fdb2ac8e-1bc6-3585-e811-4e0d88b282d0</SysRowID>
<AllCompanies>true</AllCompanies>
<BitFlag>0</BitFlag>
<RowMod></RowMod>
</DocAssoc>
<DocAssoc>
<Company></Company>
<DocExtension>VER</DocExtension>
<Description>Detail Versions</Description>
<ViewCommand>WRITE.EXE "&1"</ViewCommand>
<PrintCommand>WRITE.EXE /p "&1"</PrintCommand>
<DefaultPath></DefaultPath>
<SysRevID>13111401</SysRevID>
<SysRowID>fdb2ac8e-1bc6-3585-e811-4e0d8db282d0</SysRowID>
<AllCompanies>true</AllCompanies>
<BitFlag>0</BitFlag>
<RowMod></RowMod>
</DocAssoc>
<DocAssoc>
<Company></Company>
<DocExtension>xls</DocExtension>
<Description>Excel-97</Description>
<ViewCommand>excel.exe "&1"</ViewCommand>
<PrintCommand>excel.exe /mFilePrint "&1"</PrintCommand>
<DefaultPath></DefaultPath>
<SysRevID>13111402</SysRevID>
<SysRowID>fdb2ac8e-1bc6-3585-e811-4e0d8ab282d0</SysRowID>
<AllCompanies>true</AllCompanies>
<BitFlag>0</BitFlag>
<RowMod></RowMod>
</DocAssoc>
</DOCAssocDataSet>
</returnParameter>
<returnParameter name="morePages" type="System.Boolean"><![CDATA[False]]></returnParameter>
</returnValues>
</tracePacket>
<tracePacket>
<businessObject>Ice.Proxy.Lib.ClientCacheImpl</businessObject>
<methodName>GetClassInformation</methodName>
<appServerUri>MyServer</appServerUri>
<returnType>Ice.Lib.ClassAttributeDataSet</returnType>
<localTime>6/15/2023 12:41:48:7411885 PM</localTime>
<threadID>1</threadID>
<correlationId>31fe1f71-b9e1-4dae-b152-a9aef5561442</correlationId>
<executionTime total="85" roundTrip="84" channel="0" bpm="0" bpmDataForm="0" other="1" />
<retries>0</retries>
<parameters>
<parameter name="token" type="System.String"><![CDATA[DmsStorageType]]></parameter>
<parameter name="additionalTokens" type="System.String[]"><![CDATA[]]></parameter>
<parameter name="nameSpace" type="System.String"><![CDATA[Ice:BO]]></parameter>
</parameters>
<returnValues>
<returnParameter name="" type="Ice.Lib.ClassAttributeDataSet">
<ClassAttributeDataSet xmlns="http://www.epicor.com/Ice/300/Lib/ClassAttribute/ClassAttribute">
<ClassAttribute>
<DataSetID>DmsStorageType</DataSetID>
<DataTableID>DmsStorageType</DataTableID>
<FieldName>StorageType</FieldName>
<AttributeName>Required</AttributeName>
<AttributeValue>True</AttributeValue>
<ClassName>DmsStorageType</ClassName>
<SysRowID>00000000-0000-0000-0000-000000000000</SysRowID>
<RowMod></RowMod>
</ClassAttribute>
<ClassAttribute>
<DataSetID>DmsStorageType</DataSetID>
<DataTableID>DmsStorageType</DataTableID>
<FieldName>TransferType</FieldName>
<AttributeName>Required</AttributeName>
<AttributeValue>True</AttributeValue>
<ClassName>DmsStorageType</ClassName>
<SysRowID>00000000-0000-0000-0000-000000000000</SysRowID>
<RowMod></RowMod>
</ClassAttribute>
<ClassAttribute>
<DataSetID>DmsStorageTypeList</DataSetID>
<DataTableID></DataTableID>
<FieldName></FieldName>
<AttributeName>IsList</AttributeName>
<AttributeValue>True</AttributeValue>
<ClassName>DmsStorageType</ClassName>
<SysRowID>00000000-0000-0000-0000-000000000000</SysRowID>
<RowMod></RowMod>
</ClassAttribute>
</ClassAttributeDataSet>
</returnParameter>
<returnParameter name="objectAccess" type="System.Boolean"><![CDATA[True]]></returnParameter>
<returnParameter name="restrictedColumns" type="System.String"><![CDATA[DmsStorageType:|DmsStorageTypeList:]]></returnParameter>
<returnParameter name="restrictedMethods" type="System.String"><![CDATA[]]></returnParameter>
<returnParameter name="additionalTokenAccess" type="System.String"><![CDATA[]]></returnParameter>
</returnValues>
</tracePacket>
<tracePacket>
<businessObject>Ice.Proxy.BO.DmsStorageTypeImpl</businessObject>
<methodName>GetRows</methodName>
<appServerUri>MyServer</appServerUri>
<returnType>Ice.BO.DmsStorageTypeDataSet</returnType>
<localTime>6/15/2023 12:41:48:8290539 PM</localTime>
<threadID>1</threadID>
<correlationId>3eed68d4-5d85-4b85-b4f1-825df1928130</correlationId>
<executionTime total="208" roundTrip="199" channel="0" bpm="0" bpmDataForm="0" other="9" />
<retries>0</retries>
<parameters>
<parameter name="whereClauseDmsStorageType" type="System.String"><![CDATA[]]></parameter>
<parameter name="pageSize" type="System.Int32"><![CDATA[0]]></parameter>
<parameter name="absolutePage" type="System.Int32"><![CDATA[0]]></parameter>
</parameters>
<returnValues>
<returnParameter name="" type="Ice.BO.DmsStorageTypeDataSet">
<DmsStorageTypeDataSet xmlns="http://www.epicor.com/Ice/300/BO/DmsStorageType/DmsStorageType">
<DmsStorageType>
<Company>VTAERO</Company>
<StorageType>2</StorageType>
<StorageTypeEnabled>true</StorageTypeEnabled>
<BaseURI>\\JET9\VtAerospace\Docs</BaseURI>
<CompanyDefaultStorage>false</CompanyDefaultStorage>
<CanViewInProvider>false</CanViewInProvider>
<CredentialToken></CredentialToken>
<UserName></UserName>
<UserPwd></UserPwd>
<Domain></Domain>
<AuthType></AuthType>
<TransferType>C</TransferType>
<SysRevID>174912840</SysRevID>
<SysRowID>95e300e9-bd7e-4d05-b7cb-e5098774d9b0</SysRowID>
<DirectoryID></DirectoryID>
<ApplicationID></ApplicationID>
<CertificateThumbPrint></CertificateThumbPrint>
<StorageTypeDesc>File System</StorageTypeDesc>
<TempUserPwd></TempUserPwd>
<StorageTypeCodeDesc>2`File System</StorageTypeCodeDesc>
<UseDefaultEndpoint>true</UseDefaultEndpoint>
<BitFlag>0</BitFlag>
<RowMod></RowMod>
</DmsStorageType>
<DmsStorageType>
<Company>VTAERO</Company>
<StorageType>3</StorageType>
<StorageTypeEnabled>true</StorageTypeEnabled>
<BaseURI></BaseURI>
<CompanyDefaultStorage>true</CompanyDefaultStorage>
<CanViewInProvider>false</CanViewInProvider>
<TransferType>S</TransferType>
<SysRevID>79487792</SysRevID>
<SysRowID>80bb3d87-b554-4428-9ae0-ac570073f14d</SysRowID>
<StorageTypeDesc>Link</StorageTypeDesc>
<TempUserPwd></TempUserPwd>
<StorageTypeCodeDesc>3`Link</StorageTypeCodeDesc>
<UseDefaultEndpoint>true</UseDefaultEndpoint>
<BitFlag>0</BitFlag>
<RowMod></RowMod>
</DmsStorageType>
</DmsStorageTypeDataSet>
</returnParameter>
<returnParameter name="morePages" type="System.Boolean"><![CDATA[False]]></returnParameter>
</returnValues>
</tracePacket>
<tracePacket>
<businessObject>Ice.Proxy.BO.ReportMonitorImpl</businessObject>
<methodName>GetRowsKeepIdleTimeWithBallonInfo</methodName>
<appServerUri>MyServer</appServerUri>
<returnType>Ice.BO.ReportMonitorDataSet</returnType>
<localTime>6/15/2023 12:42:12:2521357 PM</localTime>
<threadID>25</threadID>
<correlationId>fca5d56d-959e-4f13-9a82-6fca0c5e7b66</correlationId>
<executionTime total="65" roundTrip="63" channel="0" bpm="0" bpmDataForm="0" other="2" />
<retries>0</retries>
<parameters>
<parameter name="whereClauseSysRptLst" type="System.String"><![CDATA[((PrintDriver='TEXT' AND (AutoAction='PRINT' OR AutoAction='PREVIEW')) OR (PrintDriver='CRYSTAL' AND (AutoAction='PRINT' OR AutoAction='AUTOPRT' OR AutoAction='PREVIEW' OR AutoAction='AUTOPRV' OR AutoAction='SSRSPREVIEW')) OR (PrintDriver='EPIFIN' AND (AutoAction='PRINT' OR AutoAction='PREVIEW')) OR (PrintDriver='BARTENDER' AND (AutoAction='AUTOPRT' OR AutoAction='AUTOPRV')) OR (PrintDriver='EDI' AND AutoAction<>'') OR (PrintDriver='SSRS' AND (AutoAction='PREVIEW' OR AutoAction='PRINT') AND LastAction='SSRSREADY')) AND (WorkStationID='VAIDESKTOP003 1' OR WorkStationID='web_NATHAN')]]></parameter>
<parameter name="getBallonInfo" type="System.Boolean"><![CDATA[True]]></parameter>
<parameter name="whereClauseSysTask" type="System.String"><![CDATA[history = true and startedon > 06/14/2023 and SubmitUser = 'NATHAN']]></parameter>
<parameter name="whereClauseSysTaskLog" type="System.String"><![CDATA[]]></parameter>
<parameter name="sysMonitorData" type="System.Data.DataSet">
<NewDataSet />
</parameter>
</parameters>
<returnValues>
<returnParameter name="" type="Ice.BO.ReportMonitorDataSet">
<ReportMonitorDataSet xmlns="http://www.epicor.com/Ice/300/BO/ReportMonitor/ReportMonitor" />
</returnParameter>
<returnParameter name="sysMonitorData" type="System.Data.DataSet">
<SysMonitorTasksDataSet xmlns="http://www.epicor.com/Ice/300/BO/SysMonitorTasks/SysMonitorTasks" />
</returnParameter>
</returnValues>
</tracePacket>
klincecum
(Kevin Lincecum)
June 15, 2023, 4:47pm
34
No file retrieval there, so it’s just opening the link locally from your pc.
NateS
(Nate Schoonover)
June 15, 2023, 4:50pm
35
klincecum:
Unless the user has an account on the server with the same password, would also have
to enable guest account. Possibly enable anonymous access in group policy.
Might be better to run a script under the user EPICORDT\12345 to
add known domain credentials to that account with access to the share.
Can be done with cmdkey
If you can’t login with that login on the local pc, you can use process.start (on the server, like in a baq or function) to run it in that context from a batch file etc.
I am not sure I understand where you’re going with this.
I would prefer to keep my network folder security intact. Currently we have security to limit the users that can open the folder to just a few groups of users. Can I setup a secure user in AD that I can have Epicor access from?
klincecum
(Kevin Lincecum)
June 15, 2023, 4:54pm
36
I’m telling you to not do it.
If you want to access the files from the server, I’m telling you to either create,
or use an existing user in your domain, and add the credentials to the
EPICORDT\12345 account on your epicor server.
That way it now has domain credentials in it’s credentials store. It can access
the unc paths.
Yes, then add those credentials in using cmdkey.
klincecum
(Kevin Lincecum)
June 15, 2023, 4:56pm
37
Aren’t you moving to SaaS though ?
NateS
(Nate Schoonover)
June 15, 2023, 4:58pm
38
I think I can do the Active Directory part, to create a new user. But, how do I add credentials to the epicordt account on the server?
NateS
(Nate Schoonover)
June 15, 2023, 4:59pm
39
We are cloud DT with no intent to move from it.
klincecum
(Kevin Lincecum)
June 15, 2023, 5:00pm
40
If you can login to the server (under that account), you can do it via cmdkey, or via the credentials manager.
If you cannot, fire up an updateable BAQ, or a function, and use process.Start to run cmdkey.