4D View Pro: Speed up your development process with templates

Creating reports or spreadsheets from existing templates speeds up development. Starting with 4D v19 R4, copy and paste actions can now be performed using code that copies a range of cells from another location (including other areas).

Move or copy a block of cells.

The VP MOVE CELLS command allows you to copy/cut and paste a range of cells to another location, even between two areas:


// Starting range

$rangeFrom:=VP Cells("ViewProArea1"; 0; 0; 2; 7)
// First cell of the destination range
$rangeTo:=VP Cell("ViewProArea2"; 2; 0)
VP MOVE CELLS($rangeFrom; $rangeTo; New object("copy"; True))

copy paste over an object

Another way to copy a range is to copy it to an object with the VP Copy to object command, for example, to save it in your database:

$template:=ds.Templates.new()
$template.VP:=VP Copy to object($rangeFrom)
$template.save()

So you can paste the contents, styles and formulas stored in the object when you need it with the VP PASTE FROM OBJECT command:

$template:=ds.Templates.get($id)
VP PASTE FROM OBJECT($rangeTo; $template.VP)

Whichever solution you use, it’s essential to be aware of the possibilities: relative cell references might change when you move or copy a formula. Learn more about this feature on the documentation center.

 

Fabrice Mainguené
• Product Owner •Fabrice Mainguené joined 4D Program team in November, 2016. As a Product Owner, he is in charge of writing the user stories then translating it to functional specifications. His role is also to make sure that the feature implementation delivered is meeting the customer need.After obtaining a Bachelor degree in Computer Science at CNAM, Fabrice joined a small software publishing company as a Windev developer. Then he worked for different companies in industry and trade areas as a Windev and web developer as well as technical advisor on new features.