2017-08-11 1 views
0

J'utilise 10e- de Odoo Quand je suis en train de créer un groupeOdoo - Retirer les lignes/lignes de commande si elle est vide

Settings > Users > Groups 

et donnant ce droit d'accès du groupe, je vois que si j'ajouter accidentellement une ligne il Odoo automatiquement supprimer cette ligne vide lors de la sauvegarde.

Comme ci-dessus, j'ai un grand nombre de champs dans lesquels l'utilisateur crée des enregistrements et un certain temps, il clique sur la ligne suivante ou appuie accidentellement sur l'onglet afin qu'il ajoute une nouvelle ligne. Je veux enlever ces lignes non désirées automatiquement en sauvant comme odoo le font dans l'écran de groupes.

Répondre

0

Rendez l'un des champs de votre modèle associé requis. Cela empêchera un utilisateur d'entrer une ligne vide sans entrer de données.

class Row(models.Model): 
    _name = 'row' 
    name = fields.Char('Name', required=True) # Make something required 
    sheet = fields.Many2one('sheet') 

class Sheet(models.Model): 
    _name = 'sheet' 
    lines = fields.One2many('row', 'sheet') 

Voici un exemple utilisant Project Stages. L'ajout d'une ligne supplémentaire avec un champ obligatoire par accident (ou but) en utilisant enter, puis en appuyant sur save effacera automatiquement la ligne.

Sample GIF Using Project Stages

+0

Il ne s'agissait pas de créer des enregistrements vides, c'était comme s'il créait accidentellement une nouvelle ligne. Je veux que cette ligne soit automatiquement enlevée, elle était vide et supposons que cette ligne en ait besoin alors aussi. Comme odoo faire dans l'écran des groupes. – Ancient

+0

Il supprimera automatiquement toutes les lignes vides à sauvegarder si quelque chose est nécessaire. Donnez-moi un coup :) – holdenrehg

+0

J'ai déjà un champ obligatoire dans le modèle et son ne fonctionne pas – Ancient

0

outrepasser Juste le procédé d'écriture de modèle associé et vérifier si des tous les champs sont nulles ou non, si null unlink ensuite la même ligne.