diff --git a/static/src/js/cmis_file_preview.js b/static/src/js/cmis_file_preview.js
new file mode 100644
index 0000000000000000000000000000000000000000..46239ffc7cc2403306f9b7d8418a23ec2b86e689
--- /dev/null
+++ b/static/src/js/cmis_file_preview.js
@@ -0,0 +1,63 @@
+/* ---------------------------------------------------------------
+    Copyright 2020 Le Filament
+    License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
+------------------------------------------------------------------*/
+
+odoo.define("cgscop_alfresco.cmis_file_preview", function (require) {
+    "use strict";
+
+    var core = require("web.core");
+    var registry = require('web.field_registry');
+    var AbstractField = require('web.AbstractField');
+    var basicFields = require('web.basic_fields');
+    var cmis_widgets = require("cmis_web.form_widgets");
+    var DocumentViewer = require('cmis_web.DocumentViewer')
+    var session = require("web.session");
+
+    var _t = core._t;
+    var QWeb = core.qweb;
+
+    var FieldCmisFilePreview = AbstractField.extend({
+        template: "CmisFilePreview",
+        events: {
+            "click": "on_click_preview"
+        },
+        on_click_preview: function (event) {
+            event.stopPropagation();
+            var self = this
+
+            // CGSCOP : appel vers la fonction custom
+            self._rpc({
+                route: "/web/alfresco/session-backend",
+                params: {
+                    username: session.username,
+                },
+            }).then(function (result) {
+                self.cmis_session = cmis.createSession(result.backend_location);
+                self.cmis_session.alf_ticket = result.ticket;
+                self.cmis_session.setCredentials("ROLE_TICKET", result.ticket);
+                self.cmis_session.loadRepositories()
+                    .ok(function (data) {
+                        self.cmis_session.getObject(self.value)
+                            .ok(function (object) {
+                                var cmisObjectWrapped = new cmis_widgets.CmisObjectWrapper(self, object, self.cmis_session);
+                                var documentViewer = new DocumentViewer(self, cmisObjectWrapped, [cmisObjectWrapped]);
+                                documentViewer.appendTo($('body'));
+                            })
+                            .notOk(function (error) {
+                                console.log(error);
+                            });
+                    })
+                    .notOk(function (error) {
+                        console.log(error);
+                    });
+            });
+        },
+    });
+
+    registry.add('cmis_file_preview', FieldCmisFilePreview);
+
+    return {
+        FieldCmisFilePreview: FieldCmisFilePreview,
+    };
+});
diff --git a/static/src/xml/cmis_file_preview.xml b/static/src/xml/cmis_file_preview.xml
new file mode 100644
index 0000000000000000000000000000000000000000..15c596cf350c7fda2d3c8a5f0f598da544ada783
--- /dev/null
+++ b/static/src/xml/cmis_file_preview.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<templates id="template" xml:space="preserve">
+
+    <t t-name="CmisFilePreview">
+        <div class="cmis_file_preview">
+            <button
+                type="button"
+                 t-att-class="'btn ' + widget.attrs.color"
+                 aria-label="Preview"
+                 data-toggle="tooltip"
+                 title="Preview"
+            >
+                <t t-if="widget.attrs.icon">
+                    <span
+                        t-att-class="'fa ' + widget.attrs.icon"
+                    />
+                </t>
+                <span>
+                    <t t-esc="widget.attrs.string" />
+                </span>
+            </button>
+        </div>
+    </t>
+</templates>
diff --git a/views/assets.xml b/views/assets.xml
index 8c46ab50459173ba5bdbc0352e861be85094a02a..484a147c58051f56101cf128dd89f7699774c5ab 100644
--- a/views/assets.xml
+++ b/views/assets.xml
@@ -8,6 +8,10 @@
         inherit_id="cmis_web.assets_backend"
     >
         <xpath expr="." position="inside">
+            <script
+                type="text/javascript"
+                src="/cgscop_alfresco/static/src/js/cmis_file_preview.js"
+            />
             <script
                 type="text/javascript"
                 src="/cgscop_alfresco/static/src/js/form_widgets.js"