Does the following correspond to what you want?
First we define the 2-form σ on the 3-manifold M covered by coordinates (x,y,z):
sage: M = Manifold(3, 'M')
sage: X.<x,y,z> = M.chart()
sage: a = var('a', domain='real')
sage: sigma = M.diff_form(2)
sage: sigma[1,2] = x/a
sage: sigma[0,2] = -y/a
sage: sigma.display()
-y/a dx/\dz + x/a dy/\dz
Then we define the 2-manifold N covered by coordinates (θ,z) and the map g:N→M:
sage: N = Manifold(2, 'N')
sage: XN.<th,z> = N.chart(r'th:\theta:(0,2*pi) z')
sage: g = N.diff_map(M, [a*cos(th), a*sin(th), z])
sage: g.display()
N --> M
(th, z) |--> (x, y, z) = (a*cos(th), a*sin(th), z)
The pullback of σ by g is then
sage: s = g.pullback(sigma)
sage: s
2-form on the 2-dimensional differentiable manifold N
sage: s.display()
a dth/\dz