i

Macro enregistrer un enregistrement


Sub SauveEnreg

dim oDocument as object, oDispatcher as object

dim Array()

document = thisComponent.CurrentController.Frame

oDispatcher = createUnoService( "com.sun.star.frame.DispatchHelper" )

oDispatcher.executeDispatch( oDocument ".uno:RecSave", "", 0, Array() )

End Sub


Variante sans dispatcher ce qui est quand même beaucoup mieux :


( courte )


Sub SauveEnreg( oEvent as object )

iif( oEvent.source.model.parent.IsNew,

oEvent.source.model.parent.oModelParent.InsertRow,

oEvent.source.model.parent.updateRow )

End Sub


( moins courte)


Sub SauveEnreg( oEvent as object )

dim oModelParent as object

oModelParent = oEvent.source.model.parent

if oModelParent.IsNew then

  oModelParent.InsertRow

  else

  oModelParent.updateRow

end if

End Sub