There are many ways of uploading any file type to R3, provided it depends on how do you want to store it.
In general there are two easy ways, one is using the upload UI element, you can specify a path in the server and have configured it for all files and store the file directly in the file directory of the server.
Secondly, you need to do some work on the sap side, like creating a simple rfc, which will take up the file content as a 'binary' (raw) data type and store in the database with the relevant parameters. you rfc will take / get the update from the webdynpro UI element ( you need to do create a model ..context / binding..etc ). The whole file will be stored in binary form.
Hope this gives you some picture of how to go about on it.
if you have any specific questions do let us know