There a few things u can do...
1 make a share not viewable (with "browsable = no" option).
path = /datos/calidad
read list = @calidad
write list = @calidad
read only = No
create mask = 0660
directory mask = 0770
browseable = No
this way, u wont see the share when u access the samba host:
To access it u must use the windows explorer "tools" "map network drive" and type in the share's netbios location: \\samba-server\calidad.
2 use a different smb.conf file for different pc's, thus setting up different shares for each. In the main smb.conf, add the option "config file = /etc/samba/smb.conf.%m". %m stands for the host name. Now create a smb.conf.pc_name in /etc/samba and in it, place all the shares u want that pc to view. I suppose u can also use the %u (user) variable to the same as with the pc_names but with user_names instead. U could also do something like smb.conf.%m.%u but i've never tried that.