# Working with Files

The block allows you to upload a file to a remote computer or download a file.

<table data-header-hidden><thead><tr><th width="253" valign="top"></th><th width="312" valign="top"></th></tr></thead><tbody><tr><td valign="top">Process ID</td><td valign="top"><p>[Link] A variable that stores the process ID. Indicates which application needs to be worked with.</p><p>If the specified application is minimized or its window is covered by other windows, it will be brought to the foreground. When working with browsers, the process ID additionally indicates the specific browser tab that the block should work with.</p><p>If the property is left empty, or if the process ID variable was not previously assigned at the moment of launching the application or opening the browser, the application and browser tab will be determined from the content of the corresponding selector line.</p><p>The process ID can be obtained, for example, using the Run Application or Get Process blocks.</p></td></tr><tr><td valign="top">Remote File</td><td valign="top">[Text] The full path of the file on the remote computer.</td></tr><tr><td valign="top">Local File</td><td valign="top">[Text] The full path of the file on the local computer.</td></tr><tr><td valign="top">Operation</td><td valign="top"><p>The operation being performed.</p><p>Possible values:</p><ul><li>Upload - uploading a local file to the path of the remote file (uploading a local file);</li><li>Download - downloading a remote file to the path of the local file (downloading a remote file).</li></ul></td></tr><tr><td valign="top">Timeout</td><td valign="top">[Number] The timeout for the operation to complete. If the value is zero, the property is ignored, and the block will wait for the operation to fully complete.</td></tr><tr><td valign="top">Error Handling Level</td><td valign="top"><p>Select the error handling level. Possible values:</p><ul><li>"Default" - by default;</li><li>"Ignore" - errors are ignored;</li><li>"Handle" - errors are handled.</li></ul><p>If "Default" is selected, the value of the "Start" block of this diagram will be used.</p></td></tr><tr><td valign="top">Message Level</td><td valign="top"><p>Select the message level that the blocks will output during operation. Possible values:</p><ul><li>"Default" - by default;</li><li>"Release" - output is disabled;</li><li>"Debug" - main information output;</li><li>"Detailed" - detailed information output.</li></ul><p>If "Default" is selected, the value of the "Start" block of this diagram will be used.</p></td></tr><tr><td valign="top">Error Text</td><td valign="top">[Text] Returns detailed information about the error in case of incorrect execution of the block's work.</td></tr></tbody></table>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.sherparpa.ru/en/sherpa-rpa/sherpa-designer/spravochnik-blokov/udalennyi-rabochii-stol-rdp-citrix/rabota-s-failami-rdpoperationfile.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
