Para criar um registro, os parâmetros são cursor, user_id, dicionário de valores e context.por exemplo
mov_id = self.create(cr, uid, {'so_ids': so, 'product_ids': product},context=context)
create não pega nenhum id, se você está tentando usar copy, então use
mov_id = self.copy(cr, uid, ids, {'so_ids':so, 'product_ids':product},context=context)