This is Comware 5, just using my printers VLAN as an example - it's a VLAN that spans every switch, and is routed from core.
On the core switch:
On an edge switch:
dhcp relay server-group 1 ip 10.45.176.100
dhcp relay server-group 1 ip 10.45.176.30
# need to be in system to work on interfaces
ip address 10.45.192.1 255.255.255.0
dhcp select relay
dhcp relay server-select 1
# example port out to an edge switch
port link-type hybrid
port hybrid vlan 192 196 1011 tagged
port hybrid vlan 1 untagged
# added to routing table automatically, this is just for you to check. Won't appear until at least one port is carrying traffic for VLAN192
10.45.192.0/24 Direct 0 0 10.45.192.1 Vlan192
10.45.192.1/32 Direct 0 0 127.0.0.1 InLoop0
I think that's everything relevant from my config.
# example port connected to printer
port access vlan 192
stp edged-port enable
# static route directs traffic to core switch
0.0.0.0/0 Static 60 0 172.31.240.5 Vlan1011
# (vlan1011 is a connecting VLAN between the core and this edge switch, and is an approach you don't necessarily have to implement)
If you're on HP ProCurve, all of the above is irrelevant.
EDIT: in brief, untagged is the VLAN that port actually uses - so if a computer wants to use VLAN 100, the port it connects to should be untagged as 100. If a port needs to carry VLAN traffic (so between switches, basically), then it needs to be tagged with all the VLANs it might need to carry. For example, if an edge switch has computers in VLANs 194 and 195, and printers using VLAN 192, the connecting port between the core and the edge switch in question will be untagged to VLAN 1 (as the switch's IP itself is in VLAN 1, the management VLAN) but be tagged with 192, 194 and 195.